Comment les pirates usurpent les requêtes DNS avec l’empoisonnement du cache DNS

L’usurpation de serveur de nom de domaine (DNS) est une cyberattaque qui fait croire à votre ordinateur qu’il se rend sur le bon site Web, mais ce n’est pas le cas. Les attaquants utilisent l’empoisonnement du cache DNS pour détourner le trafic Internet et voler les identifiants des utilisateurs ou leurs données personnelles.

L’empoisonnement du cache DNS et l’usurpation DNS sont des synonymes et sont souvent utilisés de manière interchangeable. Mais, pour être précis, vous pouvez les considérer comme le Comment et le Quoi de la même cyberattaque. Le pirate veut inciter les utilisateurs à saisir leurs données privées sur des sites Web non sécurisés. Comment va-t-il s’y prendre ? En empoisonnant le cache DNS. Il s’agit d’usurper ou de remplacer les données DNS d’un site Web particulier afin qu’il soit redirigé vers le serveur du pirate et non vers le serveur Web légitime. À partir de là, le pirate est prêt à effectuer une attaque de phishing, à voler des données ou même à injecter des logiciels malveillants dans le système de la victime.

Get the Free Pen Testing Active Directory Environments EBook

« Cela m’a vraiment ouvert les yeux sur la sécurité AD d’une manière que le travail défensif n’a jamais fait. »

Varonis peut détecter les attaques par empoisonnement du cache DNS en surveillant le DNS et en détectant un comportement anormal dans l’activité de votre utilisateur.

  • Qu’est-ce que le DNS Spoofing et le Cache Poisoning ?
  • Comment fonctionne une attaque par empoisonnement du cache DNS ?
  • Comment détecter l’empoisonnement du cache DNS
  • Comment se protéger contre l’empoisonnement du cache DNS
  • Foire aux questions sur l’usurpation d’identité DNS

Qu’est-ce que l’usurpation d’identité DNS et l’empoisonnement du cache ?

Avant de parler de l’attaque, nous devons rafraîchir nos connaissances sur ce qu’est le DNS et la mise en cache DNS. Le DNS est le catalogue mondial des adresses IP et des noms de domaine. Il s’agit en quelque sorte de l’annuaire téléphonique de l’Internet. Il traduit les URL conviviales pour l’utilisateur final comme Varonis.com en adresse IP comme 192.168.1.169 qui sont utilisées par les ordinateurs pour la mise en réseau.

La mise en cache DNS est le système qui stocke ces adresses dans les serveurs DNS du monde entier. Pour que vos requêtes DNS restent rapides, les développeurs originaux ont créé un système DNS distribué. Chaque serveur stocke une liste d’enregistrements DNS qu’il connaît – c’est ce qu’on appelle un cache. Si votre serveur DNS le plus proche ne connaît pas l’adresse IP dont vous avez besoin, il interroge d’autres serveurs DNS en amont jusqu’à ce qu’il trouve l’adresse IP du site web que vous essayez d’atteindre. Votre serveur DNS enregistre alors cette nouvelle entrée dans votre cache pour des temps de réponse plus rapides.

Exemples et effets de l’empoisonnement du cache DNS

Le DNS n’a pas du tout été conçu pour gérer l’internet moderne. Il s’est amélioré au fil des ans, mais un serveur DNS mal configuré qui a tiré des entrées DNS d’un serveur en Chine – et tout d’un coup, personne ne peut accéder à Facebook. Cet incident montre à quel point nous sommes dépendants des DNS. Une personne configure mal un serveur, et soudain des centaines de millions de personnes en ressentent les effets.

WikiLeaks a également été visé par des attaquants qui ont utilisé une attaque par empoisonnement du cache DNS pour détourner le trafic vers leur propre version de WikiLeaks. Il s’agissait d’une attaque intentionnelle conçue pour éloigner le trafic de WikiLeaks, avec un certain succès.

Les attaques par empoisonnement du cache DNS sont sournoises et difficiles à attraper pour les gens moyens. Le DNS est actuellement un système de confiance en premier lieu, ce qui explique pourquoi il est facile d’en tirer parti. Les humains font une confiance aveugle au DNS et ne vérifient jamais vraiment si l’adresse affichée dans leur navigateur est celle qu’ils attendaient. Les attaquants profitent de cette complaisance et de cette inattention pour voler des informations d’identification ou plus.

Comment fonctionne une attaque par empoisonnement du cache DNS ?

L’empoisonnement du cache DNS, c’est lorsque votre serveur DNS le plus proche a une entrée qui vous envoie à la mauvaise adresse – généralement une adresse contrôlée par un attaquant. Voici quelques techniques différentes que les attaquants utilisent pour empoisonner le cache DNS.

Détournement du réseau local avec ARP Spoofing

