miércoles, marzo 27, 2013

Pasar de IPv4 a IPv6 con una respuesta DNS no pedida

Hasta el momento, la demostración del ataque SLAAC con Evil FOCA - incluido el de Bridging HTTP(IPv6) a HTTPs(IPv4) - se basan en una configuración dual IPv4 e IPv6, en la que la configuración de IPv4 está sólo como vínculo local, es decir, las direcciones 169.254.X.X sin configuración de servidor DNSv4.

Una configuración que nos tenía bastante extrañados, es cuando el equipo víctima solo cuenta con IPv6, es decir, IPv4 se ha desactivado de la torre de protocolos de la tarjeta de red, por lo que sólo cuenta la configuración de IPv6. En este entorno la extrañeza viene cuando se intenta resolver un hostname de Internet, ya que las preguntas son de registros A, en lugar de AAAA, a pesar de que el navegador por defecto tiene la configuración para buscar registros AAAA.

Figura 1: Configuración de Mozilla Firefox para buscar registros AAAA

Es decir, cuando un Windows 7 tiene configurado solo IPv6, las preguntas de resolución de nombres que se envían al servidor DNSv6 son para conseguir direcciones IPv4, algo que nos rompe el ataque de man in the middle en la red IPv6.

Para solucionarlo, ayer mismo se nos ocurrió probar a utilizar registros de respuesta múltiple, para que en la respuesta a una consulta de tipo A al servidor DNSv6, además de un registro A, le entregamos a la víctima un registro AAAA. Y funciona, se reciben los dos registros, pero la navegación por Internet va sobre IPv4 al ser un FQDN. Como esto no nos resolvía definitivamente el problema, al final decidimos probar una cosa que parece que no tiene mucho sentido, pero... que funcionó mejor que bien. 

La idea es tan sencilla como que cuando nos piden un registro tipo A, hacemos como si nos hubieran pedido un registro tipo AAAA, y listo. Esto se puede ver en la captura siguiente, que en una navegación a www.elladodelmal.com, se puede ver como se piden la resolución de todos los hosts vinculados de tipo A, pero la Evil FOCA contesta a todos con registros tipo AAAA.

Figura 2: La víctima pide registros A pero Evil FOCA responde con registros AAAA

Esto funciona perfectamente en Windows 7, y el misterio es que en el paquete de respuesta a una petición DNS va la consulta a la que se está respondiendo, y en ese punto Evil FOCA está modificando la pregunta, haciendo creer que se preguntó por un registro AAAA.

Figura 3: Evil FOCA responde como si le hubieran pedido un registro AAAA

Y la cosa funciona. Deberemos ver si esto es así en otros sistemas operativos, pero con este truco resolvemos un escenario que nos tenía con cara de poker. Curioso, ¿verdad?

Saludos Malignos!

***************************************************************************************************
- Hacking en redes de datos IPv6: Conceptos básicos IPv6 (1)
- Hacking en redes de datos IPv6: Conceptos básicos IPv6 (2)
- Hacking en redes de datos IPv6: Te hackearán por IPv6 por pensar que no lo usas
- Hacking en redes de datos IPv6: Neighbor Spoofing
- Hacking en redes de datos IPv6: Captura de SMB con Neighbor Spoofing
- Hacking en redes de datos IPv6: FC00::1 (Algunos) Ataques en redes de datos
- Hacking en redes de datos IPv6: Man in the middle en redes IPv4 usando IPv6
- Hacking en redes de datos IPv6: Desactivar IPv6 para evitar D.O.S. SLAAC
- Hacking en redes de datos IPv6: Topera - Scanner de puertos sobre IPv6
- Hacking en redes de datos IPv6: Predecir direcciones IPv6 Local-Link de OS X
- Hacking en redes de datos IPv6: Ataques en redes de datos IPv 4 e IPv6
- Hacking en redes de datos IPv6: Evil FOCA: Ataque SLAAC
- Hacking en redes de datos IPv6: Evil FOCA: Bridging HTTP(IPv6) - HTTPs (IPv4)
- Hacking en redes de datos IPv6: Pasar de IPv4 a IPv6 con una respuesta DNS
- Hacking en redes de datos IPv6: Cómo activar IPv6 en Google Chrome
- Hacking en redes de datos IPv4: Ataque DHCP ACK Injector
***************************************************************************************************

Entradas populares