Qu'est-ce que la sécurité DNS ?

DNS n’a pas été conçu dans un objectif de sécurité et de nombreux types d’attaques ont été créés pour exploiter les vulnérabilités du système DNS.

Objectifs d’apprentissage

Cet article s'articule autour des points suivants :

  • Comprendre ce qu’est le DNSSEC et son fonctionnement
  • Se familiariser avec les attaques DNS les plus courantes
  • Différentier le DNSSEC et les autres solutions de sécurité DNS

Copier le lien de l'article

Qu'est-ce que la sécurité DNS ?

La sécurité DNS consiste à protéger l'infrastructure DNS contre les cyberattaques afin d'en assurer le fonctionnement rapide et fiable. Une stratégie de sécurité DNS efficace intègre un certain nombre de défenses qui se chevauchent, notamment l'établissement de serveurs DNS redondants, l'application de protocoles de sécurité tels que DNSSEC et l'exigence d'une journalisation DNS rigoureuse.

Pourquoi la sécurité DNS est-elle importante ?

Comme de nombreux protocoles Internet, le système DNS n'a pas été conçu dans un souci de sécurité et comporte plusieurs limites de conception. Ces limites, associées aux progrès technologiques, rendent les serveurs DNS vulnérables à un large spectrum d'attaques, notamment l'usurpation d'identité, l'amplification, le déni de service (DoS) ou l'interception d'informations personnelles privées. Et comme le DNS fait partie intégrante de la plupart des requêtes Internet, il peut être une cible de choix pour les attaques.

En outre, les attaques DNS sont fréquemment déployées en conjonction avec d'autres cyberattaques pour détourner les équipes de sécurité de la véritable cible. Une organisation doit être en mesure d'atténuer rapidement les attaques DNS afin de ne pas être trop occupée à gérer des attaques simultanées par d'autres vecteurs.

Quelles sont les attaques courantes impliquant le DNS ?

Les pirates ont découvert de nombreuses façons de cibler et d’exploiter les serveurs DNS. Les plus courantes sont les suivantes :

Usurpation du DNS/empoisonnement du cache : Il s'agit d'une attaque dans laquelle des données DNS falsifiées sont introduites dans le cache d'un résolveur DNS, ce qui a pour conséquence que le résolveur renvoie une adresse IP incorrecte pour un domaine. Plutôt que d’accéder au site web voulu, le trafic peut être dévié vers une machine malveillante ou vers tout autre site souhaité par le pirate ; il s’agit souvent d’une réplique du site d’origine utilisé à des fins malveillantes comme la distribution de logiciels malveillants ou la collecte d’informations de connexion.

DNS tunnelling : Cette attaque utilise d'autres protocoles pour passer par un tunnel DNS les requêtes et les réponses du DNS. Les attaquants peuvent utiliser SSH, TCP ou HTTP pour transmettre des logiciels malveillants ou des informations volées dans des requêtes DNS, sans être détectés par la plupart des pare-feu.

Détournement de DNS : Dans le cas d'un détournement de DNS, l'attaquant redirige les requêtes vers un autre serveur de noms de domaine. Il utilise pour cela un logiciel malveillant ou une modification non autorisée d’un serveur DNS. Bien que le résultat soit similaire à une usurpation de DNS, il s’agit d’une attaque fondamentalement différente, car elle cible l’enregistrement DNS du site web sur le serveur de noms plutôt qu'un cache de résolveur.

Attaque NXDOMAIN : il s'agit d'un type d'attaque DNS Flood où un attaquant inonde un serveur DNS de requêtes, demandant des enregistrements qui n'existent pas, dans le but de provoquer un déni de service pour le trafic légitime. Pour cela, le pirate utilise des outils d’attaque sophistiqués qui peuvent générer automatiquement des sous-domaines uniques pour chaque requête. Les attaques NXDOMAIN peuvent également cibler un résolveur récursif dans le but de remplir le cache du résolveur de requêtes indésirables.

Attaque de domaine fantôme : une attaque de domaine fantôme a un résultat similaire à une attaque NXDOMAIN sur un résolveur DNS. Le pirate définit un ensemble de serveurs de domaines « fantômes » qui répondent très lentement aux requêtes, ou n’y répondent pas du tout. Le résolveur est ensuite assailli d’un flot de requêtes vers ces domaines et il reste bloqué dans l’attente de réponses, ce qui cause un ralentissement des performances et un déni de service.

Attaque de sous-domaine aléatoire : dans ce cas, le pirate envoie des requêtes DNS pour plusieurs sous-domaines aléatoires et inexistants d'un site légitime. L’objectif est de créer un déni de service pour le serveur de noms faisant autorité du domaine, ce qui rend toute recherche du site web impossible depuis le serveur de noms. En parallèle, le FAI qui dessert le pirate peut également être touché, car le cache de son résolveur récursif sera rempli de mauvaises requêtes.

Attaque de verrouillage de domaine : Les mauvais acteurs orchestrent cette forme d'attaque en mettant en place des domaines et des résolveurs spéciaux pour créer des connexions TCP avec d'autres résolveurs légitimes. Lorsque les résolveurs ciblés envoient des requêtes, ces domaines renvoient des flux de paquets aléatoires lents, qui immobilisent les ressources du résolveur.

