Qu’est-ce qu’une attaque SYN flood
Un SYN flood TCP (alias SYN flood) est un type d’attaque par déni de service distribué (DDoS) qui exploite une partie de la poignée de main tridimensionnelle TCP normale pour consommer les ressources du serveur ciblé et le rendre insensible.
Essentiellement, avec SYN flood DDoS, le délinquant envoie des demandes de connexion TCP plus rapidement que la machine ciblée ne peut les traiter, ce qui provoque une saturation du réseau.
Description de l’attaque
Lorsqu’un client et un serveur établissent une » poignée de main à trois » TCP normale, l’échange ressemble à ceci :
- Le client demande une connexion en envoyant un message SYN (synchronisation) au serveur.
- Le serveur accuse réception en envoyant un message SYN-ACK (synchronisation-accusé de réception) en retour au client.
- Le client répond par un message ACK (acknowledge), et la connexion est établie.
Dans une attaque par inondation SYN, l’attaquant envoie des paquets SYN répétés à chaque port du serveur ciblé, en utilisant souvent une fausse adresse IP. Le serveur, qui n’est pas au courant de l’attaque, reçoit de multiples demandes, apparemment légitimes, pour établir la communication. Il répond à chaque tentative par un paquet SYN-ACK depuis chaque port ouvert.
Le client malveillant n’envoie pas l’ACK attendu ou – si l’adresse IP est usurpée – ne reçoit jamais le SYN-ACK en premier lieu. Dans tous les cas, le serveur attaqué attendra l’accusé de réception de son paquet SYN-ACK pendant un certain temps.
Progression d’un SYN flood.
Pendant ce temps, le serveur ne peut pas fermer la connexion en envoyant un paquet RST, et la connexion reste ouverte. Avant que la connexion ne puisse s’éteindre, un autre paquet SYN arrivera. Cela laisse un nombre de plus en plus important de connexions semi-ouvertes – et les attaques SYN flood sont également appelées attaques « semi-ouvertes ». Finalement, à mesure que les tables de débordement de connexions du serveur se remplissent, le service aux clients légitimes sera refusé, et le serveur peut même dysfonctionner ou tomber en panne.
Alors que l’inondation SYN « classique » décrite ci-dessus tente d’épuiser les ports du réseau, les paquets SYN peuvent également être utilisés dans les attaques DDoS qui tentent de boucher vos tuyaux avec de faux paquets pour atteindre la saturation du réseau. Le type de paquet n’est pas important. Malgré tout, les paquets SYN sont souvent utilisés car ils sont les moins susceptibles d’être rejetés par défaut.
Voir comment Imperva DDoS Protection peut vous aider à faire face aux attaques DDoS TCP.
Méthodes d’atténuation
Alors que les systèmes d’exploitation modernes sont mieux équipés pour gérer les ressources, ce qui rend plus difficile le débordement des tables de connexion, les serveurs sont toujours vulnérables aux attaques SYN flood.
Il existe un certain nombre de techniques courantes pour atténuer les attaques SYN flood, notamment :
Les micro-blocs-les administrateurs peuvent allouer un micro-enregistrement (aussi peu que 16 octets) dans la mémoire du serveur pour chaque demande SYN entrante au lieu d’un objet de connexion complet.
Cookies SYN – à l’aide d’un hachage cryptographique, le serveur envoie sa réponse SYN-ACK avec un numéro de séquence (seqno) qui est construit à partir de l’adresse IP du client, du numéro de port et éventuellement d’autres informations d’identification uniques. Lorsque le client répond, ce hachage est inclus dans le paquet ACK. Le serveur vérifie l’ACK, et seulement ensuite alloue de la mémoire pour la connexion.
Cookies RST-pour la première demande d’un client donné, le serveur envoie intentionnellement un SYN-ACK invalide. Cela devrait entraîner la génération par le client d’un paquet RST, qui indique au serveur que quelque chose ne va pas. Si celui-ci est reçu, le serveur sait que la demande est légitime, enregistre le client et accepte les connexions entrantes suivantes de sa part.
Modification de la pile – les administrateurs peuvent modifier les piles TCP pour atténuer l’effet des inondations SYN. Il peut s’agir soit de réduire le délai d’attente jusqu’à ce qu’une pile libère la mémoire allouée à une connexion, soit d’abandonner sélectivement les connexions entrantes.
Evidemment, toutes les méthodes mentionnées ci-dessus reposent sur la capacité du réseau cible à gérer des attaques DDoS volumétriques à grande échelle, avec des volumes de trafic mesurés en dizaines de gigabits (voire en centaines de gigabits) par seconde.
Imperva atténue une attaque DDoS multi-vecteurs SYN flood et DNS flood de 38 jours.
La protection DDoS d’Emperva s’appuie sur la technologie Anycast pour équilibrer les requêtes DDoS entrantes à travers son réseau mondial de centres de scrubbing très puissants. Grâce à la capacité combinée de son réseau mondial, Incapsula peut dépasser de manière rentable les ressources des attaquants, rendant l’attaque DDoS inefficace. Le service est construit pour évoluer à la demande, offrant des ressources suffisantes pour faire face aux attaques DDoS volumétriques les plus importantes.