Un groupe d’universitaires de l’Université de Californie et de l’Université Tsinghua a découvert une série de failles de sécurité critiques qui pourraient conduire à une reprise des attaques d’empoisonnement du cache DNS.
Surnommé « Attaque DNS SAD« (abréviation de Side-channel AttackeD DNS), la technique permet à un acteur malveillant de mener une attaque hors chemin, en redirigeant tout trafic initialement destiné à un domaine spécifique vers un serveur sous son contrôle, leur permettant ainsi d’écouter et altérer les communications.
« Cela représente une étape importante – la première attaque de canal côté réseau militable qui a de sérieux impacts sur la sécurité », ont déclaré les chercheurs. « L’attaque permet à un attaquant hors chemin d’injecter un enregistrement DNS malveillant dans un cache DNS. »
Suivi comme CVE-2020-25705, les résultats ont été présentés à la conférence ACM sur la sécurité informatique et des communications (CCS ’20) qui s’est tenue cette semaine.
La faille affecte les systèmes d’exploitation Linux 3.18-5.10, Windows Server 2019 (version 1809) et plus récents, macOS 10.15 et plus récents, et FreeBSD 12.1.0 et plus récents.
Les redirecteurs DNS deviennent une nouvelle surface d’attaque
Les résolveurs DNS mettent généralement en cache les réponses aux requêtes d’adresse IP pendant une période spécifique afin d’améliorer les performances de réponse dans un réseau. Mais ce mécanisme même peut être exploité pour empoisonner les caches en empruntant l’identité des entrées DNS de l’adresse IP d’un site Web donné et en redirigeant les utilisateurs qui tentent de visiter ce site Web vers un autre site choisi par l’attaquant.
Cependant, l’efficacité de ces attaques a été touchée en partie en raison de protocoles tels que DNSSEC (Extensions de sécurité du système de noms de domaine) qui crée un nom de domaine sécurisé système en ajoutant des signatures cryptographiques aux enregistrements DNS existants et des défenses basées sur la randomisation qui permettent au résolveur DNS d’utiliser un port source et un ID de transaction (TxID) différents pour chaque requête.
Notant que les deux mesures d’atténuation sont toujours loin d’être largement déployé pour des raisons « d’incitations et de compatibilité », les chercheurs ont déclaré avoir conçu une attaque par canal secondaire qui peut être utilisée avec succès contre les piles de logiciels DNS les plus populaires, rendant ainsi vulnérables les résolveurs DNS publics tels que Cloudflare 1.1.1.1 et 8.8.8.8 de Google.
Une nouvelle attaque latérale
L’attaque DNS SAD fonctionne en utilisant une machine compromise dans n’importe quel réseau capable de déclencher une requête d’un transitaire ou d’un résolveur DNS, tel qu’un réseau sans fil public géré par un routeur sans fil dans un café, un centre commercial ou un aéroport.
Il exploite ensuite un canal secondaire dans la pile de protocoles réseau pour analyser et découvrir les ports sources utilisés pour lancer une requête DNS, puis injecter un grand nombre de réponses DNS usurpées en forçant brutalement les TxID.
Plus précisément, les chercheurs ont utilisé un canal utilisé dans les demandes de nom de domaine pour affiner le numéro de port source exact en envoyant des UDP paquets, chacun avec des adresses IP différentes, vers un serveur victime et déduire si les sondes usurpées ont atteint le bon port source en fonction de la ICMP réponses reçues (ou absence de réponses).
Cette méthode d’analyse des ports atteint une vitesse d’analyse de 1 000 ports par seconde, prenant un peu plus de 60 secondes pour énumérer l’ensemble de la plage de ports composée de 65536 ports. Avec le port source ainsi dérandomisé, tout ce qu’un attaquant a à faire est d’insérer une adresse IP malveillante pour rediriger le trafic du site Web et réussir à réussir une attaque d’empoisonnement du cache DNS.
Atténuer les attaques DNS SAD
En plus de démontrer des moyens d’étendre la fenêtre d’attaque qui permet à un attaquant d’analyser plus de ports et d’injecter des enregistrements non fiables supplémentaires pour empoisonner le cache DNS, l’étude a révélé que plus de 34% des résolveurs ouverts sur Internet sont vulnérables, dont 85%. comprennent des services DNS populaires tels que Google et Cloudflare.
Pour contrer le DNS SAD, les chercheurs recommandent de désactiver les réponses ICMP sortantes et de définir le délai d’expiration des requêtes DNS de manière plus agressive.
Les chercheurs ont également mis au point un outil pour vérifier les serveurs DNS vulnérables à cette attaque. De plus, le groupe a travaillé avec l’équipe de sécurité du noyau Linux pour un pièce qui randomise la limite de débit globale ICMP pour introduire des bruits dans le canal latéral.
La recherche « présente un canal secondaire novateur et général basé sur [the] limite de débit ICMP mondiale, universellement mise en œuvre par tous les systèmes d’exploitation modernes », ont conclu les chercheurs.« Cela permet des analyses efficaces des ports sources UDP dans les requêtes DNS. Combiné avec des techniques pour étendre la fenêtre d’attaque, il conduit à une reprise puissante de l’attaque d’empoisonnement du cache DNS. «