0Pricing
Cryptology Academy · Leçon

DNSSEC : authentifier les réponses DNS

Découvrez comment DNSSEC utilise les signatures numériques pour protéger DNS contre l’usurpation et l’empoisonnement du cache.

DNSSEC : authentifier les réponses DNS est une leçon Cryptology Academy gratuite sur CoddyKit. Ceci est la leçon 4 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Cryptology Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Cryptology Academy comprend 4 leçons au total.

Empoisonnement du cache DNS : l'attaque de Kaminsky

En 2008, le chercheur Dan Kaminsky a divulgué une attaque critique contre les résolveurs DNS. L'attaque exploitait le petit champ ID de transaction de 16 bits dans les réponses DNS. En inondant un résolveur de réponses falsifiées contenant des ID de transaction aléatoires, un attaquant pouvait statistiquement réussir à faire correspondre l'ID de transaction légitime avant l'arrivée de la réponse réelle. Un cache empoisonné redirige tous les utilisateurs de ce résolveur vers des serveurs contrôlés par l'attaquant pendant des semaines, jusqu'à l'expiration du cache.

Ce que DNSSEC ajoute à DNS

DNSSEC (extensions de sécurité de DNS) ajoute une authentification cryptographique aux réponses DNS. Chaque ensemble d'enregistrements DNS d'une zone signée avec DNSSEC est accompagné d'une signature numérique. Les résolveurs effectuant la validation vérifient ces signatures avant d'accepter les enregistrements. Une réponse falsifiée ou modifiée aura une signature invalide et sera rejetée. DNSSEC protège contre l'empoisonnement du cache et la falsification des réponses, mais ne chiffre pas les requêtes DNS.

Clé de signature de zone et clé de signature de clé

DNSSEC utilise une hiérarchie à deux clés par zone. La clé de signature de zone (ZSK) sert à signer au quotidien les ensembles d'enregistrements DNS individuels. La clé de signature de clé (KSK) signe uniquement l'ensemble d'enregistrements DNSKEY, qui contient les clés publiques de la ZSK et de la KSK. La ZSK peut être renouvelée fréquemment (chaque mois), tandis que la KSK change moins souvent (chaque année), car le hachage de la KSK doit être enregistré dans la zone parente et que son renouvellement est complexe sur le plan opérationnel.

RRSIG : signatures d'enregistrements de ressources

Chaque ensemble d'enregistrements DNS signé possède un enregistrement RRSIG correspondant qui contient la signature cryptographique de cet ensemble. Lorsqu'un résolveur demande un enregistrement DNS, la réponse comprend à la fois l'enregistrement et son RRSIG. Le résolveur vérifie le RRSIG à l'aide de la clé publique de la zone. La signature couvre le contenu de l'ensemble d'enregistrements, son type, sa classe et sa date d'expiration, empêchant à la fois la modification et la relecture d'anciennes signatures valides.

Enregistrements DS : liaison des zones parente et enfant

La chaîne de confiance de DNSSEC est construite au moyen des enregistrements DS, c'est-à-dire des enregistrements de signataire de délégation. Lorsqu'une zone délègue à une zone enfant, la zone parente publie un enregistrement DS contenant le hachage de la KSK de la zone enfant. Un résolveur qui fait confiance à la zone parente peut vérifier que le hachage de la KSK de l'enfant correspond à l'enregistrement DS, établissant ainsi la confiance dans les signatures de la zone enfant. Cette chaîne s'étend de la zone racine DNS, à travers les domaines de premier niveau, jusqu'aux zones de domaines individuelles.

Enregistrement DNSKEY : publication de la clé publique de la zone

Chaque zone signée avec DNSSEC publie ses clés publiques de signature dans des enregistrements DNSKEY. Il existe généralement deux enregistrements DNSKEY : l'un pour la ZSK et l'autre pour la KSK. Le hachage de la clé publique de la KSK est enregistré sous forme d'enregistrement DS dans la zone parente, ce qui ancre la confiance de la zone dans sa parente. Le hachage de la KSK de la zone racine est codé en dur dans les résolveurs qui effectuent la validation comme ancre de confiance ultime, appelée ancre de confiance de la zone racine.

La chaîne de confiance de la racine à la feuille

La validation DNSSEC commence par la zone racine, dont l'ancre de confiance de la KSK est codée en dur dans les résolveurs. L'enregistrement DNSKEY de la zone racine sert à vérifier son RRSIG, qui authentifie les enregistrements DS des domaines de premier niveau tels que .com. L'enregistrement DNSKEY de la zone .com vérifie son RRSIG sur les enregistrements DS des domaines individuels. Cette chaîne de vérifications cryptographiques s'étend de la racine au domaine demandé, garantissant l'authentification de chaque maillon.

