Le système de noms de domaine a été conçu pour être rapide. Il n'a pas été conçu pour être sûr. Quand le DNS a été imaginé dans les années 1980, personne n'avait prévu un monde où des attaquants essaieraient de falsifier des réponses DNS pour rediriger vos visiteurs vers de faux sites. DNSSEC, abréviation de DNS Security Extensions, a été créé pour combler cette faille. Il ajoute des signatures numériques aux enregistrements DNS pour que chaque réponse d'un serveur DNS puisse être vérifiée comme authentique avant que le navigateur lui fasse confiance.
Qu'est-ce que DNSSEC ?
DNSSEC est un ensemble d'extensions de sécurité ajoutées au protocole DNS. Il fonctionne en attachant une signature cryptographique à chaque enregistrement DNS de votre domaine. Quand un résolveur recherche votre domaine, il vérifie que la signature correspond avant d'accepter la réponse. Si la signature est absente ou ne correspond pas, la réponse est rejetée. Cela empêche les attaquants d'injecter de fausses réponses DNS dans le système.
DNSSEC ne change pas le fonctionnement du DNS. La recherche se déroule de la même façon. Votre domaine se résout toujours en adresse IP à travers une chaîne de serveurs DNS. La différence, c'est que chaque étape de cette chaîne peut maintenant être vérifiée. Le résolveur ne se contente pas de croire la réponse. Il contrôle une signature cryptographique pour confirmer que la réponse vient d'une source autorisée et n'a pas été modifiée en route.
Quel problème DNSSEC résout-il ?
Sans DNSSEC, les réponses DNS sont acceptées telles quelles. Il n'existe aucun moyen intégré de vérifier si la réponse vient du bon serveur ou si elle a été modifiée en transit. Cela ouvre la porte à un type d'attaque précis appelé empoisonnement du cache DNS, aussi connu sous le nom d'usurpation DNS.
Dans une attaque par empoisonnement du cache, un attaquant envoie de fausses réponses DNS à un résolveur avant que la réponse légitime n'arrive. Le résolveur stocke la fausse réponse dans son cache et la sert à tous ceux qui recherchent ce domaine. Chaque visiteur qui tape votre domaine dans son navigateur est envoyé vers un serveur que l'attaquant contrôle au lieu de votre vrai site.
Le faux site peut être identique au vôtre. Les visiteurs peuvent saisir des identifiants, des données de paiement ou des informations personnelles sans se rendre compte qu'ils sont sur un tout autre serveur. L'attaque est invisible pour le visiteur, car l'URL dans son navigateur affiche toujours votre nom de domaine.
DNSSEC l'empêche en rendant les fausses réponses détectables. Si la signature ne correspond pas, le résolveur rejette la réponse et le visiteur n'est pas envoyé vers une fausse destination.
Comment fonctionne DNSSEC ?
DNSSEC utilise un système de clés publiques et privées pour signer les enregistrements DNS. Voici comment le processus fonctionne dans les grandes lignes.
Quand vous activez DNSSEC, votre fournisseur DNS génère une paire de clés cryptographiques pour votre domaine. La clé privée sert à créer une signature numérique pour chaque enregistrement DNS. La clé publique est publiée sous forme d'enregistrement DNS pour que les résolveurs puissent y accéder.
Quand un résolveur interroge votre domaine, il reçoit la réponse DNS avec la signature. Il utilise alors la clé publique pour vérifier que la signature correspond aux données de la réponse. Si tout est en ordre, la réponse est considérée comme fiable. Si la signature est invalide ou absente, le résolveur juge la réponse non fiable et ne la transmet pas au navigateur.
Cette vérification repose sur une chaîne de confiance. La clé publique de votre domaine est référencée par un enregistrement DS (Delegation Signer) dans la zone parente. Par exemple, si votre domaine est yourbrand.com, la zone .com contient un enregistrement DS qui pointe vers la clé publique de votre domaine. La zone .com est elle-même signée et vérifiée par la zone racine. Chaque niveau de la chaîne valide le niveau en dessous, depuis la racine jusqu'à votre domaine précis.
Que se passe-t-il sans DNSSEC ?
Sans DNSSEC, chaque réponse DNS générée par votre domaine n'est pas signée. Les résolveurs acceptent la réponse qui arrive en premier, sans moyen de confirmer qu'elle vient d'une source légitime. Cela signifie qu'un attaquant bien placé peut glisser de fausses réponses dans le système et rediriger vos visiteurs sans déclencher la moindre alarme.
Pour la plupart des petits sites, le risque d'une attaque ciblée d'empoisonnement DNS est faible. Les attaquants visent en général des cibles de grande valeur comme les banques, les fournisseurs de messagerie et les grandes plateformes de e-commerce. Mais le risque n'est pas nul. Les réseaux Wi-Fi publics, les routeurs compromis et les vulnérabilités de certains logiciels de résolveurs peuvent tous créer des occasions d'usurpation DNS à plus petite échelle.
L'impact pratique de l'absence de DNSSEC dépend de votre situation. Si vous traitez des données sensibles, acceptez des paiements ou faites de votre site le principal point de contact avec vos clients, la vérification supplémentaire vaut la peine.
Avez-vous besoin de DNSSEC pour votre domaine ?
La réponse honnête, c'est que cela dépend. DNSSEC apporte une vraie protection, mais il n'est pas obligatoire pour chaque domaine.
Vous devriez activer DNSSEC si votre site traite des paiements, collecte des informations sensibles ou tourne sur un domaine très visible. Les sites gouvernementaux, les services financiers et les marques de santé gagnent tous à avoir DNSSEC actif. Si la sécurité du domaine est une priorité pour votre marque, DNSSEC est une couche de plus qui vaut la peine d'être ajoutée.
Vous n'en avez peut-être pas besoin tout de suite si vous gérez un petit site d'information sans fonction de connexion et que votre registrar ne prend pas encore DNSSEC en charge ou le facture en supplément. Beaucoup de sites fonctionnent sans lui et s'en portent bien. Le SSL chiffre déjà la connexion entre le visiteur et votre serveur, ce qui protège les données en transit. DNSSEC résout un autre problème, à savoir l'intégrité de la recherche DNS elle-même.
Si votre registrar le prend en charge et que la mise en place est simple, il y a très peu d'inconvénients à l'activer. La protection qu'il ajoute est réelle, même si le risque qu'il traite ne s'applique pas de la même façon à tous les domaines.
Comment activer DNSSEC ?
Activer DNSSEC demande d'agir à deux endroits. Le premier est votre fournisseur DNS, où les enregistrements DNS de votre domaine sont hébergés. Le second est votre registrar, où votre domaine est enregistré.
Les étapes générales sont les suivantes.
- Connectez-vous à votre fournisseur DNS et activez DNSSEC pour votre domaine. Cela génère les clés cryptographiques et commence à signer vos enregistrements DNS.
- Copiez l'enregistrement DS que vous donne votre fournisseur DNS. Cet enregistrement contient une référence à la clé publique de votre domaine.
- Connectez-vous à votre registrar et ajoutez l'enregistrement DS dans les paramètres de votre domaine. Cela relie les clés DNSSEC de votre domaine à la zone parente.
- Attendez la propagation. Comme pour toute modification d'enregistrement DNS, le nouvel enregistrement DS peut mettre quelques heures à se propager sur internet.
- Testez votre configuration avec un outil de validation DNSSEC en ligne pour confirmer que tout fonctionne.
Si votre registrar et votre fournisseur DNS sont la même entreprise, le processus est plus simple. Certains fournisseurs gèrent les deux étapes depuis un seul tableau de bord. D'autres vous demandent de copier des enregistrements entre deux comptes distincts.
L'erreur la plus courante pendant la mise en place est de saisir l'enregistrement DS de façon incorrecte. Vérifiez deux fois le key tag, le numéro d'algorithme, le type de digest et la valeur du digest avant d'enregistrer. Un chiffre faux dans l'un de ces champs casse la chaîne de confiance et peut rendre votre domaine injoignable jusqu'à la correction de l'erreur.
Que ne fait pas DNSSEC ?
DNSSEC résout un problème précis, vérifier que les réponses DNS sont authentiques. Il est important de comprendre ce qui sort de son périmètre.
DNSSEC ne chiffre pas vos requêtes DNS. Le contenu de chaque recherche DNS reste visible pour toute personne qui surveille le réseau. Si la confidentialité des requêtes DNS compte pour vous, c'est un problème distinct, résolu par DNS over HTTPS (DoH) ou DNS over TLS (DoT), pas par DNSSEC.
DNSSEC ne chiffre pas le trafic entre le visiteur et votre site. C'est le rôle d'un certificat SSL, qui crée une connexion chiffrée en HTTPS. DNSSEC et SSL protègent des choses différentes à des étapes différentes de la connexion.
DNSSEC n'empêche pas tous les types d'attaques contre votre domaine. Il n'empêche pas quelqu'un de voler vos identifiants chez le registrar et de transférer votre domaine. Il ne protège pas contre les e-mails de phishing qui usurpent votre marque. Et il ne bloque pas les attaques DDoS visant vos serveurs DNS. Pour ces menaces, il vous faut des protections distinctes comme l'authentification à deux facteurs, le verrouillage du domaine et l'atténuation des attaques DDoS.
En quoi DNSSEC diffère-t-il du SSL ?
DNSSEC et SSL sont tous deux des couches de sécurité, mais ils protègent des parties différentes de la connexion entre un visiteur et votre site.
Le SSL (et son successeur TLS) chiffre les données qui circulent entre le navigateur du visiteur et votre serveur web. Une fois la connexion établie, tout ce que le visiteur envoie et reçoit est protégé contre l'espionnage. Le SSL vérifie aussi que le serveur avec lequel le visiteur communique détient un certificat valide pour votre domaine.
DNSSEC protège l'étape qui a lieu avant que le SSL n'intervienne. Quand un visiteur tape votre domaine, le navigateur recherche d'abord l'adresse IP via le DNS. DNSSEC s'assure que cette recherche renvoie la bonne adresse IP. Sans lui, un attaquant pourrait rediriger le visiteur vers un tout autre serveur, qui pourrait même avoir son propre certificat SSL pour un domaine qui ressemble au vôtre.
Les deux couches ont leur utilité. Le SSL protège la conversation. DNSSEC protège la direction que prend le visiteur pour la commencer. Utiliser les deux offre à vos visiteurs la meilleure garantie qu'ils sont sur votre vrai site et que leurs données sont sécurisées.
Comment WEMASY gère DNSSEC
WEMASY gère le DNS de chaque domaine relié à sa plateforme. Quand vous créez votre site sur WEMASY, le DNS de votre domaine est géré par l'infrastructure de WEMASY, qui comprend les certificats SSL, la gestion des serveurs de noms et la configuration des enregistrements DNS. Si votre domaine et votre registrar prennent en charge DNSSEC, vous pouvez l'activer en ajoutant l'enregistrement DS chez votre registrar et en le faisant pointer vers le DNS de WEMASY. Pour savoir ce qui est inclus dans chaque offre, consultez la page tarifs.
Pour conclure le module 6
Ce chapitre clôt le module sur la sécurité des domaines. Au fil des chapitres précédents, vous avez vu l'ensemble du tableau. Vous avez appris ce que signifie la sécurité du domaine, comment le verrouillage, la protection de la vie privée et la vigilance sur le renouvellement gardent votre domaine sous votre contrôle, ainsi que les menaces précises comme le détournement, le squattage et les arnaques au renouvellement qui visent les propriétaires de domaines. DNSSEC ajoute la dernière couche en protégeant la recherche DNS elle-même, l'étape qui relie votre nom de domaine à votre vrai site. Avec toutes ces protections en place, votre domaine est couvert de l'enregistrement à la résolution.
Questions fréquentes sur DNSSEC
DNSSEC peut-il casser mon site s'il est mal configuré ?
Oui. Si l'enregistrement DS chez votre registrar ne correspond pas aux clés chez votre fournisseur DNS, les résolveurs qui valident DNSSEC rejetteront entièrement les réponses DNS de votre domaine. Cela peut rendre votre site injoignable pour les visiteurs dont le résolveur applique la validation DNSSEC. Testez toujours votre configuration avec un outil de validation DNSSEC après l'avoir activé, et gardez vos clés synchronisées si vous changez un jour de fournisseur DNS. Avec le créateur de site web de WEMASY, vous pouvez le configurer directement sur votre site.
DNSSEC ralentit-il mon site ?
L'impact sur la vitesse est minime. DNSSEC ajoute un peu de données aux réponses DNS à cause des signatures, et les résolveurs effectuent une étape de vérification supplémentaire. En pratique, cela n'ajoute que quelques millisecondes à la recherche DNS. Les visiteurs ne remarqueront aucune différence dans le temps de chargement des pages.
Tous les registrars prennent-ils DNSSEC en charge ?
Pas tous. La plupart des grands registrars prennent DNSSEC en charge, mais certains registrars plus petits ou à bas prix ne le proposent pas encore. Avant d'essayer d'activer DNSSEC, consultez la documentation ou la page de support de votre registrar pour confirmer qu'il vous permet d'ajouter des enregistrements DS. Sinon, vous devrez peut-être transférer votre domaine chez un registrar qui le permet.
Que devient DNSSEC si je change de fournisseur DNS ?
Si vous changez de fournisseur DNS, vous devez mettre à jour votre configuration DNSSEC. Le nouveau fournisseur générera de nouvelles clés, et vous devrez remplacer l'enregistrement DS chez votre registrar par le nouveau. Pendant la transition, il y a une fenêtre où l'ancien enregistrement DS ne correspond plus aux nouvelles clés. Planifiez le changement avec soin. Retirez d'abord l'ancien enregistrement DS, attendez la propagation, migrez votre DNS, activez DNSSEC chez le nouveau fournisseur, puis ajoutez le nouvel enregistrement DS.
DNSSEC est-il la même chose que DNS over HTTPS ?
Non. Ils résolvent des problèmes différents. DNSSEC vérifie qu'une réponse DNS est authentique et n'a pas été falsifiée. DNS over HTTPS (DoH) chiffre la requête DNS elle-même pour que personne qui surveille votre réseau ne puisse voir quels domaines vous recherchez. DNSSEC protège l'intégrité. DoH protège la confidentialité. On peut les utiliser ensemble, mais l'un ne remplace pas l'autre.