Éviter les attaques DDoS de type SYN Flood


Les attaques DDoS (déni de service) et plus particulièrement de type SYN Flood visent à rendre une machine distante inefficace. Comment ? La méthode est simple, il suffit d'envoyer un grand nombre de paquets TCP, ce qui va avoir pour effet d'ouvrir une pléthore de connexions non confirmées car aucun accusé de réception (flag ACK) ne sera envoyé à la victime.
Fatalement, la machine victime laissera ouvertes toutes ces connexions en attente d'accusé de réception. Ce qui provoquera un bloquage, ou une surcharge ainsi la machine ne pourra plus répondre aux autres tentatives de connexions.

Ici nous n'allons pas voir comment exploiter cette technique, mais plutôt comment s'en préserver.

Victime ou pas ?


Vous désirez savoir si vous êtes victime du flood SYN ? Rien de plus simple, il vous suffit de taper cette commande dans un terminal :
$ netstat -an | grep SYN
Si vous n'obtenez aucun résultat, tout va bien. Au contraire si plusieurs lignes SYN_RECV s'affichent, vous êtes sûrement victime de cette attaque.

Éviter l'attaque


Pour se protéger du flood, nous allons ajouter des lignes à la fin du fichier /etc/systctl.conf :
net.ipv4.tcp_syncookies = 1
net.ipv4.conf.all.rp_filter = 1
net.ipv4.tcp_max_syn_backlog = 1024
Ensuite, on charge le fichier sysctl.conf en prennant en compte les lignes ajoutées :
# sysctl -p /etc/sysctl.conf
Et voilà, vous êtes prêts à affronter le flood SYN.