Le réseau local peut être une cible étonnamment vulnérable. De nombreux administrateurs penseraient qu’ils ont verrouillé cela, mais le diable peut être dans les détails. Un problème courant est celui des employés travaillant à domicile. Leur Wi-Fi est-il sécurisé ? Les pirates peuvent craquer un mot de passe Wi-Fi faible en quelques heures seulement. Un autre problème est l’exposition de ports Ethernet dans les couloirs et les halls d’entrée. Imaginez simplement quelqu’un qui attend dans le hall d’entrée et qui se branche sur le câble ethernet destiné à l’écran du hall.

Regardons comment un pirate pourrait potentiellement utiliser l’accès au réseau local dans l’une de ces situations.

D’abord, le pirate créerait une page d’hameçonnage qu’il pourrait utiliser pour recueillir les identifiants des utilisateurs et d’autres données précieuses. Ils pourraient ensuite héberger ce site localement sur le réseau ou à distance sur un serveur avec une seule ligne de code python.

À partir de là, le pirate pourrait alors commencer à surveiller le réseau avec des outils comme Betterrcap. À ce stade, ils cartographient et explorent le réseau cible, mais le trafic passe toujours par le routeur.

Puis, le pirate utiliserait l’usurpation ARP pour restructurer le réseau en interne. ARP, ou protocole de résolution d’adresse, est utilisé par les appareils d’un réseau pour associer l’adresse MAC d’un appareil à une adresse IP sur le réseau. Le pirate enverra des messages ARP indiquant à tous les appareils du réseau que l’ordinateur du pirate est le routeur. Cela permet au pirate d’intercepter tout le trafic réseau destiné au routeur.

Une fois que tout le trafic est redirigé par l’ordinateur du pirate, ce dernier peut exécuter le module d’usurpation de DNS de Bettercap. Celui-ci va rechercher toutes les requêtes vers un domaine ciblé, et renvoyer une fausse réponse à la victime. La fausse requête contient l’adresse IP de l’ordinateur du pirate, redirigeant toute requête vers le site web cible vers la page de phishing hébergée par le pirate.

Maintenant, le pirate peut voir le trafic destiné aux autres appareils du réseau et rediriger les requêtes vers n’importe quel site web. Le pirate peut voir tout ce que la victime fait sur cette page, y compris collecter des informations de connexion ou servir des téléchargements malveillants.

Si un pirate ne peut pas accéder à une connexion réseau locale, il aura recours à l’une des attaques suivantes.

Falsification de réponse à l’aide de l’attaque de l’anniversaire

Le DNS n’authentifie pas les réponses aux requêtes récursives, la première réponse est donc stockée dans le cache. Les attaquants utilisent le « paradoxe de l’anniversaire » pour essayer d’anticiper et d’envoyer une fausse réponse au demandeur. Cette attaque d’anniversaire utilise les mathématiques et la théorie des probabilités pour faire une supposition. Dans ce cas, l’attaquant essaie de deviner l’ID de transaction de votre demande DNS, de sorte que la réponse falsifiée avec l’entrée DNS falsifiée vous parvienne avant la vraie réponse.

Une attaque d’anniversaire n’est pas un succès garanti, mais finalement, un attaquant va se faufiler dans une réponse falsifiée dans un cache. Une fois l’attaque réussie, l’attaquant verra le trafic de l’entrée DNS falsifiée jusqu’à ce que le temps de vie (TTL) expire.

L’exploit de Kaminsky

L’exploit de Kaminsky est une variation de l’attaque d’anniversaire présentée à BlackHat 2008.

D’abord, l’attaquant envoie à un résolveur cible une requête DNS pour un domaine inexistant, comme « fake.varonis.com ». Le résolveur transmet ensuite la requête au serveur de noms faisant autorité pour obtenir l’adresse IP du faux sous-domaine. À ce stade, l’attaquant inonde le résolveur d’un grand nombre de fausses réponses, en espérant que l’une de ces contrefaçons corresponde à l’ID de transaction de la requête initiale.

S’il y parvient, l’attaquant a empoisonné le cache DNS du résolveur ciblé avec une fausse adresse IP pour – dans cet exemple – varonis.com. Le résolveur continuera à dire à quiconque lui demande que l’adresse IP pour varonis.com est la fausse requête jusqu’à la TTL.

Comment détecter l’empoisonnement du cache DNS

Alors, comment détecter une attaque par empoisonnement du cache DNS ? Surveillez vos serveurs DNS à la recherche d’indicateurs d’attaques possibles. Les humains n’ont pas la puissance de calcul nécessaire pour suivre la quantité de requêtes DNS que vous devrez surveiller. Appliquez l’analyse de la sécurité des données à votre surveillance DNS pour discerner le comportement normal du DNS des attaques.

  • Une augmentation soudaine de l’activité DNS provenant d’une seule source au sujet d’un seul domaine indique une attaque potentielle par empoisonnement du cache.
  • Une augmentation de l’activité DNS provenant d’une source unique qui interroge votre serveur DNS pour plusieurs noms de domaine sans récursion indique une tentative de trouver une entrée à utiliser pour l’empoisonnement.

