Le contexte de la DDoS
« Une attaque par déni de service est une cyberattaque dont l’auteur cherche à rendre une machine ou une ressource réseau indisponible pour les utilisateurs prévus. Elle perturbe temporairement ou indéfiniment les services d’un hôte connecté à l’internet » – Wikipedia
Dans le cas d’une attaque par déni de service distribué (attaque DDoS), la charge de l’attaque provient de plusieurs sources différentes. Elle utilise généralement un réseau de zombies et/ou des services mal configurés (comme nous le verrons plus loin). Contrairement au déni de service, ce type d’attaque rend difficile la localisation du pirate et implique une énorme consommation de la bande passante de la victime.
Les raisons de ce type d’attaque sont multiples :
– Idéologique: une sorte d’objection à un message véhiculé par une entreprise ou un gouvernement(ex.: Anonymous)
– Écran de fumée: utilisé pour dissimuler une attaque plus complexe, impliquant généralement une usurpation d’identité ou une exfiltration de données.
– Défi: montrer la capacité d’un pirate à vaincre ou à dimensionner la sécurité d’un système.
Ce qui est encore plus effrayant, c’est la facilité avec laquelle il est possible de créer un DDoS à peu de frais, même pour une personne ayant des compétences limitées, car l’artillerie utilisée est largement disponible gratuitement ou presque.
Qu’est-ce qu’une attaque par amplification dans un contexte de DDoS ?
Une attaque par amplification est une attaque volumétrique qui tente d’épuiser la bande passante de la victime par « réflexion ». Un attaquant « demande » par un message court une information, en UDP, à un service vulnérable. L’attaquant remplacera l’IP source du message par l’IP de la victime, afin de convaincre le service vulnérable de « répondre » directement à la victime. Lorsque le service répond par un message plus important que le message source, on parle d’amplification. La poignée de main à trois voies du protocole TCP ne permet pas ce comportement, car l’adresse source ne peut pas être usurpée – Wikipedia.
Dans cette figure, nous avons décrit le cas spécifique d’un pirate qui envoie directement un paquet usurpé à plusieurs services vulnérables. Dans le cas d’une attaque à grande échelle, le pirate utilisera un réseau de zombies pour envoyer le paquet initial à partir d’un grand nombre de sources, ce qui augmentera de manière exponentielle l’effet de l’attaque.
L’effet potentiel d’une attaque par amplification peut être mesuré par le facteur d’amplification de la bande passante(BAF), qui peut être calculé comme le nombre d’octets de charge utile UDP qu’un amplificateur envoie pour répondre à une demande, par rapport au nombre d’octets de charge utile UDP de la demande (voir ci-dessous une liste de protocoles connus et leurs BAF associés).
Protocole | Largeur de bande Facteur d’amplification |
---|---|
DNS | 28 à 54 |
NTP | 556.9 |
SNMPv2 | 6.3 |
NetBIOS | 3.8 |
SSDP | 30.8 |
CharGEN | 358.8 |
QOTD | 140.3 |
BitTorrent | 3.8 |
Kad | 16.3 |
Protocole de réseau Quake | 63.9 |
Protocole vapeur | 5.5 |
DNS multidiffusion (mDNS) | 2 à 10 |
RIPv1 | 131.24 |
Carte des ports (RPCbind) | 7 à 28 |
LDAP | 46 à 55 ans |
CLDAP | 56 à 70 |
TFTP | 60 |
Memcached | 10 000 à 51 000 |
Prévention et réponse
Voici quelques points qui peuvent vous aider à atténuer rapidement une attaque par amplification :
– Un diagramme de réseau/service à jour.
– Unplan deréponse aux incidents testé avec des rôles et des contacts bien définis (idéalement aussi imprimé sur papier, en cas d’indisponibilité de l’ensemble du réseau).
– Un système de surveillance adéquat qui vous alertera dès le début d’un DDoS.
– Un pare-feu qui bloque tout le trafic qui n’est pas explicitement autorisé (entrant et sortant).
– Utilisez un équilibreur de charge correctement configuré et veillez à ce qu’il ne devienne pas un point de défaillance unique.
– Évaluez régulièrement la sécurité de votre infrastructure et des règles de votre pare-feu.
– Demandez à votre fournisseur d’accès à Internet (FAI) de procéder à un filtrage temporaire (scrubbing ou traffic shaping).
– Prenez note de chaque action au cours d’une réponse à un incident (horodatage, actions, résultats, …).
– S’il n’y a pas d’autres solutions, faites appel à un tiers.
Et … ne participez pas à un DDoS. Empêchez les services UDP ouverts ou mal configurés de participer à un futur DDoS.
Nos statistiques pour la Belgique
Les services qui peuvent être utilisés pour une attaque par amplification sont largement disponibles dans le monde entier. Pour vous donner une idée, nous avons compilé des statistiques sur certains services UDP vulnérables en Belgique, provenant de la Threat Intelligence et de scans passifs au niveau belge, à la mi-mars 2018, qui peuvent être utilisés pour une attaque par amplification (classés par facteur d’amplification) :
Protocole | Largeur de bande Facteur d’amplification | Vulnérabilité en Belgique |
---|---|---|
Memcached | 10 000 à 51 000 | 55 |
NTP | 556.9 | 10809 |
CharGEN | 358.8 | 26 |
QOTD | 140.3 | 49 |
DNS | 28 à 54 | 2743 |
SSDP | 30.8 | 2757 |
MS-SQL | 25 | 537 |
Carte des ports (RPCbind) | 7 à 28 | 6025 |
SNMPv2 | 6.3 | 5993 |
DNS multidiffusion (mDNS) | 2 à 10 | 6093 |
NetBIOS | 3.8 | 2683 |
Conclusion
– Les attaques par amplification DDoS ne sont pas une question de compétences pour un pirate informatique, puisqu’il existe une pléthore d’outils, plus ou moins librement accessibles.
– Les attaques par amplification DDoS sont difficiles à atténuer car l’IP du pirate est cachée derrière le reflet.
– Une grande quantité de services vulnérables pouvant être utilisés pour le DDoS sont disponibles dans le monde entier. Prenez au moins garde à ne pas y participer vous-même.
– Vous pouvez vous inspirer de la section « Prévention et réponse » pour votre propre défense.