L’attaque RebirthDay ressuscite l’empoisonnement DNS des années 2000 en exploitant ECS
Des chercheurs ont ressuscité l’attaque d’anniversaire DNS, morte depuis 2002, en contournant l’agrégation de requêtes via ECS ; huit éditeurs ont reconnu le problème et 50 CVE ont été assignées. Unbound, PowerDNS et BIND sont concernés — les résolveurs exposés doivent être mis à jour sans attendre.
2025. Des chercheurs présentent RebirthDay à la conférence CCS, une attaque qui ressuscite l’empoisonnement DNS par anniversaire, considéré comme mort depuis 2002. 2026. Le travail est repris à Black Hat Asia, avec un bilan de divulgation responsable : huit éditeurs ont reconnu le problème et 50 CVE ont été assignées. 22 juillet 2026. NLnet Labs publie de son côté la CVE-2026-50252, une faille d’entropie de port dans Unbound, cotée CVSS 9.3. Le point qui compte : l’empoisonnement de cache DNS n’est plus un chapitre d’histoire — il est redevenu une surface d’attaque réelle, et les résolveurs exposés doivent être corrigés maintenant.
Comment RebirthDay contourne la défense qui a tué l’attaque d’anniversaire
L’empoisonnement de cache DNS consiste à faire accepter à un résolveur une réponse forgée qui associe un nom de domaine à une adresse IP contrôlée par l’attaquant. La défense historique tient à deux secrets : un port source aléatoire et un identifiant de transaction. L’attaque d’anniversaire — envoyer beaucoup de réponses devinées et compter sur la collision — a cessé de fonctionner en 2002, quand les résolveurs ont commencé à agréger les requêtes identiques : une seule requête sortante par nom, une seule chance de deviner.
RebirthDay brise précisément cette protection. L’astuce repose sur ECS — EDNS Client Subnet —, l’extension qui transmet un préfixe de l’adresse du client au résolveur pour orienter le choix d’un CDN. En envoyant des requêtes avec des préfixes ECS différents, l’attaquant force le résolveur à émettre plusieurs requêtes sortantes pour le même nom, une par préfixe. L’agrégation vole en éclats : chaque préfixe offre une nouvelle chance de collision, et l’attaque d’anniversaire redevient statistiquement rentable.
Les cibles sont les résolveurs récursifs et les forwarders qui activent ECS sans vérifier sa cohérence. Le bilan est large parce qu’ECS est répandu et rarement audité.
Le cas concret : Unbound et la CVE-2026-50252
À côté du travail académique, la CVE-2026-50252 illustre la même famille de risque sous un angle plus terre à terre. Elle touche Unbound, le résolveur validant de NLnet Labs, dans les versions 1.4.22 à 1.25.1, et seulement quand l’option so-reuseport est active — ce qui est le défaut dans ces versions.
Le mécanisme est subtil. Unbound répartit la plage de ports UDP entre ses threads de travail. Avec SO_REUSEPORT, le noyau envoie chaque port client vers un thread fixe. Un observateur situé sur le même réseau peut donc apprendre la correspondance entre un port sortant et un thread, pour une adresse source donnée. Une fois le thread identifié, le nombre de ports à deviner s’effondre, ce qui rend l’empoisonnement de cache nettement moins coûteux.
Le correctif 1.25.2 remplace ce partage par un pool de ports commun par interface, de sorte que le port ne révèle plus le thread. La faille est cotée CVSS 9.3 avec un vecteur réseau adjacent : l’attaquant doit pouvoir observer les requêtes du résolveur, ce qui limite l’exploitation aux réseaux où l’on peut écouter le trafic — mais un résolveur mutualisé ou un Wi-Fi ouvert change la donne.
L’ampleur : huit éditeurs, cinquante CVE
La divulgation responsable de RebirthDay a reçu des accusés de réception de huit éditeurs, dont BIND (ISC), Unbound (NLnet Labs), PowerDNS et Quad9. Le total de 50 CVE assignées signale un problème transversal : ce n’est pas une implémentation fautive, mais une classe de faiblesse liée à la vérification d’ECS et aux extensions DNS qui l’accompagnent.
La leçon dépasse le correctif du jour. ECS a été ajouté pour des raisons de performance et de CDN, pas pour être un vecteur d’attaque. Sa combinaison avec les mécanismes d’entropie des résolveurs a rouvert une porte qu’on croyait fermée depuis un quart de siècle. Les chercheurs insistent : il faut accorder plus d’attention à la vérification d’ECS et à ses implémentations.
Ce qu’il faut faire, concrètement
Les gestes de remédiation sont précis et vérifiables.
Mettez Unbound à jour vers 1.25.2, ou installez le paquet corrigé par votre distribution pour la CVE-2026-50252. Les personnes qui compilent depuis les sources sans pouvoir passer à 1.25.2 peuvent appliquer le patch publié par NLnet Labs pour la 1.25.1.
unbound -V
unbound-checkconf -o so-reuseport La première commande affiche la version installée ; la seconde imprime la valeur effective de so-reuseport. Si elle répond yes, la condition de l’avis est remplie. Un paquet peut afficher une version de base ancienne avec des correctifs rétroportés : vérifiez le suivi de sécurité de votre distribution.
Désactivez ECS si vous n’en avez pas besoin. Un résolveur d’entreprise qui ne sert pas de CDN n’a aucune raison d’émettre des requêtes ECS. Le désactiver supprime la surface d’attaque que RebirthDay exploite.
Gardez la validation DNSSEC active. Elle protège les réponses indépendamment des ports sources et rend un empoisonnement inoffensif sur les zones signées.
Limitez qui peut interroger le résolveur avec des règles d’access-control, et redémarrez le service après mise à jour pour confirmer que la nouvelle version tourne.
Verdict
Si vous opérez un résolveur Unbound exposé à d’autres clients que les vôtres, montez en 1.25.2 sans attendre et vérifiez so-reuseport : c’est un correctif à une commande près, face à une faille cotée 9.3. Si vous gérez un parc de résolveurs ou de forwarders, ajoutez deux consignes à votre standard : désactiver ECS là où il ne sert pas, et garder DNSSEC activé. La conclusion de RebirthDay tient en une phrase : une extension ajoutée pour la performance a réouvert une attaque de 2002 — la défense ne tient que si l’on traite chaque extension DNS comme une surface à auditer.
Références
- ACM CCS 2025 — RebirthDay Attack: Reviving DNS Cache Poisoning with the Birthday Paradox
- Black Hat Asia 2026 — RebirthDay Attack: Reviving DNS Cache Poisoning (présentation)
- NLnet Labs — Advisory CVE-2026-50252 (Unbound)
- NVD — CVE-2026-50252
- Safeguard — CVE-2026-50252: Critical DNS Cache Poisoning in Unbound (18 octobre 2026)
- LinuxSecurity — BIND, PowerDNS and Unbound Patch DNS Resolver Security Flaws