PDA

Ver la versión completa : Suplantación DNS



biyonder
15-09-2008, 13:49
Una pregunta un tanto curiosa. ¿Habría alguna manera de suplantar DNS en mi propio pc? Es que me gustaria saber si en vez de tener que escribir una URL muy larga (por ejemplo www.olamellamobiyonderysoynuevoenelforo.com) podría escribir www.ola.com y acceder a www.olamellamobiyonderysoynuevoenelforo.com.
¿Se podría? ¿Cómo?

miguel86
15-09-2008, 14:37
.................

j8k6f4v9j
15-09-2008, 15:40
De hecho el archivo hosts admite incluso nombres de host sin dominio de primer nivel. Es decir, puedes poner simplemente:

84.124.52.3 hhy al poner hh en la barra de direcciones, se abrirá igualemente www.hackhispano.com

Salu2



http://img359.imageshack.us/img359/6631/celliigy4.pngKeep on Rollin' :mad:

biyonder
16-09-2008, 16:31
Wau. Gracias chicos por la informacion :)

biyonder
16-09-2008, 16:36
lo malo de esto es que el cortafuegos salta cuando modificas el fichero hosts, algo muy importante a tener en cuenta

antheus
17-09-2008, 00:43
Existe un metodo mas elaborado de hacerlo, se hace contra el servidor DNS usando la vulnerabilidad expuesta por Dan Kaminsky.Se logra 'envenenar' al servidor DNS que hace las peticiones a un destino a otro que le hemos dado, tambien se usa para el 'phishing', pero eso es otra historia.
Salu2:0=

miguel86
17-09-2008, 00:52
Existe un metodo mas elaborado de hacerlo, se hace contra el servidor DNS usando la vulnerabilidad expuesta por Dan Kaminsky.Se logra 'envenenar' al servidor DNS que hace las peticiones a un destino a otro que le hemos dado, tambien se usa para el 'phishing', pero eso es otra historia.
Salu2:0=

De hecho lo que tu citas se llama envenenamiento de la caché DNS, yo aprendí a hacerlo y lo llevé a cabo y con el ataque de la paradoja de cumpleaños tiene mucho éxito, es un tema muy peligroso, es un delito bastante grave y de hecho ya los nuevos servidores DNS(el dnnsec2) están bien protegidos auqneu la cantidad de los que existen con el software vulnerable es desde luego muy alta todavía, si tengo tiempo pondré un post al detalle de como se hace.

Las dos cosas que dices son la misma. Este ataque es conocido también como pharming, lo que pasa es que pishing se dice referido a lo de que te mandan un correo falso solicitando tu número de la tarjeta de crédito y pharming a sacarte las pelas por este método del envenenamiento de la caché del DNS.


Se logra 'envenenar' al servidor DNS que hace las peticiones a un destino a otro que le hemos dado
Salu2:0=
Esa parte no la tienes clara Antheus. No es que haga las peticiones a otro destino, lo que se falsea es la respuesta de la petición. Lo que se envenena es la caché de DNS cuando hace una petición DNS(por ej traducción de nombre a ip) entonces mandas la respuesta falsificando el origen para que parezca que viene del servidor que ha de devolver la respuesta(tu respuesta falsa ha de llegar antes que la del servidor original claro, esta es quizás la parte más díficil del ataque), dándole la respuesta que te interese cambiando los parámetros que te interese (ip,tiempo que debe estar en la caché,etc..), cuando alguien entonces pregunte a ese servidor "infectado" por ese nombre entonces xd...


De todas maneras ese método no tiene sentido para la pregunta de beyonder..

SALUDOS

biyonder
17-09-2008, 00:53
Pero eso de envenenar el servidor DNS es algo complejo, por no decir que ya habran tomado cartas en el asunto contra esa vulnerabilidad. De todas formas, podrias pasarme algun articulo donde expliquen la vulnerabilidad y como explotarla? Gracias

miguel86
17-09-2008, 01:06
Vaya escribimos a la vez xd...
Pues primero deberías saber como funciona el sistema DNS (como va todo eso de los dominios,las zonas, como se delega..) y luego ya hay muchos artículos que te lo explican, yo si te interesa puedo pasarte uno muy bueno donde aprendí como se hace...

