Niveau 1: slowloris simple DOS
Pour trouver l'adresse IP de l'attaquant slowloris, j'utilise la ligne de commande suivante:
netstat -ntu -4 -6 | awk '/^tcp/{ print $5 }' | sed -r 's/:[0-9]+$//' | sort | uniq -c | sort -n
Cela vous donnera le nombre de connexions actives pour chaque IP connectée
Si vous êtes sous une simple attaque DOS, un kiddie avec une ou quelques adresses IP, celui avec 50-100 connexions (ou plus) est très probablement un attaquant slowloris que vous pouvez supprimer.
Il s'agit de les détecter et de les supprimer (avec iptables ou votre hlfw préféré) en "temps réel" si vous êtes connecté sur le serveur pendant l'attaque.
L'ajout du temps de traitement (argument% D ou% T) dans vos journaux apache peut également aider à détecter les attaques de slowloris "post mortem" en analysant les journaux, si vous n'avez pas cette information dans vos journaux, vous ne pourrez pas trouver quelque chose d'intéressant . Voir http://httpd.apache.org/docs/current/mod/mod_log_config.html pour la configuration du journal.
Niveau 2: vrai gros slowloris DDOS
netstat (utilisez watch netstat pour l'actualisation) peut toujours vous aider à voir que certaines adresses IP sont toujours toujours connectées
Pour combattre slowloris, sur apache, installez les modules reqtimeout et configurez-le, exemple:
http://pastebin.com/3BNNwfyb
Après cela, chaque 408 que vous voyez dans access_log est à 99,999% sûr qu'un ip d'attaquant de slowloris.
En utilisant le module apache reqtimeout, vous pouvez facilement affronter des milliers d'ips et des milliers de paquets / seconde sur un serveur dédié décent
Iptables peut également aider un peu avec quelque chose comme:
iptables -A INPUT -p tcp --syn --dport 80 -m connlimit --connlimit-above 100 -j DROP