DNSSEC (DNS Security Extensions)

Définition

DNSSEC (DNS Security Extensions) est un ensemble de normes RFC qui ajoute une authentification cryptographique aux réponses DNS. Il empêche les attaquants de falsifier ou de modifier les données DNS en signant les enregistrements DNS avec des signatures numériques.

DNSSEC ne chiffre pas les requêtes DNS (c’est le rôle de DoH/DoT). Il garantit que les données DNS que vous recevez sont authentiques et n’ont pas été altérées.

Comment fonctionne DNSSEC

Root Zone (.com)          TLD Zone (.com)          Domain Zone (example.com)
     │                          │                          │
     │  signe avec clé privée   │                          │
     │◀── DNSKEY + RRSIG ─────│                          │
     │                          │  signe avec clé privée   │
     │◀── DNSKEY + RRSIG ───────────────────────────────│
     │                          │                          │
     ▼                          ▼                          ▼
  Chaîne de confiance :  Root → .com → example.com
  (chaîne de confiance via les enregistrements DS)

Composants DNSSEC

|| Enregistrement | Objectif | ||——–|———| || DNSKEY | Clé publique pour la zone | || RRSIG | Signature cryptographique des enregistrements DNS | || DS (Delegation Signer) | Hash de la DNSKEY de la zone enfant, placé dans la zone parente | || NSEC | Prouve qu’un enregistrement n’existe PAS (pour la négation d’existence) | || NSEC3 | Version hashée de NSEC (prévient l’énumération de zone) | || CDNSKEY | DNSKEY de l’enfant publiée par le parent | || CDS | DS de l’enfant publiée par le parent |

Chaîne de confiance DNSSEC

Zone racine (ancre de confiance)
  └── Enregistrement DS → zone .com
        └── Enregistrement DS → zone example.com
              └── DNSKEY + RRSIG → enregistrements DNS pour example.com

Le résolveur valide la chaîne depuis la racine (ancre de confiance) jusqu’au domaine interrogé. Si un maillon est brisé ou que les signatures ne correspondent pas, la réponse est marquée INSECURE ou BOGUS.

DNSSEC vs DoH vs DoT

|| Fonctionnalité | DNSSEC | DoH | DoT | ||———|——–|—–|—–| || Objectif | Authentifier les données DNS | Chiffrer les requêtes DNS | Chiffrer les requêtes DNS | || Confidentialité | Non (requêtes visibles) | Oui | Oui | || Intégrité | Oui (données non modifiées) | Non | Non | || Standard | RFC 4033-4035 | RFC 8484 | RFC 7858 | || Cas d’usage | Empêcher l’empoisonnement de cache | Empêcher l’écoute DNS | Empêcher l’écoute DNS |

Limitations de DNSSEC

  • Pas de confidentialité : Les requêtes DNS restent visibles (pas de chiffrement)
  • Complexité : La gestion des clés, le renouvellement et la signature sont complexes
  • Zone walking : NSEC révèle la structure de la zone (NSEC3 atténue ce problème)
  • Déploiement non universel : De nombreux domaines ne sont pas signés DNSSEC
  • Protection contre l’empoisonnement de cache : Protège uniquement contre les réponses falsifiées, pas contre toutes les attaques
  • Pas de protection DDoS : DNSSEC augmente la taille des réponses (risque d’amplification)

Gestion des clés DNSSEC

|| Type de clé | Objectif | Taille de clé | ||———-|———|———-| || ZSK (Zone Signing Key) | Signe les enregistrements DNS | 2048-bit RSA ou 256-bit ECDSA | || KSK (Key Signing Key) | Signe la ZSK, ancre la chaîne de confiance | 4096-bit RSA ou 384-bit ECDSA | || Renouvellement KSK | Remplacer périodiquement la KSK | Automatisé avec séparation KSK-ZSK |

DNSSEC dans l’infrastructure

|| Composant | Rôle DNSSEC | ||———–|————-| || BIND | Serveur DNS avec support DNSSEC | || Unbound | Résolveur récursif avec validation DNSSEC | || PowerDNS | Serveur DNS avec DNSSEC | || Cloudflare | Gestion DNSSEC pour les domaines | || Amazon Route 53 | DNSSEC pour les zones hébergées | || NS1 | DNSSEC pour le DNS d’entreprise |

Exemples de commandes DNSSEC

# Vérifier DNSSEC pour un domaine
dig +dnssec example.com ANY

# Vérifier la chaîne DNSSEC
dig +validate example.com ANY

# Vérifier l'enregistrement DS chez le parent
dig DS example.com +short

# Vérifier les enregistrements RRSIG
dig RRSIG example.com +short

Termes associés

  • Dns — DoH chiffre les requêtes DNS ; DNSSEC authentifie les réponses
  • DoT — DoT chiffre les requêtes DNS ; DNSSEC authentifie les réponses
  • Pki — DNSSEC utilise les enregistrements DNSKEY (analogues aux certificats)
  • Firewall — DNSSEC augmente la taille des réponses ; le firewall doit autoriser les réponses plus grandes

Références