Qu'est-ce qu'une attaque par amplification DNS ?
Une attaque par amplification DNS est une technique DDoS par réflexion. L'attaquant envoie de petites requêtes DNS à des résolveurs DNS ouverts en usurpant l'adresse IP de la victime comme source. Les résolveurs envoient leurs réponses, bien plus volumineuses, à la victime : peu de bande passante côté attaquant devient un flot de trafic non sollicité. C'est une attaque DDoS contre la capacité du réseau, et la victime ne communique jamais directement avec l'attaquant.
Cette entrée explique la technique et la défense. LoadFocus ne simule ni l'amplification DNS ni aucune autre attaque.
Comment ça fonctionne
- Requête usurpée. L'attaquant envoie une requête DNS avec l'IP de la victime comme source. UDP n'a pas de poignée de main, personne ne vérifie cette adresse.
- Enregistrement volumineux demandé. La requête demande une réponse volumineuse, historiquement une requête ANY ou des enregistrements avec données DNSSEC.
- Le résolveur ouvert répond. Un résolveur récursif qui accepte les requêtes de n'importe qui envoie la réponse complète à l'adresse usurpée.
- La victime est submergée. Des milliers de résolveurs à la fois saturent le lien, le pare-feu ou les serveurs DNS de la victime. Le rapport de taille entre réponse et requête est le facteur d'amplification, il dépend des données de l'enregistrement.
Exemple
Une petite entreprise exploite son propre serveur de noms faisant autorité. Un attaquant usurpe son IP et interroge des milliers de résolveurs mal configurés pour de gros enregistrements. En bordure de réseau, le trafic passe de quelques Mbit/s à la saturation du lien, le site et la messagerie ne répondent plus, et le trafic est difficile à filtrer car il vient de résolveurs légitimes. Une limitation de débit chez le fournisseur ou un service de nettoyage de trafic l'absorbe.
Erreurs courantes qui aggravent le problème
- Laisser la récursion ouverte. Un résolveur ne doit répondre aux requêtes récursives que pour ses propres clients, pas pour tout internet.
- Répondre intégralement à chaque requête ANY. La RFC 8482 permet aux serveurs faisant autorité de donner une réponse minimale aux requêtes ANY.
- Ne pas limiter le débit des réponses. Sans cela, un résolveur peut renvoyer sans cesse la même grosse réponse à une adresse usurpée.
- Laisser sortir du trafic usurpé de son réseau. BCP 38 (RFC 2827) demande de rejeter les paquets sortants dont l'adresse source n'appartient pas au réseau.
- Compter uniquement sur la bande passante. Les inondations volumétriques s'absorbent en amont, chez un CDN ou un fournisseur de nettoyage.
Comment se défendre
- En tant que victime potentielle : placez les services publics derrière un CDN ou un service de protection DDoS et suivez les étapes de comment arrêter les attaques DDoS.
- En tant qu'opérateur DNS : désactivez la récursion ouverte, activez la limitation du débit des réponses, réduisez les réponses ANY et envisagez les cookies DNS (RFC 7873), qui peuvent selon la RFC réduire fortement le trafic qu'un attaquant hors chemin peut amplifier.
- En tant qu'opérateur réseau : filtrez en bordure les adresses source usurpées (BCP 38).
Attaques par réflexion apparentées
Pour la catégorie plus large, voir qu'est-ce qu'une attaque DDoS DNS. Le même schéma fonctionne avec d'autres services UDP. Le plus gros exemple connu est l'attaque Memcached contre GitHub en février 2018, avec un pic de 1,35 Tbit/s et un facteur d'amplification allant jusqu'à 51 000, selon le rapport d'incident de GitHub.
La détecter avec la supervision
Une inondation par amplification se voit de l'extérieur sous forme de délais dépassés, de contrôles en échec et de réponses DNS lentes. La supervision d'API et de points d'accès continue depuis plusieurs régions, avec des alertes à la panne et au retour à la normale, indique vite qu'un service ne répond plus et si le problème est global ou limité à une région. Le plan gratuit vérifie toutes les 5 minutes. La supervision détecte l'impact, elle n'arrête pas l'attaque. Les tests de charge sont un exercice de capacité distinct et non une simulation DDoS : ne testez que des systèmes qui vous appartiennent ou que vous êtes autorisé à tester, et prévenez d'abord votre fournisseur.
Questions fréquentes : attaques par amplification DNS
Puis-je être victime d'une attaque par amplification DNS ?
Oui. Toute adresse IP publique peut être visée, car le trafic est envoyé par des résolveurs tiers vers une adresse source usurpée. La défense habituelle est un CDN ou un service de protection DDoS.
Comment vérifier si mon serveur DNS est un résolveur ouvert ?
Depuis une machine extérieure à votre réseau, envoyez une requête récursive à votre serveur, par exemple avec dig et l'option +recurse. S'il répond pour des domaines dont il n'a pas la charge, la récursion est ouverte et doit être limitée à vos propres clients.
DNSSEC aggrave-t-il l'amplification ?
Cela peut arriver, car les réponses signées sont plus volumineuses. DNSSEC reste utile pour l'authenticité, mais il faut l'associer à une limitation du débit des réponses.
BCP 38 peut-il arrêter l'amplification DNS ?
Si tous les réseaux l'appliquaient, les adresses source usurpées ne pourraient pas quitter leur réseau et les attaques par réflexion disparaîtraient presque. L'adoption est inégale, donc victimes et opérateurs DNS ont toujours besoin de leurs propres défenses.
Quelle différence entre amplification DNS et attaque DDoS DNS ?
L'amplification DNS est une technique de réflexion. Une attaque DDoS DNS est la catégorie plus large et inclut aussi les inondations visant le serveur DNS lui-même. Voir l'entrée sur l'attaque DDoS DNS.
Termes associés
- Qu'est-ce qu'une attaque DDoS DNS ?
- Qu'est-ce qu'une attaque DDoS Memcached ?
- Qu'est-ce qu'une attaque DDoS par inondation UDP ?
- Qu'est-ce qu'une attaque DDoS applicative ?
- Qu'est-ce qu'une attaque DDoS par inondation HTTP ?
- Qu'est-ce que la protection contre le déni de service (DoS) ?
- Qu'est-ce qu'une attaque par déni de service distribué (DDoS) ?
- Attaques DDoS
Outils LoadFocus connexes
Mettez ce concept en pratique avec LoadFocus, la plateforme même qui propulse tout ce que vous venez de lire.