DNS y HTTP
Ya sabés cómo viajan los paquetes y cómo se identifican los dispositivos. Ahora falta la parte que ves todos los días: escribir "google.com" en el navegador y que aparezca una página. Ahí adentro pasan dos protocolos clave: DNS y HTTP.
DNS: la agenda de contactos de internet
Las computadoras se ubican entre sí usando direcciones IP (142.250.219.14), pero a los humanos nos cuesta memorizar números así. El DNS (Domain Name System) es el sistema que traduce nombres fáciles de recordar como google.com a la dirección IP real del servidor.
DNS es la agenda de contactos de tu celular. Vos no memorizás el número de teléfono de cada persona, guardás su nombre y el celular busca el número por vos. Cuando escribís "mamá" y llamás, tu teléfono internamente marca el número real. DNS hace lo mismo, pero para direcciones de internet.
Cómo funciona la búsqueda, paso a paso
Escribís google.com en el navegador.
Tu compu le pregunta a un servidor DNS (normalmente el de tu proveedor de internet, o uno público como 8.8.8.8 de Google): "¿cuál es la IP de google.com?"
El servidor DNS responde con la IP correspondiente, por ejemplo 142.250.219.14.
Recién ahí tu navegador usa esa IP para conectarse al servidor real de Google, usando todo lo que ya vimos de capas y direccionamiento.
Igual que ARP, el DNS clásico no siempre verifica que la respuesta sea legítima. Un atacante puede intentar un DNS spoofing: responder más rápido que el servidor real con una IP falsa, para redirigirte a un sitio malicioso que se ve idéntico al original (por ejemplo, una página de login falsa de tu banco).
HTTP: el idioma con el que hablan navegador y servidor
Una vez que tu navegador ya tiene la IP correcta, necesita un "idioma" para pedirle contenido al servidor y que este le responda. Ese idioma es HTTP (HyperText Transfer Protocol). Funciona con un patrón simple: petición (request) y respuesta (response).
GET
"Dame esta página/recurso." Es lo que pasa cada vez que hacés click en un link.
POST
"Acá te mando datos" (un formulario, un login, una compra). Envía información al servidor.
200 OK
Todo salió bien, acá está lo que pediste.
404 / 500
404: no existe lo que pediste. 500: el servidor tuvo un error interno procesando tu pedido.
La diferencia entre HTTP y HTTPS
HTTP manda todo en texto plano: si alguien intercepta el tráfico (por ejemplo con un ataque ARP como el que viste en el módulo anterior), puede leer usuario, contraseña, todo. HTTPS agrega una capa de cifrado (TLS) que vuelve ese contenido ilegible para cualquiera que lo intercepte en el camino. Por eso siempre importa ver el candadito y el "https" en la barra de direcciones, sobre todo en sitios donde escribís contraseñas o datos de tarjetas.
DNS y HTTP son superficie de ataque enorme: DNS spoofing, subdominios olvidados que exponen información, cabeceras HTTP mal configuradas, cookies sin protección. La fase de "reconocimiento" (próximo módulo del camino Red Team) se apoya muchísimo en consultar información pública de DNS sobre un objetivo.
Los logs de un servidor web son, en esencia, una lista larguísima de peticiones HTTP. Saber leer un código de estado, un método, o detectar un patrón raro de consultas DNS (por ejemplo, un dispositivo interno consultando dominios sospechosos) es exactamente lo que hace un analista de SOC todos los días.
Abrí la terminal y escribí nslookup google.com (o dig google.com en Mac/Linux).
Vas a ver la dirección IP que le corresponde a ese dominio en este momento — literalmente estás haciendo a mano lo que tu navegador hace automáticamente.
Ahora abrí cualquier página web, click derecho → "Inspeccionar" → pestaña "Network" (o "Red"), y recargá la página.
Vas a ver una lista de peticiones HTTP reales: método, código de estado, tiempo. Esa lista es exactamente lo que un analista revisa cuando algo se ve raro.
Ponete a prueba
1. ¿Qué hace el DNS?
2. La diferencia entre HTTP y HTTPS es principalmente...
3. Un código de respuesta HTTP 404 significa...