Un groupe de chercheurs de lâUniversitĂ© de Tel Aviv et du Centre Interdisciplinaire de Herzliya (IsraĂ«l) nouvelle mĂ©thode d'attaque (), vous permettant d'utiliser n'importe quel rĂ©solveur DNS comme amplificateur de trafic, fournissant un taux d'amplification allant jusqu'Ă 1621 fois en termes de nombre de paquets (pour chaque requĂȘte envoyĂ©e au rĂ©solveur, vous pouvez atteindre 1621 requĂȘtes envoyĂ©es au serveur de la victime) et jusqu'Ă 163 fois en termes de trafic.
Le problĂšme est liĂ© aux particularitĂ©s du protocole et affecte tous les serveurs DNS prenant en charge le traitement rĂ©cursif des requĂȘtes, notamment (CVE-2020-8616), (CVE-2020-12667), (CVE-2020-10995), Đž (CVE-2020-12662), ainsi que les services DNS publics de Google, Cloudflare, Amazon, Quad9, ICANN et d'autres sociĂ©tĂ©s. Le correctif a Ă©tĂ© coordonnĂ© avec les dĂ©veloppeurs de serveurs DNS, qui ont simultanĂ©ment publiĂ© des mises Ă jour pour corriger la vulnĂ©rabilitĂ© de leurs produits. Protection contre les attaques implĂ©mentĂ©e dans les versions
, , , .
L'attaque est basĂ©e sur l'utilisation par l'attaquant de requĂȘtes faisant rĂ©fĂ©rence Ă un grand nombre d'enregistrements NS fictifs inĂ©dits, auxquels la dĂ©termination du nom est dĂ©lĂ©guĂ©e, mais sans spĂ©cifier d'enregistrements de colle contenant des informations sur les adresses IP des serveurs NS dans la rĂ©ponse. Par exemple, un attaquant envoie une requĂȘte pour rĂ©soudre le nom sd1.attacker.com en contrĂŽlant le serveur DNS responsable du domaine attaquant.com. En rĂ©ponse Ă la requĂȘte du rĂ©solveur au serveur DNS de l'attaquant, une rĂ©ponse est Ă©mise qui dĂ©lĂšgue la dĂ©termination de l'adresse sd1.attacker.com au serveur DNS de la victime en indiquant les enregistrements NS dans la rĂ©ponse sans dĂ©tailler les serveurs IP NS. Ătant donnĂ© que le serveur NS mentionnĂ© n'a pas Ă©tĂ© rencontrĂ© auparavant et que son adresse IP n'est pas spĂ©cifiĂ©e, le rĂ©solveur tente de dĂ©terminer l'adresse IP du serveur NS en envoyant une requĂȘte au serveur DNS de la victime desservant le domaine cible (victim.com).
Le problĂšme est que l'attaquant peut rĂ©pondre avec une Ă©norme liste de serveurs NS non rĂ©pĂ©titifs avec des noms de sous-domaines de victimes fictifs inexistants (fake-1.victim.com, fake-2.victim.com,... fake-1000. victime.com). Le rĂ©solveur tentera d'envoyer une requĂȘte au serveur DNS de la victime, mais recevra une rĂ©ponse indiquant que le domaine n'a pas Ă©tĂ© trouvĂ©, aprĂšs quoi il tentera de dĂ©terminer le prochain serveur NS dans la liste, et ainsi de suite jusqu'Ă ce qu'il ait essayĂ© toutes les solutions. Enregistrements NS rĂ©pertoriĂ©s par l'attaquant. En consĂ©quence, pour une requĂȘte dâun attaquant, le rĂ©solveur enverra un grand nombre de requĂȘtes pour dĂ©terminer les hĂŽtes NS. Ătant donnĂ© que les noms de serveurs NS sont gĂ©nĂ©rĂ©s de maniĂšre alĂ©atoire et font rĂ©fĂ©rence Ă des sous-domaines inexistants, ils ne sont pas rĂ©cupĂ©rĂ©s du cache et chaque requĂȘte de l'attaquant entraĂźne une vague de requĂȘtes adressĂ©es au serveur DNS desservant le domaine de la victime.
Les chercheurs ont Ă©tudiĂ© le degrĂ© de vulnĂ©rabilitĂ© des rĂ©solveurs DNS publics au problĂšme et ont dĂ©terminĂ© que lors de l'envoi de requĂȘtes au rĂ©solveur CloudFlare (1.1.1.1), il est possible d'augmenter le nombre de paquets (PAF, Packet Amplification Factor) de 48 fois, Google (8.8.8.8) - 30 fois, FreeDNS (37.235.1.174) - 50 fois, OpenDNS (208.67.222.222) - 32 fois. Des indicateurs plus visibles sont observĂ©s pour
Niveau3 (209.244.0.3) - 273 fois, Quad9 (9.9.9.9) - 415 fois
SafeDNS (195.46.39.39) - 274 fois, Verisign (64.6.64.6) - 202 fois,
Ultra (156.154.71.1) - 405 fois, Comodo Secure (8.26.56.26) - 435 fois, DNS.Watch (84.200.69.80) - 486 fois et Norton ConnectSafe (199.85.126.10) - 569 fois. Pour les serveurs basĂ©s sur BIND 9.12.3, en raison de la parallĂ©lisation des requĂȘtes, le niveau de gain peut atteindre jusqu'Ă 1000. Dans Knot Resolver 5.1.0, le niveau de gain est d'environ plusieurs dizaines de fois (24-48), puisque la dĂ©termination de Les noms NS sont exĂ©cutĂ©s sĂ©quentiellement et reposent sur la limite interne du nombre d'Ă©tapes de rĂ©solution de noms autorisĂ©es pour une requĂȘte.
Il existe deux principales stratĂ©gies de dĂ©fense. Pour les systĂšmes avec DNSSEC utiliser pour empĂȘcher le contournement du cache DNS car les requĂȘtes sont envoyĂ©es avec des noms alĂ©atoires. L'essence de la mĂ©thode est de gĂ©nĂ©rer des rĂ©ponses nĂ©gatives sans contacter des serveurs DNS faisant autoritĂ©, en utilisant la vĂ©rification de plage via DNSSEC. Une approche plus simple consiste Ă limiter le nombre de noms pouvant ĂȘtre dĂ©finis lors du traitement d'une seule demande dĂ©lĂ©guĂ©e, mais cette mĂ©thode peut poser des problĂšmes avec certaines configurations existantes car les limites ne sont pas dĂ©finies dans le protocole.
Source: opennet.ru