Attaque CPE basée sur des bots : ces attaques sont menées à l'aide d'appareils CPE (Customer Premise Equipment, c'est-à-dire des équipements fournis par les fournisseurs de services pour être utilisés par leurs clients, tels que les modems, routeurs, boîtes de jonction, etc.) Les pirates compromettent les CPE et ces appareils font alors partie d’un botnet utilisé pour perpétrer des attaques de sous-domaines aléatoires contre un site ou un domaine.

Qu'est-ce que le DNSSEC ?

Le DNSSEC (DNS Security Extensions) est un protocole de sécurité créé pour atténuer ce problème. Le DNSSEC protège des attaques en signant numériquement les données pour contribuer à en assurer la validité. Afin d’assurer la sécurité d’une recherche, la signature doit intervenir à chaque niveau du processus de recherche DNS.

Ce processus de signature est similaire à quelqu'un qui signe un document juridique avec un stylo. Cette personne signe de sa main en utilisant une signature unique que personne d'autre ne peut reproduire. Un expert judiciaire peut parfaitement examiner cette signature et en vérifier l'authenticité. Ces signatures numériques garantissent que les données n'ont pas été falsifiées.

Le DNSSEC met en œuvre une politique de signature numérique hiérarchique sur toutes les couches DNS. Par exemple, dans le cas d'un site « google.com » un serveur DNS racine signerait une clé pour le serveur de noms .COM, et le serveur de noms .COM signerait ensuite une clé pour le site google.com serveur de noms faisant autorité.

Bien qu'une sécurité renforcée soit toujours à privilégier, le DNSSEC est conçu pour être rétrocompatible afin de garantir que les recherches DNS sont résolues correctement, mais sans sécurité ajoutée. La DNSSEC est destinée à fonctionner avec d'autres mesures de sécurité comme le SSL/TLS dans le cadre d'une stratégie globale de sécurité sur Internet.

Le DNSSEC crée un train de confiance parent-enfant qui va jusqu'à la zone racine. Cette chaîne de confiance ne peut être compromise au niveau d'aucune couche du DNS, sinon la requête sera ouverte à une attaque en chemin (on-path).

Pour clore la chaine de confiance, la zone racine elle-même doit être validée (prouvée exempte de falsification ou de fraude), ce qui est réalisé par intervention humaine. Étonnement, lors d’un événement appelé cérémonie de signature du certificat racine, des individus sélectionnés dans le monde entier se réunissent pour signer la racine DNSKEY RRset de façon publique et auditée.

Voici une explication plus détaillée du fonctionnement du DNSSEC > > >

Quels sont les autres moyens de se protéger contre les attaques basées sur le DNS ?

En plus de DNSSEC, l'opérateur d'une zone DNS peut prendre d'autres mesures pour sécuriser ses serveurs. Le surdimensionnement de l'infrastructure est une stratégie simple pour surmonter les attaques DDoS. En termes simples, si vos serveurs de noms peuvent gérer plusieurs fois plus de trafic que prévu, il est plus difficile pour une attaque basée sur le volume de submerger votre serveur. Les organisations peuvent y parvenir en augmentant la capacité totale de trafic de leur serveur DNS, en établissant plusieurs serveurs DNS redondants, et en utilisant load Balancing pour acheminer les requêtes DNS vers des serveurs sains lorsque l'un d'entre eux commence à avoir de mauvaises performances.

Une autre stratégie encore consiste à utiliser un pare-feu DNS.

Qu'est-ce qu'un pare-feu DNS ?

Un pare-feu DNS est un outil qui peut fournir plusieurs services de sécurité et de performance aux serveurs DNS. Un pare-feu DNS est érigé entre le résolveur récursif de l’utilisateur et le serveur de noms faisant autorité du site web ou du service qu'il essaie d'atteindre. Le pare-feu peut fournir des services de rate limiting pour bloquer les pirates qui tentent de submerger le serveur. Si le serveur subit un temps d'arrêt suite à une attaque ou pour toute autre raison, le pare-feu DNS peut maintenir le site ou le service de l’opérateur en utilisant les réponses DNS présentes dans le cache.

En plus de ses fonctionnalités de sécurité, un pare-feu DNS peut également fournir à l’opérateur des solutions de performance, telles que des recherches DNS plus rapides et des coûts de bande passante réduits pour l'opérateur DNS. En savoir plus sur le pare-feu DNS de Cloudflare.

DNS comme outil de sécurité

Les résolveurs DNS peuvent également être configurés pour fournir des solutions de sécurité à leurs utilisateurs finaux (les internautes). Certains résolveurs DNS offrent des fonctionnalités telles que le filtrage de contenu, ce qui peut bloquer des sites connus pour distribuer des logiciels malveillants et du spam, et la protection contre les botnets, ce qui bloque les communications avec les botnets connus. De nombreux résolveurs DNS sécurisés sont gratuits et un utilisateur peut activer l’un de ces services DNS récursifs en modifiant un simple paramètre de son routeur local. Le DNS Cloudflare met l'accent sur la sécurité.

Les requêtes DNS sont-elles privées ?

Une autre question importante en matière de sécurité DNS est la confidentialité des utilisateurs. Les requêtes DNS ne sont pas cryptées. Même si les utilisateurs utilisent un résolveur DNS comme 1.1.1.1 qui ne suit pas leurs activités, les requêtes DNS voyagent sur Internet en texte clair. Cela signifie que toute personne qui intercepte la requête peut voir quels sites web l'utilisateur visite.

Cette absence de confidentialité a un impact énorme sur la sécurité et, dans certains cas, sur les droits de l'homme. Si les requêtes DNS ne sont pas privées, il devient alors plus facile pour les gouvernements de censurer Internet et pour les acteurs malveillants de traquer le comportement des utilisateurs en ligne.

DNS over TLS et DNS over HTTPS sont deux normes permettant de crypter les requêtes DNS afin d'empêcher les parties externes de pouvoir les lire.

Cloudflare offre-t-il une sécurité DNS ?

Les services DNS de Cloudflare sont dotés d'une grande variété de fonctions de sécurité intégrées, notamment DNSSEC, atténuation des attaques DDoS, fonctionnalité multi-DNS et load Balancing.

Service commercial