En octobre 2016 de nombreux sites Web populaires tels qu’Amazon, Twitter, Netflix et Spotify sont devenus inaccessibles à des millions d’internautes aux Etats-Unis pendant près de 10 heures, autant dire une éternité. En cause, une des plus grosses attaques de l’histoire d’Internet sur les services DNS de Dyn, un acteur majeur dans ce secteur d’activité.
D’autres sociétés telles que Google, The New York Times et de nombreuses banques ont également été victimes de différentes variétés d’attaques ciblant le DNS ces dernières années et, si dans beaucoup de sociétés le DNS reste un grand oublié, les choses sont en train d’évoluer vers une prise de conscience forcée par ces nombreuses attaques.
Mais au fait, quelles sont ces attaques ?
Attack #1: DNS Cache Poisoning and Spoofing
La finalité de l’empoisonnement DNS est d’acheminer les utilisateurs vers un site Web frauduleux. Par exemple, un utilisateur tape « gmail.com » dans un navigateur Web avec pour objectif d’aller consulter sa boîte email. Le DNS ayant été empoisonné, ce n’est pas la page gmail.com qui s’affiche mais une page frauduleuse choisie par l’attaquant, dans le but par exemple de récupérer les accès aux boîtes emails. Les utilisateurs saisissant le nom de domaine correct, ils ne se rendent pas compte que le site Web qu’ils visitent est un faux, une escroquerie.
Cela crée une opportunité parfaite pour les attaquants d’utiliser des techniques de phishing pour soutirer de l’information, qu’il s’agisse des informations d’identification ou des informations de carte de crédit, auprès de victimes peu méfiantes. L’attaque peut être dévastatrice, en fonction de plusieurs facteurs, selon l’intention de l’attaquant et la portée de l’empoisonnement DNS.
Comment les pirates mènent-ils cette attaque ? En exploitant le système de mise en cache DNS.
La mise en cache DNS est utilisée dans tout le Web pour accélérer les temps de chargement et réduire les charges sur les serveurs DNS. La mise en cache de document Web (ex : page web, images) est utilisée afin de réduire la consommation de bande passante, la charge du serveur web (les tâches qu’il effectue), ou améliorer la rapidité de consultation lors de l’utilisation d’un navigateur. Un cache Web conserve des copies de documents transitant par son biais. Une fois qu’un système interroge un serveur DNS et reçoit une réponse, il enregistre les informations dans un cache local pour une référence plus rapide, sur un laps de temps donné, sans avoir à aller rechercher l’information. Le cache peut donc répondre aux requêtes ultérieures à partir de ses copies, sans recourir au serveur Web d’origine.
Cette approche est utilisée à travers le Web de manière routinière et en chaîne. Les enregistrements d’un serveur DNS servent à mettre en cache des enregistrements sur un autre serveur DNS. Ce serveur sert à mettre en cache les enregistrements DNS sur les systèmes de réseau tels que les routeurs. Ces enregistrements sont utilisés pour créer des caches sur des machines locales.
L’empoisonnement DNS survient lorsque l’un de ces caches est compromis.
Par exemple, si le cache sur un routeur réseau est compromis, alors quiconque l’utilise peut être mal orienté vers un site Web frauduleux. Les faux enregistrements de DNS se ramifient vers les caches DNS sur la machine de chaque utilisateur.
Cette attaque peut également viser des maillons hauts de la chaîne. Par exemple, un serveur DNS majeur peut être compromis. Cela peut endommager les caches des serveurs DNS gérés par les fournisseurs de services Internet. Le « poison » peut se répercuter sur les systèmes et les périphériques de réseautage de leurs clients, ce qui permet d’acheminer des millions de personnes vers des sites Web frauduleux.
Cela vous semble fou ? En 2010, de nombreux internautes américains ne pouvaient plus accéder à des sites comme Facebook et YouTube, car un serveur DNS d’un fournisseur d’accès Internet de haut niveau avait accidentellement récupéré les enregistrements du Grand Pare-feu Chinois [le gouvernement chinois bloquait les accès à ces sites].
L’antidote à ce poison
L’empoisonnement du cache DNS est très difficile à détecter. Il peut durer jusqu’à ce que le TTL (Time To Live – durée de validité d’une requête mise en cache) expire sur les données en cache ou qu’un administrateur le réalise et résolve le problème. En fonction de la durée du TTL, les serveurs peuvent prendre des jours pour résoudre le problème de leur propre chef.
Les meilleures méthodes pour empêcher une attaque par empoisonnement du cache DNS incluent la mise à jour régulière du programme, la réduction des temps TTL et la suppression régulière des caches DNS des machines locales et des systèmes réseau.
Pour les registres qui le permettent la mise en place de DNSSEC est la meilleure réponse afin de signer les zones des noms de domaine sur l’ensemble de la chaine et rendre impossible une attaque par empoisonnement du cache.
Attack #2: Attaque par amplification DNS (de type DDoS)
Les attaques par amplification DNS ne sont pas des menaces contre les systèmes DNS. Au lieu de cela, elles exploitent la nature ouverte des services DNS pour renforcer la force des attaques de déni de service distribuées (DDoS). Ces attaques ne sont pas les moins connues, ciblant par exemple des sites bien à forte notoriété tels que BBC, Microsoft, Sony…
Accrocher et amplifier
Les attaques DDoS se produisent généralement à l’aide d’un botnet. L’attaquant utilise un réseau d’ordinateurs infectés par des logiciels malveillants pour envoyer de grandes quantités de trafic vers une cible, comme un serveur. Le but est de surcharger la cible et de ralentir ou de l’écraser.
Les attaques par amplification ajoutent plus de puissance. Plutôt que d’envoyer le trafic directement d’un botnet à une victime, le botnet envoie des demandes à d’autres systèmes. Ces systèmes répondent en envoyant des volumes de trafic encore plus importants à la victime.
Les attaques par amplification DNS en sont un exemple parfait. Les attaquants utilisent un botnet pour envoyer des milliers de demandes de recherche pour ouvrir des serveurs DNS. Les demandes ont une adresse source falsifiée et sont configurées pour maximiser la quantité de données renvoyées par chaque serveur DNS.
Le résultat: un attaquant envoie des quantités relativement restreintes de trafic à partir d’un botnet et génère des volumes de trafic proportionnellement supérieurs ou « amplifiés » des serveurs DNS. Le trafic amplifié est dirigé vers une victime, ce qui provoque une panne du système.
Détecter et se défendre
Certains pare-feu peuvent être configurés pour reconnaître et arrêter les attaques DDoS au fur et à mesure qu’elles se produisent en supprimant des paquets artificiels essayant d’inonder les systèmes sur le réseau.
Une autre façon de lutter contre les attaques DDoS consiste à héberger votre architecture sur plusieurs serveurs. De cette façon, si un serveur devient surchargé, un autre serveur sera toujours disponible. Si l’attaque est faible, les adresses IP d’envoi du trafic peuvent être bloquées. En outre, une augmentation de la bande passante du serveur peut lui permettre d’absorber une attaque.
De nombreuses solutions dédiées existent également conçues exclusivement pour lutter contre les attaques DDoS.
Attack #3: Attaque DDoS sur le DNS
Les attaques DDoS peuvent être utilisées contre de nombreux types de systèmes. Cela inclut les serveurs DNS. Une attaque DDoS réussie contre un serveur DNS peut provoquer une panne, ce qui rend les utilisateurs incapables de naviguer sur le Web (note: les utilisateurs seront susceptibles de continuer à atteindre les sites Web qu’ils ont visités récemment, en supposant que l’enregistrement DNS soit enregistré dans un cache local).
C’est ce qui est arrivé aux services DNS de Dyn, comme décrit en début d’article. L’attaque DDoS a surchargé les infrastructures DNS, ce qui a empêché des millions de personnes d’accéder aux principaux sites Web dont les noms de domaine étaient hébergés dessus.
Comment se défendre contre ces attaques ? Tout dépend de la configuration de vos DNS.
Par exemple, hébergez-vous un serveur DNS? Dans ce cas, il existe des mesures que vous pouvez prendre pour le protéger, en mettant à jour les derniers patchs et en autorisant uniquement les ordinateurs locaux à y accéder.
Peut-être essayez-vous d’atteindre le serveur DNS attaqué ? Dans ce cas, vous aurez probablement du mal à vous connecter. C’est pourquoi il est judicieux de configurer vos systèmes pour compter sur plus d’un serveur DNS. De cette façon, si le serveur principal venait à ne plus répondre, un serveur de repli sera lui disponible.
Prévoir et atténuer les attaques
Les attaques du serveur DNS constituent un risque majeur pour la sécurité du réseau et doivent être prises au sérieux. Les entreprises, hébergeurs et fournisseurs d’accès doivent mettre en place des mesures de sauvegarde afin de prévenir et de réduire les effets d’une telle attaque lorsqu’ils en sont victimes.
À la suite de ces attaques, l’ICANN a souligné plus fortement que jamais la nécessité d’utiliser le protocole DNSSEC pour signer chaque requête DNS avec une signature certifiée, en garantissant ainsi l’authenticité. L’inconvénient de cette technologie est le fait qu’il doit être mis en œuvre à tous les stades du protocole DNS pour fonctionner correctement – ce qui arrive lentement mais sûrement.
Optez pour des infrastructures hébergées et maintenues par des spécialistes du DNS, et assurez-vous que le réseau soit anycasté (points de présences multiples et répartis sur l’ensemble de la planète, ou au moins sur vos zones d’influence) et bénéficie de filtrage anti-DDoS, et vous propose des solutions de sécurité supplémentaires telles que DNSSEC mais aussi failover pour intégrer le DNS dans vos PCA et PRA.
Nameshield dispose de sa propre infrastructure DNS Premium pour répondre aux besoins de ses clients. Cette infrastructure répond notamment (voire dépasse) à tous les pré-requis ANSSI. La solution DNS Premium est intégrée dans le scope de notre certification ISO 27001.
N’hésitez pas à nous contacter pour toutes questions relatives aux cyberattaques.