La intoxicación por caché es un acto en el que se inyectan datos falsos en un caché.
En el contexto de DNS, primero debe observar cómo funciona el DNS. El Sistema de nombres de dominio tiene dos ramas principales, servidores autorizados y solucionadores. Los resolutores enviarán preguntas a otros resolutores o servidores autorizados, guardarán la respuesta en caché y la enviarán de vuelta a quien la solicite.
En los viejos tiempos, los solucionadores enviaban preguntas y se olvidaban de todo. Cuando llegara una respuesta, se pondría en el caché y luego verificaría si podía enviar algunas respuestas.
- ¿Qué dispositivo en miniatura tiene un altavoz y un micrófono y puede conectarse a una dirección IP específica para solicitudes de datos entrantes y salientes?
- ¿Qué son los enchufes huérfanos y cómo puedo prevenirlos?
- ¿Cómo clasifica el comando Netstat las conexiones entrantes y salientes?
- ¿Es posible que un dispositivo atacante solicite continuamente direcciones IP de un servidor DHCP real con direcciones MAC que cambian continuamente?
- ¿Por qué Wireshark muestra la dirección IP de origen de los paquetes que envío como mi dirección IP local (192.168.0, lo que sea)? ¿Cómo funciona?
Cuando envía una respuesta a una pregunta que no se ha formulado, el solucionador no podía saberlo y la trataría como una respuesta legítima. ¡Envenenaste el caché! Ahora coloca su propia IP como ip para example.com y en el futuro el solucionador responderá las preguntas del caché con sus datos falsos.
Desde entonces, se ha hecho un gran esfuerzo para mitigar el problema. Los resolutores de hoy no son tan fáciles de engañar, pero el envenenamiento de caché todavía es posible. Para detener el envenenamiento de caché, debe implementar DNSSEC.
Para leer más sobre la hazaña más grave de esto, lea el error de Kaminsky.
Y aunque todavía está preocupado, implemente DNSSEC en todos los dominios de su propiedad y solicite a su ISP que ejecute un resolutor de validación de DNSEC (o incluso mejor, ejecute uno por su cuenta).