Validation DNSSEC dans les résolveurs

Lorsqu'un résolveur qui valide DNSSEC reçoit une réponse, il effectue une vérification complète de la chaîne de confiance. Il récupère les enregistrements DNSKEY, vérifie les signatures RRSIG, remonte les enregistrements DS jusqu'à l'ancre racine et contrôle les dates d'expiration des signatures. En cas d'échec de la validation, le résolveur renvoie une erreur SERVFAIL plutôt que les enregistrements potentiellement falsifiés. La plupart des grands résolveurs publics, notamment 1.1.1.1 de Cloudflare et 8.8.8.8 de Google, effectuent la validation DNSSEC.

Défis du déploiement de DNSSEC

Le déploiement de DNSSEC a été lent malgré ses avantages en matière de sécurité. La rotation des clés exige une coordination entre les opérateurs de zones et les registres parents. Une erreur lors de la rotation de la KSK peut rendre toute la zone inaccessible. La rotation de la KSK racine de l'ICANN en 2019 a nécessité des années de préparation. Les signatures augmentent considérablement la taille des zones. Les opérateurs doivent mettre en œuvre une rotation automatisée des clés et une surveillance. Ces difficultés opérationnelles ont conduit de nombreux petits opérateurs de domaines à renoncer à DNSSEC.

DNSSEC ne chiffre pas le trafic DNS

Une idée reçue consiste à croire que DNSSEC assure la confidentialité des requêtes DNS. Ce n'est pas le cas. DNSSEC authentifie uniquement les réponses : les requêtes et les réponses circulent toujours sous forme de paquets UDP en clair sur le port 53. Toute personne surveillant le réseau peut donc voir chaque nom de domaine demandé. DNS sur TLS (DoT) et DNS sur HTTPS (DoH) assurent la confidentialité des requêtes en chiffrant le trafic DNS. DNSSEC et DoH/DoT sont complémentaires : l'un assure l'authenticité, l'autre la confidentialité.

DNSSEC dans le monde réel

En 2024, environ 90 % de la zone racine DNS et des principaux domaines de premier niveau sont signés avec DNSSEC. Toutefois, seuls 20 à 30 % environ des noms de domaine individuels sont signés. L'adoption de la validation DNSSEC par les navigateurs et les applications est inégale. L'avantage de sécurité de DNSSEC est maximal lorsqu'il est associé à DANE (authentification des entités nommées fondée sur DNS), qui utilise DNSSEC pour publier les empreintes de certificats TLS et permet aux clients de vérifier les certificats sans dépendre uniquement des autorités de certification.

Chaîne de confiance DNSSEC

Comment un résolveur qui valide DNSSEC établit-il la confiance dans les enregistrements DNS d'un domaine en partant de zéro ?

DNSSEC : points essentiels

DNSSEC ajoute des signatures cryptographiques aux réponses DNS afin d'empêcher l'empoisonnement du cache et la falsification des réponses. Les ZSK signent les ensembles d'enregistrements ; les KSK signent les enregistrements DNSKEY ; les enregistrements DS établissent une chaîne de confiance entre les zones parente et enfant. La validation commence à partir de l'ancre de confiance de la zone racine, codée en dur. DNSSEC ne chiffre pas le trafic DNS ; DoH et DoT assurent la confidentialité, tandis que DNSSEC assure l'authenticité. La complexité opérationnelle, notamment la rotation des clés, a ralenti l'adoption généralisée.

Questions Fréquemment Posées

La leçon « DNSSEC : authentifier les réponses DNS » est-elle gratuite ?

Oui — le texte complet de « DNSSEC : authentifier les réponses DNS » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Cryptology Academy, passe à CoddyKit PRO. Le cours Cryptology Academy comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « DNSSEC : authentifier les réponses DNS » ?

Découvrez comment DNSSEC utilise les signatures numériques pour protéger DNS contre l’usurpation et l’empoisonnement du cache. Tu pratiques Cryptology Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Cryptology Academy ?

Aucune expérience préalable n'est requise. Cryptology Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 4 sur 4.

Combien de temps prend la leçon « DNSSEC : authentifier les réponses DNS » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Cryptology Academy ?

Oui. Chaque leçon Cryptology Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Qu’est-ce qui fait un protocole sécurisé
  2. SSH : sécuriser l’accès distant
  3. SFTP et SCP : transfert sécurisé de fichiers
  4. DNSSEC : authentifier les réponses DNS
← Retour à Cryptology Academy