En plus de la surveillance du DNS, surveillez les événements Active Directory et le comportement du système de fichiers pour détecter toute activité anormale. Et mieux encore, utilisez l’analytique pour corréler l’activité entre les trois vecteurs afin d’ajouter un contexte précieux à votre stratégie de cybersécurité.

Comment se protéger contre l’empoisonnement du cache DNS

A part la surveillance et l’analytique, vous pouvez apporter des changements de configuration sur votre serveur DNS.

  • Limiter les requêtes récursives pour se protéger contre les attaques potentielles d’empoisonnement ciblé.
  • Stocker uniquement les données liées au domaine demandé.
  • Restreindre les réponses à n’être que sur le domaine demandé.
  • Forcer les clients à utiliser HTTPS.

Vérifiez que vous utilisez les dernières versions de BIND et du logiciel DNS, afin de disposer des derniers correctifs de sécurité.

Si cela est possible, par exemple avec des employés distants, demandez à tous les clients distants de se connecter via un VPN pour protéger le trafic et les requêtes DNS de l’espionnage local. En outre, veillez à encourager un mot de passe Wi-Fi domestique fort pour réduire davantage les risques.

Et enfin, utilisez des requêtes DNS cryptées. La sécurité du système de nom de domaine (DNSSEC) est un protocole DNS qui utilise des demandes DNS signées pour empêcher la falsification. Lors de l’utilisation de DNSSEC, le résolveur DNS doit vérifier la signature auprès du serveur DNS faisant autorité, ce qui ralentit l’ensemble du processus. Cela a conduit à ce que le DNSSEC ne soit pas encore largement adopté.

DNS over HTTPS (DoH) et DNS over TLS (DoT) sont des spécifications concurrentes pour la prochaine version du DNS afin de garder les demandes DNS sécurisées sans sacrifier la vitesse comme le DNSSEC. Cependant, ce ne sont pas des solutions parfaites car elles peuvent ralentir ou carrément empêcher la surveillance et l’analyse des DNS effectuées localement. Il est également important de noter que le DoH et le DoT peuvent contourner tout contrôle parental ou autre blocage au niveau du DNS effectué sur le réseau. Cela dit, Cloudflare, Quad9 et Google ont tous des serveurs DNS publics qui peuvent prendre en charge DoT. De nombreux clients plus récents sont capables de prendre en charge ces nouvelles normes mais sont désactivés par défaut. Vous pouvez trouver des informations plus détaillées sur le blog de Varonis consacré à la sécurité DNS.

L’usurpation de DNS remplace l’adresse IP d’un site Web légitime par l’IP de l’ordinateur d’un pirate. Cela peut être particulièrement délicat car il est difficile de le repérer, du point de vue de l’utilisateur final, ils ont mis une adresse d’apparence tout à fait normale dans la barre URL de leur navigateur. Cependant, il n’est pas impossible de l’arrêter. Le risque peut être atténué par un logiciel de surveillance comme Varonis et en employant la norme de cryptage DNS sur TLS.

Foire aux questions sur l’usurpation de DNS

Pour en savoir plus sur les questions courantes sur l’usurpation de DNS, vous trouverez les réponses ci-dessous.

Q : L’empoisonnement du cache DNS et l’usurpation de DNS sont-ils la même chose ?

A : Oui, l’usurpation et l’empoisonnement du cache DNS font référence à la même cyberattaque.

Q : Comment fonctionne l’empoisonnement du cache DNS ?

A : L’empoisonnement du cache DNS fonctionne en trompant votre serveur DNS pour qu’il enregistre une fausse entrée DNS. Le trafic vers l’entrée DNS falsifiée va vers un serveur choisi par les attaquants pour voler des données.

Q : Quelles fonctions de sécurité peuvent être utilisées pour se protéger contre l’empoisonnement du cache DNS ?

A : Les propriétaires de sites Web peuvent mettre en œuvre la surveillance et l’analyse de l’usurpation DNS. Cela inclut la mise à niveau de leurs serveurs DNS pour utiliser DNSSEC ou un autre système de cryptage tel que DNS over HTTPS ou DNS over TLS. L’utilisation d’un cryptage complet de bout en bout, tel que HTTPS, dans la mesure du possible, peut également empêcher l’usurpation. Les Cloud Access Security Brokers (CASB) sont extrêmement utiles pour cela.