No te creas que han tomado muchas cartas en el asunto, este ataque fue muy explotado y se estafó (robó más bien) a mucha gente falseando nombres de servidores bancarios(por eso uno de los consejos que daban los bancos es introducir la ip en la barra de direcciones en vez del nombre), es una vulnerabilidad muy peligrosa y muy fácil de explotar y todavía muchos (pero muchos..) servidores DNS no están "parcheados", de hecho yo diría que más de la mitad de los que gestionan zonas de segundo nivel, pero bueno eso depende de cada uno que sepa bien administrar su servidor DNS, pero vamos que hace poco tiempo ni había parche y el tema estaba caliente......

Si te interesa puedo pasarte también apuntes de como funcionan los servidores DNS y todo eso, pero tienes conocimientos auqneu sean básicos de redes..?

miguel86
17-09-2008, 03:49
...............

biyonder
17-09-2008, 09:57
Hombre, yo todo esto lo he entendido mas o menos (me haria falta leerlo un par de veces mas). Pero a nivel practico no tengo mucha idea, es decir, eso de mandar paquetes y tal...como que no muy bien. Y de todas formas si pudieras facilitarme un tutorial sobre el funcionamiento interno de las DNS te lo agradecería mucho, porque es muy interesante todo esto.

Pero antes una pregunta. ¿No es verdad que la mayoría de los pcs usan las DNS de telefonica? Es decir, las DNS que configuramos para el router son la tipica primaria y la secundaria. Entonces si yo quiero afectar a un pc que use esas DNS, ¿tendría que envenenar esos servidores? Entonces tendria que averiguar antes el servidor DNS que dispone el pc víctima, ¿verdad?

miguel86
17-09-2008, 12:36
...............

biyonder
17-09-2008, 13:14
Ajam entiendo. Es bueno el ataque. Pero y en cuanto a la pregunta de como se generan paquetes y demas? Esdecir, explicaste la teoria, q por cierto esta muy bien, pero ¿y la practica?.

Gracias!

miguel86
17-09-2008, 16:01
Pues si sabes algo de redes no tienes más que hacerte con un programa generador de paquetes y generar tu tus respuestas y consultas aplicando la teoría anterior (si tienes conocimientos básicos de lo que es una arquitectura de comunaciones y conoces un poco los protocolos de red y transporte de internet no debería resultarte difícil), no tendrías más que generar paquetes de tipo consulta y respuesta dns(que puedes hacer con cualquier programa generador de paquetes) y tocar algunos campos en los protocolos udp(capa transporte) ip(capa de red) y dns(capa de servicio), luego por debajo de la capa ip estaría claro tu interfaz de red . los scripts que yo tengo sobre el ataque normal y el d cumpleaños aprovechaban uno de estos programas.

saludos

biyonder
17-09-2008, 16:50
Tengo entendido que con el nmap se puede, ¿es correcto?

miguel86
17-09-2008, 17:49
Que yo sepa nmap se utiliza para el scaner de redes y host o por lo menos esa es la función que utilizado siempre con nmap, no se nada que traiga para crear tu tus propios paquetes desde 0, así que al menos que sea alguna nueva funcionalidad con nmap no se puede que yo sepa...

Existen muchos programas como por ejemplo el SendIP para linux que se utiliza por línea de comandos por lo que viene muy bien para este caso para generar scripts que lo utilicen, si te interesa un programa para windows busca en google por generador de paquetes y cosas asi....los sniffers de red normalmente también tienen funciones para inyectar paquetes...lo que buscas será un programa que se aproveche de winsock y no solo inyecte paquetes precapturados(ya que tienes que incrementar los números de secuencia id y esas cosas).

Para windows tienes hping también con líneas de comandos aunque no se si este último trabaja con capas más altas que la de transportes (necesario para hacer las consultas y respuestas dns)

Saludos

miguel86
17-09-2008, 18:13
por cierto para el fingerprinting de DNS esta la herramienta FPDNS que es realmente buena....y te dará la versión del software que utiliza un servidor DNS.
Saludos

miguel86
17-09-2008, 19:09
............

miguel86
17-09-2008, 19:24
......................

j8k6f4v9j
17-09-2008, 19:47
De hecho lo que tu citas se llama envenenamiento de la caché DNS, yo aprendí a hacerlo y lo llevé a cabo y con el ataque de la paradoja de cumpleaños tiene mucho éxito, es un tema muy peligroso, es un delito bastante grave y de hecho ya los nuevos servidores DNS(el dnnsec2) están bien protegidos auqneu la cantidad de los que existen con el software vulnerable es desde luego muy alta todavía

