Dan Kaminsky a découvert que des propriétés inhérentes au protocole DNS conduisaient à des attaques par empoisonnement de cache DNS. Entre autres choses, des attaques réussies peuvent conduire à mal diriger du trafic sur la Toile et à rerouter des courriels.
Cette mise à jour modifie les paquets de la version 9 de Bind de Debian et implante cette contre-mesure recommandée : sélection aléatoire du port source des requêtes UDP. Cette modification augmente le nombre de valeurs dans lesquelles un attaquant doit chercher. Elle assure la compatibilité ascendante et rend les attaques significativement plus difficiles.
Veuillez noter que cette mise à jour de sécurité modifie le comportement réseau de Bind de manière fondamentale, et les étapes suivantes sont recommandées pour assurer une mise à jour sans heurt.
1. Assurez-vous que votre configuration réseau est compatible avec la sélection aléatoire de port source. Si vous protégez votre solveur avec un filtre de paquets sans état, vous devez vous assurer qu'aucun service autre que DNS n'écoute sur la série de port UDP 1024 à 65535 et l'ouvrir sur ce filtre de paquets. Par exemple, les filtres de paquets basés sur la version 2.6.18 du noyau Linux d'Etch ne gèrent que le filtrage sans état des paquets IPv6, et donc soulève cette difficulté supplémentaire (Si vous utilisez IPv4 avec iptables et des règles ESTABLISHED, il est probable qu'aucune modification du réseau ne soit nécessaire).
2. Installez la mise à jour de la version 9 de Bind, avec apt-get
update
suivi de apt-get install bind9
. Vérifiez que le processus
named a été redémarré et répond aux requêtes récursives (Si toutes les requêtes
échouent suite à une erreur de temps de traitement dépassé, cela signifie que
des modifications du réseau sont nécessaires ; veuillez vous référer à la
première étape).
3. Vérifiez que la sélection aléatoire de port source est active. Vérifiez que le fichier /var/log/daemon.log ne contient pas de message de la forme suivante :
named[6106]: /etc/bind/named.conf.options:28: using specific query-source port suppresses port randomization and can be insecure.
juste après les messages listening on IPv6 interface
et listening on
IPv4 interface
inscrits dans le journal par Bind au démarrage. Si ces
messages sont présents, vous devez supprimer les lignes indiquées de la
configuration, ou remplacer les numéros de ports qu'ils contiennent par le
symbole *
(par exemple, remplacez port 53
par port *
).
À fin de vérification complémentaire, utilisez tcpdump ou d'autres outils de surveillance du réseau pour vérifier la variation des ports source UDP. S'il y a un périphérique NAT devant votre solveur, veuillez vous assurer qu'il ne supprime pas les effets de la sélection aléatoire de ports source.
4. Si vous ne pouvez pas activer la sélection aléatoire de ports source, pensez à configurer la version 9 de Bind pour rediriger les requêtes vers un solveur qui le peut, si possible sur un réseau privé virtuel comme OpenVPN afin de créer le lien réseau sécurisé nécessaire (utilisez le mode de simple redirection de Bind dans ce cas).
D'autres solveurs utilisant un cache distribués par Debian (PowerDNS, MaraDNS, Unbound) emploient déjà la sélection aléatoire de ports source, et ils n'ont pas besoin d'être mis à jour. Différentes versions 9.5 de Bind (à partir de la version 1:9.5.0.dfsg-4) n'implantent qu'une forme faible de sélection aléatoire des ports source et doivent aussi être mis à jour. Pour des informations sur la version 8 de Bind, veuillez vous reporter au bulletin de sécurité Debian n° 1604-1, et pour l'état du solveur de la libc, veuillez vous reporter au bulletin de sécurité Debian n° 1605-1.
Les paquets bind9 mis à jour contiennent des modifications initialement prévues pour la prochaine version intermédiaire de la distribution stable, y compris l'adresse IP modifiée de L.ROOT-SERVERS.NET (bogue Debian n° 449148).
Pour la distribution stable (Etch), ce problème a été corrigé dans la version 9.3.4-2etch3.
Pour la distribution instable (Sid), ce problème sera corrigé prochainement.
Nous vous recommandons de mettre à jour votre paquet bind9.
Les sommes MD5 des fichiers indiqués sont disponibles sur la page originale de l'alerte de sécurité.