Think-Tank pour vous 😁 Jeune Presse irresponsable, participative avec un regard décalé sur l'actu et l'histoire -depuis 2013🙈🙉🙊

résumé

vendredi 9 avril 2021

Hacking: Slowloris le Termintator de serveur web


 Slowloris est un script écrit en Perl par Robert "RSnake" Hansen qui permet à une seule machine de faire tomber un serveur web en utilisant une bande passante minimale et des effets de bords sur des services et des ports sans rapport.

Slowloris utilise une attaque de type DoS (attaque par déni de service), il affecte en particulier les serveurs Apache 1.x et 2.x qui représentent 67 % des serveurs sur le net.

Slowloris essaye de garder beaucoup de connexions ouvertes avec le serveur et les conserve le plus longtemps possible. Il l'accomplit en ouvrant des connexions avec la cible et lui envoyant une requête partielle. Périodiquement il envoie des headers HTTP, mais sans terminer la requête. Les serveurs visés vont conserver leurs connexions ouvertes, remplissant leur pool de connexion concurrente, et finalement empêche des connexions ultérieures des clients.

Le principe de ce petit script Perl est d’envoyer des requêtes HTTP partielles, à intervalle régulier, afin de garder les sockets ouverts. Slowloris initie donc une requête GET vers le serveur cible, il y a un échange entre les deux entités, comme le ferait n’importe quel client HTTP vers le serveur, or ici slowloris va faire en sorte que l’échange ne se termine jamais. Slowloris ne va pas envoyer les séquences attendues par le serveur mais lui fournira de temps en temps un en-tête bidon qui sera ignoré par le serveur, mais qui permettra de maintenir la connexion TCP ouverte, empêchant ainsi le socket d’être fermé. Le serveur devient rapidement saturé, aboutissant au déni de service.


Pour se proteger: 

Au niveau du code PHP

Il n'y a pratiquement rien à faire pour palier cette attaque au niveau du code PHP, donc il faut surtout miser sur la configuration du serveur et la sécurisation du réseau qui abrite celui-ci.

Au niveau de la configuration du serveur et du réseau

Bonne configuration du serveur Web

Pour perfectionner la sécurité contre les DoS de manière générale on peut déjà commencer par bien configurer le serveur Web. Dans le cas du serveur Apache on peut revoir les directives suivantes (présentes dans le fichier de configuration principal apache2.conf ou httpd.conf):

  • MaxConnPerIP: permet de définir le nombre maximal de connexions par adresse IP unique.
  • MaxClients: définie le nombre maximal de requêtes simultanées.
  • KeepAlive: Définissent si les requêtes multiples doivent être envoyées sur la même connexion TCP. Il se trouve que des fois, une page Web contient beaucoup d'éléments qui sont chargés indépendamment (images, vidéos...) et qui font chacune l'objet d'une nouvelle requête. Pour ne pas créer autant de connexion TCP que de requêtes on active cette directive avec la valeur On.



Mitigation des attaques DoS

Il s'agit d'un ensemble de techniques qui visent à atténuer l'impact des attaques DoS. La plupart des hébergeurs les utilisent au sein de leurs réseaux pour surmonter les risques d'une telle attaque.

Utilisation d'un Reverse Proxy

Un reverse Proxy sert d'intermédiaire entre le réseau externe et le réseau interne. Il est donc en mesure d'encaisser tous les coups à la place du serveur Web mais il est conçu pour être plus résistant à de tels aléas.

Utilisation d'IPS applicatifs

Les IPS applicatifs sont des modules pour le serveur Web (ou des logiciels indépendants) qui permettent de filtrer les requêtes et détourner les menaces. Ils sont en mesure de reconnaitre les requêtes incomplètes et les rejeter ensuite, libérant ainsi le pool du serveur.


source: Wikipédia, chiny, ...

Aucun commentaire:

Publier un commentaire

© Copyright EL-MESMAR 2013-2018 "Tous droits réservés" -Design: Aghiles AZZOUG-CREAGHI STUDIO. Fourni par Blogger.