Quisiera hacer una aclaración que me parece vital. dnssec no es la solución ideal para la protección del sistema mundial de resolución de nombre de dominio. ¿Por qué? Porque por el diseño en sí mismo, acabaríamos teniendo una sola clave con la que trabajar, y eso es muy peligroso. ¿Quién guardaría la clave? ¿Y quién vigila al vigilante? Personalmente creo que esta vulnerabilidad descubierta por Dan Kaminsky, y que estuvo ahí desde el inicio del uso del protocolo, ha tenido tanto tirón mediático porque hay intereses para generar una alarma y designar unos defensores. La historia de siempre. Prefiero usar un bind9 parcheado de opendns.org, a usar un nodo de dnssec de timofónica. Sin lugar a dudas.

Además, dnssec corre el riesgo de industrializarse radicalmente. Con una política de lista blanca, no tardaríamos en ver cómo quien no paga o presenta tal o cual certificado, no es considerado seguro. Posiblemente nos incrementarían bastante los precios de los dominios (de cualquier nivel) y al final no tendríamos servicios como el DNS dinámico, por citar alguno.

Yo no me fío un pelo de aquellos que pretender implantar una jerarquía de dnssec a nivel mundial. Cada cual lo puede usar dentro de su organización o red local sin ningún tipo de problema, definiendo sus propios nonmbres de dominio.


Tengo entendido que con el nmap se puede, ¿es correcto?
No, no es correcto. Como dice miguel86, nmap es un escáner de puertos. Muy completo, eso sí, pero un escáner, no un generador de paquetes. Lo que te ha podido llevar a confusión es que ahora nmap es también un script engine muy potente. Quizá alguien implementó un script para explotar las máquinas halladas en un escaneo de amplio espectro con la vulnerabilidad de DNS y por eso crees que la herramienta "genera" la petición. Pero no es la herramienta en sí, en cualquier caso sería el script añadido.

Salu2



http://img359.imageshack.us/img359/6631/celliigy4.pngKeep on Rollin' :mad:

biyonder
17-09-2008, 20:03
La verdad es que me es muy pero que muy interesante. Y todo esto tambien lo comprendo pero ¿asi podria conocer el funcionamiento interno del DNS? Porque según has hecho a modo practico has ido cambiandote las DNS y probando a ver como resuelve las ip's ¿verdad? Pero en definitiva, ¿de que sirve?

miguel86
17-09-2008, 20:06
Sobre dnnsec no estoy muy puesto sólo se que ese nombre estaba asociado a una solución para corregir los defectos del protocolo dns, de todas maneras contra este tipo de ataque se ha visto un servidor djbdns o un bind9 (que utiliza colas de consulta) no funciona (sobre el bind9 es posible pero difícil teniendo como escenario internet, aunque supongo que ya habrán sacado parches para ello). Aunque este es uno de los ataques contra DNS no es el único, hay bastantes más (por ejemplo cuando gestionas dos dns pero en uno es donde manualmente gestionas los registros y el otro simplemente los actualiza puedes hacer un tipo de ataque parecido a éste y no es difícil).

Independientemente del efecto mediático que haya tenido este atque es innegable que los que desarrollaron el protocolo dns en sus comienzos no tuvieron en cuenta la seguridad de éste o las malas intenciones que se podía hacer aprovechando ciertas cosas... Y que este ataque ha sido uno de los más peligrosos y los más utilizados y que realmente se ha robado mucha cantidad de dinero haciendo esto (sólo hay que mirar las cifras, son mucha gente la que ha sido robada por este sistema)...

Saludos

biyonder
17-09-2008, 20:07
Y tambien el hecho de que con una DNs salgan unos servidores y con otro servidor DNS aparezcan distintos servidores, a que se debe? es decir, yo con un servidor DNS establecido me salen servidores cuyo dominio es .es pues unos pocos, pero con otro servidor DNS me salen otros distintos