Les utilisateurs finaux peuvent réinitialiser un cache DNS potentiellement usurpé en vidant périodiquement le cache DNS de leur navigateur ou après avoir rejoint un réseau non sécurisé ou partagé. L’utilisation d’un VPN peut protéger contre l’usurpation de DNS sur un réseau local. Éviter les liens suspects aidera à empêcher les utilisateurs finaux d’exposer le cache de leur navigateur à un risque.

Q : Comment vérifier une attaque par empoisonnement du cache DNS ?

A : Une fois que le cache DNS est empoisonné, il peut être difficile à détecter. Il pourrait être une meilleure tactique de surveiller vos données et de protéger vos systèmes contre les logiciels malveillants pour se protéger contre la compromission causée par un cache DNS empoisonné.

Voyez le Live Cyber Attack Lab pour voir comment nous utilisons la surveillance DNS pour détecter les menaces réelles de cybersécurité.

Q : Comment fonctionne la communication DNS?

A : Lorsque l’utilisateur final tape une URL telle que « Varonis.com » dans son navigateur, les étapes suivantes se produisent :

  1. Le navigateur vérifie d’abord son cache local pour voir s’il a déjà stocké les données DNS.
  2. Si le navigateur n’a pas les données alors il demandera le prochain serveur DNS en amont qui sera normalement votre routeur sur leur réseau local.
  3. Si le routeur n’a pas l’entrée DNS nécessaire dans son cache alors il utilisera un fournisseur de DNS en amont comme Google, Cloudflare ou Quad9.
  4. Ce serveur en amont recevra alors la requête DNS et vérifiera son cache.
    • 4.1 En supposant qu’il n’ait pas déjà les données DNS en cache, il lancera un résolveur DNS récursif en interrogeant d’abord les serveurs racine DNS en demandant « Qui gère le .com »
    • 4.2 Ensuite, le résolveur interrogera le serveur de domaine de premier niveau pour le .com en demandant « Qui gère Varonis.com », le TDL répond alors avec un serveur de nom faisant autorité pour l’URL.
    • 4.3 Le résolveur émet alors une requête au serveur de nom faisant autorité en demandant « Quelle est l’IP de Varonis.com ? », le serveur de nom faisant autorité répond alors avec une adresse IP pour le domaine.

5. Les données DNS sont ensuite renvoyées en aval de la chaîne vers l’appareil de l’utilisateur final. Tout au long du trajet, chaque serveur DNS mettra en cache cette réponse pour une utilisation ultérieure.

Q : Comment les attaquants empoisonnent-ils les caches DNS ?

Il n’y a pas une seule façon d’empoisonner un cache DNS, mais certaines des façons les plus courantes sont : Faire en sorte que la victime clique sur des liens malveillants qui utilisent un code intégré pour modifier le cache DNS de son navigateur. Les pirates peuvent également détourner le serveur DNS local en utilisant une attaque de type « man-in-the-middle spoofing ». L’attaque utilise l’usurpation ARP pour rediriger les requêtes DNS vers un serveur DNS contrôlé par eux.

Q : Qu’est-ce que l’empoisonnement du cache DNS ?

A : L’empoisonnement du cache DNS est le fait de remplacer une entrée de la base de données DNS par une adresse IP malveillante qui envoie l’utilisateur final vers un serveur contrôlé par le pirate.

Q : Comment se fait l’usurpation DNS ?

Un pirate réalise une attaque par usurpation de DNS en obtenant l’accès et en modifiant un cache DNS ou en redirigeant les requêtes DNS vers son propre serveur DNS.

Q : Qu’est-ce que l’usurpation de DNS ?

L’usurpation de DNS signifie que l’URL qu’un utilisateur saisit dans son navigateur, comme varonis.com ne va pas réellement à l’adresse IP légitime associée à cette URL, mais est plutôt redirigée vers un serveur malveillant contrôlé par un pirate.

Q : Pourquoi l’usurpation de DNS est-elle un problème?

A : L’usurpation de DNS est un problème parce que le DNS est intrinsèquement fiable et souvent non sécurisé par un quelconque cryptage. Cela signifie qu’un pirate peut usurper une entrée DNS et l’utiliser pour le vol de données, l’infection par des logiciels malveillants, le phishing et l’empêchement des mises à jour.

Q : Quelles sont les menaces posées par une attaque par usurpation de DNS ?

La menace principale posée par l’usurpation de DNS est le vol de données par l’utilisation de pages de Phishing. En outre, il y a une menace d’infection par des logiciels malveillants en hébergeant des téléchargements d’apparence légitime qui sont en fait infectés par des logiciels malveillants. Enfin, si le système dépend d’Internet pour les mises à jour, celles-ci peuvent être empêchées en modifiant les entrées DNS afin qu’elles ne mènent pas à un site Web réel. Cela pourrait également être appliqué à n’importe quel site Web comme une méthode de censure.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.