Estaba leyendo un artículo sobre falsificación de solicitudes del lado del servidor . En ese artículo, el atacante descubrió que 127.0.0.1
estaba abierto a Internet. Luego 127.0.0.1
, la víctima bloqueó , pero debido a que muchas otras direcciones IP y aparentemente también algunos dominios también están resueltos a eso, incluido el misterioso localtest.me
, pudo evitar un filtro débil basado en texto.
¿Qué tiene de especial
localtest.me
?¿Hay otros? (¿Y cómo encontrarlos?)
ACTUALIZAR
Encontré: http://readme.localtest.me/
Al parecer, alguien decidió registrar ese dominio de una manera divertida, con fines de prueba:
Así es como funciona. El nombre de dominio completo localtest.me, y todas las entradas con comodines, apuntan a 127.0.0.1. Entonces, sin ningún cambio en su archivo host, puede comenzar a probar de inmediato con una URL local.
Sin embargo, todavía no estoy seguro de cómo puede registrar un dominio externo en uno local. Esto es confuso ya que tracert localtest.me
nunca sale de la máquina. ¿Cómo se maneja esto en el nivel bajo?
Luego encontré varios más en estos comentarios y en otros lugares:
lvh.me
vcap.me
fuf.me - IPv4 and IPv6
ulh.us
127-0-0-1.org.uk
ratchetlocal.com
smackaho.st
42foo.com
beweb.com
yoogle.com
ortkut.com
feacebook.com
bealocalhost.de
Respuestas:
No hay nada que "vincule" el dominio a su dirección de la manera que imaginas. Al igual que una guía telefónica, DNS simplemente te dice qué la dirección, pero ahí es donde termina su participación. (No marca "Pizza Hut" en el teléfono; busca su número de teléfono y marca el número).
Entonces, cuando alguien registra un nombre de dominio, solo tiene la capacidad de editar esos registros de la agenda telefónica. Pero para "señalar" un nombre de dominio en alguna parte, digamos,
127.0.0.1
agregan esta línea a su base de datos:Eso es. Quien pregunta
localtest.me
ahora recibe la respuesta "Oh, está en127.0.0.1
".Entonces, cuando escribe
tracert localtest.me.
, primero le pregunta a DNS sobre la dirección asociada; obtiene la respuesta 127.0.0.1; y luego se comporta exactamente como si hubieras corrido en sutracert 127.0.0.1
lugar. No hay magia en absoluto.En este punto, debe quedar claro que cualquier propietario de dominio puede hacer esto sin ningún esfuerzo, por lo que siempre existe la probabilidad de que existan otros dominios de este tipo en un momento dado. Debido a que los datos DNS se distribuyen a través de muchos sistemas (a veces incluso generados dinámicamente), realmente no puede encontrarlos todos, o incluso esperar que sus resultados sigan siendo precisos después de unos pocos segundos.
Pero por razones de seguridad, no necesita encontrarlos a todos. Algunos solucionadores de DNS ya tienen un tipo de filtro para tales entradas (llamado "protección de enlace DNS"), y no buscan preguntas específicas, solo miran la respuesta . La función de protección solo bloquea las respuestas que apuntan a cualquier dirección local.
Sin embargo, antes de preguntar, esto no se puede prohibir globalmente: señalar nombres de dominio a direcciones privadas sigue siendo un uso perfectamente legítimo de DNS, y se usa en la práctica en muchas redes.
fuente
Hay otras respuestas que entran en detalles más profundos, pero el núcleo de esta pregunta es realmente simple de responder:
Registrar un nombre de dominio y asignar una dirección IP son dos cosas completamente diferentes e independientes.
Cualquiera puede registrar cualquier nombre de dominio por cualquier motivo; incluso puede registrar un nombre de dominio sin tener una dirección IP de destino en su lugar. Simplemente debe pagar al registrador de dominios, pasando por el "papeleo" virtual y luego, como por arte de magia, tiene un nombre de dominio. Todo lo que está pagando cuando registra un nombre de dominio es el nombre de dominio en sí mismo, así como la capacidad, lea a continuación, de asignar una dirección IP a un nombre de dominio.
Pero luego asignar una dirección IP a ese nombre de dominio es un proceso completamente diferente. Cualquiera puede asignar cualquier dirección IP a un nombre de dominio si tiene el control de ese nombre de dominio. El registrador de nombres de dominio no se preocupa ni se preocupa por la pila de direcciones sin formato que asigna a un nombre de dominio.
Todo un nombre de dominio es simplemente un puntero que facilita la vida. Piense en ello como un alias para que las personas no tengan que memorizar pilas de números (IPv4) o números y letras (IPv6).
¡Eso es!
Pero lo que sucedió, como se explica en la página que visitó, no fue un "pirateo" de todos los sistemas en la dirección local "127.0.0.1" del mundo, sino más bien una falla en ese sistema específico.
Pero para aclarar más esto, y esto me hizo tropezar de la manera en que lo expresaste también, cuando afirmas:
También leí ese artículo , y esto es lo que sucedió: alguien estaba usando una herramienta en línea que le permitía apuntar esa herramienta a cualquier dirección IP / nombre de host. Cuando señalaron esa herramienta,
127.0.0.1
no era que la dirección IP127.0.0.1
estuviera expuesta a Internet. Más bien, la herramienta en sí tenía una falla que permitía a cualquiera probar el servidor interno en el que se estaba ejecutando la herramienta127.0.0.1
. Y dado que esta herramienta era explícitamente una herramienta de hackeo que se usaba para detectar puertos abiertos y cosas así, al usar127.0.0.1
esa aplicación específica pudo probar su propia red localhost y, clave aquí, transmitir esa información a alguien que accede a la herramienta a través de un navegador web .El riesgo presentado no era que todos
127.0.0.1
estuvieran expuestos a Internet, sino que la codificación descuidada en una herramienta en un sitio permitía que esto sucediera.fuente
Apunta a 127.0.0.1 (localhost). Esta dirección siempre está reservada para la computadora local.
Sí. Google y Super User son tus amigos (como descubriste).
Te estás perdiendo la solicitud DNS inicial (externa) .
tracert
muestra la ruta que toma un paquete, pero antes de que un paquete pueda ir a cualquier parte, la computadora debe conocer la IP para enviarlo. Con advertencias, si nunca antes ha visitado locatest.me , se realiza una solicitud de DNS a los solucionadores externos para descubrir que se asigna a 127.0.0.1. Los datos devueltos se usan localmente (por ejemplo, paratracert
o mostrar contenido web). Y recuerde que DNS puede asignar cualquier nombre de host a cualquier IP; no "sabe" si una IP es local o no.fuente