
Hago esta pregunta como software (y también porque ha habido algunas preguntas sobre DNSSEC aquí en el pasado).
http://en.Wikipedia.org/wiki/DNS_cache_poisoning#Prevention_and_mitigation
Vi esto en Wikipedia y me preguntaba si alguien podría explicármelo:
"Como se indicó anteriormente, la aleatorización del puerto de origen para las solicitudes de DNS, combinada con el uso de números aleatorios criptográficamente seguros para seleccionar tanto el puerto de origen como el nonce criptográfico de 16 bits, puede reducir en gran medida la probabilidad de ataques exitosos de carrera de DNS"
No entiendo cómo la aleatorización de puertos evitaría ataques de envenenamiento de DNS en el lado del cliente. ¿O esto sólo se refiere al servidor DNS? ¿Se podría utilizar la misma aleatorización de puertos en el lado del cliente?
Respuesta1
DNSpeticionessiempre son de un cliente al servidor, por lo que el puerto de origen está en el extremo del cliente y es el que debe ser aleatorio.
La respuesta del servidor proviene del puerto 53 al puerto de origen original en el extremo del cliente. Como probablemente habrás deducido de tu lectura, si se puede predecir el próximo puerto de origen que utilizará el cliente, entonces se podría falsificar una respuesta antes de la respuesta real.
Tenga en cuenta que un servidor DNS es en sí mismo un cliente cuando no es la autoridad para un dominio solicitado y tiene la recursividad habilitada. Entonces le pide a su servidor DNS la dirección IP de Google.com, luego ese servidor DNS se activa y consulta a los servidores raíz para encontrar la respuesta. Aquí es donde es vital que las respuestas sean reales, ya que el servidor DNS solicitante almacenará en caché cualquier respuesta y la proporcionará como respuesta a cualquier solicitud posterior.
Si pudiera predecir el puerto de origen que usaría el servidor DNS de su ISP para su próxima consulta, podría inyectar mi propia respuesta a la solicitud antes de la respuesta real, entonces el DNS de su ISP estaría envenenado para todos los que lo usen.
(tenga en cuenta que este escenario está muy simplificado en aras de una (esperanzada) claridad)