miguel86
17-09-2008, 20:14
Sirve para comprender como funciona el sistema DNS, si has comprendido lo que he ido explicando y lo que he ido haciendo con nslookup y te has dado cuenta de que el sistema dns tiene forma de árbol en el que se van delegando los niveles, sabes distinguir entre servidor de nombres autoritativo y no autoritativo, te das cuenta de lo que hace un autoritativo y otro que no lo es al ser consultado, si comprendiste que un nombre puede corresponderse a una máquina real o puede que no lo sea ,o que el nombre del servidor DNS que gestiona un dominio puede ser un nombre de otro dominio(incluso que no tenga nombre),o que es el ttl, si comprendiste que es un recurso y que son los registros, si comprendiste esos detalles entonces sabes como funciona el servidor DNS y comprendes como funciona el ataque de envenenamiento de caché. Cuando dices que para que sirve a que te refieres?Para que sirve a la hora de hacer el ataque?Por que el proposito de todo lo anterior con l nslookup no era relacionado con el ataque si no para comprender el funcionamiento del DNS.

miguel86
17-09-2008, 20:27
Se debe sencillamente a que un nombre no tiene por que corresponderse con una máquina, es decir a parte de haber diferentes nombres para los servidores que gestionan ese nivel cada nombre de esos detrás se encuentran varias máquinas y cada vez que preguntas se te da una.Es para repartir el trabajo, se hace también mucho cuando por ejemplo tienes un servidor web soportado por varias máquinas, esas máquinas tienen el mismo nombre de dominio pero al preguntar al servidor dns que gestiona esa zona te da una ip distinta cada vez...

De todas formas revisa lo que has hecho por que los roots y los de primer nivel te deben dar siempre los mismos o algo haces mal...

biyonder
17-09-2008, 20:41
Entiendo. Y respondiendote a las preguntas miguel, no me referia al ataque en cuestion, sino que cuales son las conclusiones que puedo sacar con cada consulta

biyonder
17-09-2008, 20:51
Miguel, dijiste que si pedia alguien los scripts los potearias. ¿Podrias postearlos? Seria de gran ayuda. Y otra pregunta, ¿que diferencia hay entre una respuesta y una consulta?

miguel86
17-09-2008, 20:52
puedes probar estableciendo diferentes registros (con set type tipo de consulta, prueba con set type=any o set type=SOA), y mira como aparecen las respuestas no autoritativas de tu servidor DNS primario, o juega a establecer como dns primario otro y ver si es autoritativo... ve preguntando sobre páginas que conozcas..y vete dándote cuenta de que sale lo que tiene que salir

j8k6f4v9j
17-09-2008, 20:56
biyonder,

para la teoría, busca los RFCs relacionados y los miles de documentos que explican el protocolo a fondo.

para la práctica, monta un servicio de dns, crea zonas, modifícalas, etc.

Salu2



http://img359.imageshack.us/img359/6631/celliigy4.pngKeep on Rollin' :mad:

miguel86
17-09-2008, 22:36
Por la pregunta anterior biyonder deduzco que no tienes nada claro como funciona el DNS, busca información sobre ello si te interesa y apréndetelo, y si tienes alguna duda concreta posteala..

biyonder
17-09-2008, 23:10
Vale, y como me monto mi propio servidor DNS? y lo de autoritativo y no autoritativo? Son pequeñas dudas, pero vamos, me buscare un buen tutorial sobre el protocolo DNs. Gracias

biyonder
18-09-2008, 09:50
Y otra duda, estuve leyendo sobre como configurar mi propio servidor DNS, pero no encuentro en la carpeta /etc de windows el archivo resolv.conf. Tengo Windows XP y segun lo que he leido por ahi he sacado varias conclusiones pero no se si son correctas:

-Si creo un resolv.conf, cuando un amigo mio en su pc ponga como DNS primario mi ip, ¿mi resolv.conf resolvera los dominios que él consulte? ¿Tan facil resulta?

j8k6f4v9j
25-09-2008, 22:05
Estás leyendo un tutorial para gnu/linux

Salu2



http://img359.imageshack.us/img359/6631/celliigy4.pngKeep on Rollin' :mad:

biyonder
26-09-2008, 15:21
Volviendo al principio de este tema, con eso del archivo windows>system32>drivers>etc>hosts. Probe a poner la ip de google seguida de www.tuenti.com por ejemplo, y no funciona. ¿Sabeis por que?

j8k6f4v9j
26-09-2008, 16:12
¿Qué es lo que no funciona? Con eso, al dirigir tu navegador a www.ŧuenti.com, debería ir a goøgle. No sé si es a eso a lo que te refieres.

Salu2



http://img359.imageshack.us/img359/6631/celliigy4.pngKeep on Rollin' :mad: