¿Por qué el nombre de dominio registrado "localtest.me" se resuelve en 127.0.0.1?


30

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.1estaba 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.

  1. ¿Qué tiene de especial localtest.me?

  2. ¿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.menunca 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

Y en preguntas similares sobre Stack Overflow.


22
Esto es realmente simple: registrar un nombre de dominio y asignar una dirección IP son dos cosas diferentes. Cualquiera puede registrar cualquier nombre de dominio por cualquier motivo. Simplemente debe pagar al registrador de dominios, pasando por el "papeleo" virtual y luego, como por arte de magia, tiene un nombre de dominio. Pero luego asignar una dirección IP a ese dominio es una bestia completamente diferente. Cualquiera puede asignar cualquier dirección IP a un nombre de dominio. Un nombre de dominio es simplemente un puntero que facilita la vida.
JakeGould

Uno de esos nombres de dominio que está conectado a una perturbación de la fuerza recientemente esbealocalhost.de
Hagen von Eitzen el

Respuestas:


69

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 ni siquiera sale de la máquina. ¿Cómo se maneja esto en el nivel bajo?

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.1agregan esta línea a su base de datos:

localtest.me.   A   127.0.0.1

Eso es. Quien pregunta localtest.meahora recibe la respuesta "Oh, está en 127.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 su tracert 127.0.0.1lugar. No hay magia en absoluto.

¿Hay otros? (¿Y cómo encontrarlos?)

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.


44
Gracias chicos por aclarar. Este fue definitivamente un hallazgo interesante, ya que no tenía idea de que también se pudieran registrar bloques de IP reservados .
not2qubit

11
Sí. No es asunto de DNS imponer cómo se pueden usar las direcciones.
Grawity

2
@ not2qubit "... No tenía idea de que uno también podría registrar bloques de IP reservados". Está mezclando términos. Debe registrar un nombre de dominio con un registrador; Ese es un proceso controlado. Usted asigna una dirección IP a un nombre de dominio; ese es un proceso no controlado. Se puede asignar cualquier pila de números a cualquier nombre de dominio registrado siempre que controle el nombre de dominio.
JakeGould

"No marca" Pizza Hut "en el teléfono; busca su número de teléfono y marca el número". Buena analogía!
Joshua Pinter

1
Es cierto que probablemente no durará mucho tiempo, con Siri / Alexa / Google ordenando pizza para ti ...
Grawity

16

Hay otras respuestas que entran en detalles más profundos, pero el núcleo de esta pregunta es realmente simple de responder:

"Sin embargo, todavía no estoy seguro de cómo puede registrar un dominio externo en uno local".

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:

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.

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.1no era que la dirección IP 127.0.0.1estuviera 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 herramienta 127.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 usar 127.0.0.1esa 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.1estuvieran expuestos a Internet, sino que la codificación descuidada en una herramienta en un sitio permitía que esto sucediera.


8

¿Qué tiene de especial localtest.me ?

Apunta a 127.0.0.1 (localhost). Esta dirección siempre está reservada para la computadora local.

¿Hay otros? (¿Y cómo encontrarlos?)

Sí. Google y Super User son tus amigos (como descubriste).

Todavía no estoy seguro de cómo puede registrar un dominio externo en una [IP] local. Esto es confuso como untracert localtest.me nunca sale de la máquina. ¿Cómo se maneja esto en el nivel bajo?

Te estás perdiendo la solicitud DNS inicial (externa) . tracertmuestra 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, para tracerto 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.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.