Re: [FRnOG] Apache DoS tool impacts ?
Bonjour à tous, Je ne comprends pas pourquoi vous vous inquiétez pour ce genre d'outils. Le fait d'envoyer des requêtes incomplètes et de laisser patienter le serveur remonte des erreurs dans les logs. Un fail2ban, une signature IDS, un RP bien configuré, pourra bloquer cette attaque. En regardant de plus près le blog de Cloud, (merci pour le lien Xavier Poli) il a développé un outil du même acabit : TCP Handshake Flood by Cloud http://blog.madpowah.org/articles/handshake/index.html Cet outil, que je trouve bien plus dangereux en terme de simplicité/impact, réalise un TCP DOS sur tous types de serveurs. Il est directement utilisable par les script-kiddies tant son code est simple. Ce développeur se base sur des mécanismes TCP (principe de SYN Cookie sur le client) bien connus pour réaliser son DOS. De même que pour Slowloris http dos, pour une machine, ça va être simple de bloquer tout ça (en prenant le risque de bloquer de gros proxies..), mais ce genre d'outil déployé sur des machines zombies, je crains pour mes serveurs, et pas simplement mes apaches ! -- Nicolas Lin Wee Kuan --- Liste de diffusion du FRnOG http://www.frnog.org/
Re: [FRnOG] Apache DoS tool impacts ?
Le 24 juin 09 à 10:30, Jean-Francois Cousi a écrit : At 09:21 24/06/09, Matthieu Bouthors wrote: fail2ban n'est pas utilisable dans le cas d'une attaque de ce type car Apache ne log les requêtes qu'une fois qu'elles ont été exécutées et que celles de slowloris.pl ne sont jamais exécutées. Vu que l'outil a l'air taillé pour les script-kiddies, un bon monitoring et un "netstat -apn" devraient permettre d'identifier et bloquer rapidement la source d'une attaque. Matthieu Exact ca n'apparait pas dans les logs mais l'IP apparait dans le server-status d'Apache. Faut, tu as la chaine suivante qui apparait : [01/01/4242] [error] [client 42.42.42.42] request failed: error reading the headers --- Liste de diffusion du FRnOG http://www.frnog.org/
Re: [FRnOG] Apache DoS tool impacts ?
At 09:21 24/06/09, Matthieu Bouthors wrote: fail2ban n'est pas utilisable dans le cas d'une attaque de ce type car Apache ne log les requêtes qu'une fois qu'elles ont été exécutées et que celles de slowloris.pl ne sont jamais exécutées. Vu que l'outil a l'air taillé pour les script-kiddies, un bon monitoring et un "netstat -apn" devraient permettre d'identifier et bloquer rapidement la source d'une attaque. Matthieu Exact ca n'apparait pas dans les logs mais l'IP apparait dans le server-status d'Apache. Sinon effectivement, le netstat indiquera la liste des connexions en cours et ce ne sera pas difficile de repérer l'IP qui flood. Reste plus ensuite qu'à bloquer cette IP sur le serveur ou en amont sur le réseau. Sachant que ca représente peu de trafic ce n'est pas génant au niveau de la bande passante que ca consomme. Maintenant on attend de voir les premieres attaques... pour l'instant c'est calme. D'autres hébergeurs ont peut-etre déjà été impactés mais je ne sais pas si ils viendront le dire ici. Mais bon bloquer des flood on fait ca tous les jours ou presque, meme si les outils changent le résultat est le meme donc rien de nouveau. Jean-Francois COUSI === www.serveur-express.com Le specialiste du serveur dedie Location, hebergement et infogerance de serveurs dedies Tel:01.58.64.26.80 Fax:01.58.64.26.81 --- Liste de diffusion du FRnOG http://www.frnog.org/
Re: [FRnOG] Apache DoS tool impacts ?
fail2ban n'est pas utilisable dans le cas d'une attaque de ce type car Apache ne log les requêtes qu'une fois qu'elles ont été exécutées et que celles de slowloris.pl ne sont jamais exécutées. Vu que l'outil a l'air taillé pour les script-kiddies, un bon monitoring et un "netstat -apn" devraient permettre d'identifier et bloquer rapidement la source d'une attaque. Matthieu Le 24 juin 2009 01:35, Jerome Benoit a écrit : > Le Wed, 24 Jun 2009 00:26:56 +0200, > Clément Lavoillotte a écrit : > > > > > Faut plutôt jouer avec TimeOut pour disons limiter la casse par les > > > scripts kiddies ... plus globalement il faut juste mettre des > > > timeout décent sur les sessions TCP. > > > > > > a +. > > > > L'outil envoyant des "bouts" de header HTTP de temps à autre pour > > garder la connexion active, il faudrait soit empêcher les longues > > requêtes (longues en terme de temps), et si possible pas les longues > > réponses (du moins au niveau firewall, sinon le client > > MassDownloadator 2.7 mal fait va pas aimer). > > L'idéal serait d'avoir l'équivalent des SYN cookies sur les requêtes > HTTP ... ou l'équivalent du mécanisme SACK sur TCP. > > > > > Réduire le TimeOut peut effectivement aider, mais peut être embêtant > > (dixit le manuel du parfait petit indien) car elle ne concerne pas > > que le temps de réception de la requête et que le chronométreur de > > paquets s'emmêle les plumes. > > De plus, j'ai fait un essai avec un apache 1.3 en me connectant en > > telnet, tant que j'envoie un header par minute il continue à > > attendre au-delà du temps spécifié dans cette directive (240 en > > l'occurence), et j'ai quand même une réponse polie à la fin. A voir > > si ça le fait aussi avec la version custom d'openbsd ? > > Bonne question, faudrait que je mette à jour ma VM d'openbsd et que je > fasse un test. > > > En attendant une directive spécifique RequestTimeOut (dont il faudra > > user avec prudence pour les uploads), on peut limiter le nombre de > > requêtes venant d'une même ip au niveau du firewall (ce que l'outil > > d'attaque contournera dans la v2 avec la possibilité d'utiliser une > > liste de proxy socks), et éventuellement leur durée (avec tout ce > > que ça implique pour les téléchargements, le keep-alive, etc). > > Ou utiliser une autre version d'apache / un autre serveur web > > "moins" vulnérable, en remplacement ou en reverse proxy. > > fail2ban en local peut aussi aider à faire du rate limiting de > requête HTTP depuis une IP mais le polling des events depuis le > fichier de logs est un mécanisme un peu rustique ... > > a +. > > -- > Jérôme Benoit aka fraggle > La Météo du Net - http://grenouille.com > OpenPGP Key ID : 9FE9161D > Key fingerprint : 9CA4 0249 AF57 A35B 34B3 AC15 FAA0 CB50 9FE9 161D >
Re: [FRnOG] Apache DoS tool impacts ?
Le Wed, 24 Jun 2009 00:26:56 +0200, Clément Lavoillotte a écrit : > > Faut plutôt jouer avec TimeOut pour disons limiter la casse par les > > scripts kiddies ... plus globalement il faut juste mettre des > > timeout décent sur les sessions TCP. > > > > a +. > > L'outil envoyant des "bouts" de header HTTP de temps à autre pour > garder la connexion active, il faudrait soit empêcher les longues > requêtes (longues en terme de temps), et si possible pas les longues > réponses (du moins au niveau firewall, sinon le client > MassDownloadator 2.7 mal fait va pas aimer). L'idéal serait d'avoir l'équivalent des SYN cookies sur les requêtes HTTP ... ou l'équivalent du mécanisme SACK sur TCP. > > Réduire le TimeOut peut effectivement aider, mais peut être embêtant > (dixit le manuel du parfait petit indien) car elle ne concerne pas > que le temps de réception de la requête et que le chronométreur de > paquets s'emmêle les plumes. > De plus, j'ai fait un essai avec un apache 1.3 en me connectant en > telnet, tant que j'envoie un header par minute il continue à > attendre au-delà du temps spécifié dans cette directive (240 en > l'occurence), et j'ai quand même une réponse polie à la fin. A voir > si ça le fait aussi avec la version custom d'openbsd ? Bonne question, faudrait que je mette à jour ma VM d'openbsd et que je fasse un test. > En attendant une directive spécifique RequestTimeOut (dont il faudra > user avec prudence pour les uploads), on peut limiter le nombre de > requêtes venant d'une même ip au niveau du firewall (ce que l'outil > d'attaque contournera dans la v2 avec la possibilité d'utiliser une > liste de proxy socks), et éventuellement leur durée (avec tout ce > que ça implique pour les téléchargements, le keep-alive, etc). > Ou utiliser une autre version d'apache / un autre serveur web > "moins" vulnérable, en remplacement ou en reverse proxy. fail2ban en local peut aussi aider à faire du rate limiting de requête HTTP depuis une IP mais le polling des events depuis le fichier de logs est un mécanisme un peu rustique ... a +. -- Jérôme Benoit aka fraggle La Météo du Net - http://grenouille.com OpenPGP Key ID : 9FE9161D Key fingerprint : 9CA4 0249 AF57 A35B 34B3 AC15 FAA0 CB50 9FE9 161D pgp1u90Bs6L1j.pgp Description: PGP signature
Re: [FRnOG] Apache DoS tool impacts ?
Le 22 juin 09 à 21:27, Jerome Benoit a écrit : Le Mon, 22 Jun 2009 15:51:12 +0200, Xavier Nicollet a écrit : Le 22 juin 2009 à 14:58, Jean-Francois Cousi a écrit: KeepAlive Off devrait pas mal aider. Une bonne partie des utilisateurs d'apache utilise ce paramètre. Don't worry. Ce n'est pas une "faille" bien nouvelle. KeepAlive Off ou On ne suffit pas à bloquer le flood. Effectivement. Mea-culpa pour cette erreur. Faut plutôt jouer avec TimeOut pour disons limiter la casse par les scripts kiddies ... plus globalement il faut juste mettre des timeout décent sur les sessions TCP. a +. L'outil envoyant des "bouts" de header HTTP de temps à autre pour garder la connexion active, il faudrait soit empêcher les longues requêtes (longues en terme de temps), et si possible pas les longues réponses (du moins au niveau firewall, sinon le client MassDownloadator 2.7 mal fait va pas aimer). Réduire le TimeOut peut effectivement aider, mais peut être embêtant (dixit le manuel du parfait petit indien) car elle ne concerne pas que le temps de réception de la requête et que le chronométreur de paquets s'emmêle les plumes. De plus, j'ai fait un essai avec un apache 1.3 en me connectant en telnet, tant que j'envoie un header par minute il continue à attendre au-delà du temps spécifié dans cette directive (240 en l'occurence), et j'ai quand même une réponse polie à la fin. A voir si ça le fait aussi avec la version custom d'openbsd ? En attendant une directive spécifique RequestTimeOut (dont il faudra user avec prudence pour les uploads), on peut limiter le nombre de requêtes venant d'une même ip au niveau du firewall (ce que l'outil d'attaque contournera dans la v2 avec la possibilité d'utiliser une liste de proxy socks), et éventuellement leur durée (avec tout ce que ça implique pour les téléchargements, le keep-alive, etc). Ou utiliser une autre version d'apache / un autre serveur web "moins" vulnérable, en remplacement ou en reverse proxy. Et bien sûr tout ça ne bloquera pas le même outil en version distribuée sur pc zombie... Clément--- Liste de diffusion du FRnOG http://www.frnog.org/
Re: [FRnOG] Apache DoS tool impacts ?
Le Mon, 22 Jun 2009 15:51:12 +0200, Xavier Nicollet a écrit : > Le 22 juin 2009 à 14:58, Jean-Francois Cousi a écrit: > >> KeepAlive Off > >> devrait pas mal aider. > >> > >> Une bonne partie des utilisateurs d'apache utilise ce paramètre. > >> Don't worry. > >> Ce n'est pas une "faille" bien nouvelle. > > > > KeepAlive Off ou On ne suffit pas à bloquer le flood. > > Effectivement. > Mea-culpa pour cette erreur. > Faut plutôt jouer avec TimeOut pour disons limiter la casse par les scripts kiddies ... plus globalement il faut juste mettre des timeout décent sur les sessions TCP. a +. -- Jérôme Benoit aka fraggle La Météo du Net - http://grenouille.com OpenPGP Key ID : 9FE9161D Key fingerprint : 9CA4 0249 AF57 A35B 34B3 AC15 FAA0 CB50 9FE9 161D pgpeDSTB8DKnn.pgp Description: PGP signature
Re: [FRnOG] Apache DoS tool impacts ?
Le 22 juin 2009 à 14:58, Jean-Francois Cousi a écrit: >> KeepAlive Off >> devrait pas mal aider. >> >> Une bonne partie des utilisateurs d'apache utilise ce paramètre. >> Don't worry. >> Ce n'est pas une "faille" bien nouvelle. > > KeepAlive Off ou On ne suffit pas à bloquer le flood. Effectivement. Mea-culpa pour cette erreur. -- Xavier Nicollet --- Liste de diffusion du FRnOG http://www.frnog.org/
Re: [FRnOG] Apache DoS tool impacts ?
Le lundi 22 juin 2009 à 14:45 +0200, Xavier Nicollet a écrit : > Ce n'est pas une "faille" bien nouvelle. Clairement pas, l'auteur le précise d'ailleurs: "UPDATE: Amit Klein pointed me to a post written by Adrian Ilarion Ciobanu written in early 2007 that perfectly describes this denial of service attack. It was also described in 2005 in the "Programming Model Attacks" section of Apache Security. So although there was no tool released at that time these two still technically deserves all the credit for this. I apologize for having missed these." Cf. http://ha.ckers.org/slowloris/ -- http://sid.rstack.org/ PGP KeyID: 157E98EE FingerPrint: FA62226DA9E72FA8AECAA240008B480E157E98EE >> Hi! I'm your friendly neighbourhood signature virus. >> Copy me to your signature file and help me spread! --- Liste de diffusion du FRnOG http://www.frnog.org/
Re: [FRnOG] Apache DoS tool impacts ?
Salut, Dire que apache est vulnerable mais pas d'autre serveur, c'est une simplification grossiere. La configuration par default d'apache des distributions standard est peut-etre plus sensible a ce probleme du a son modele pre-fork mais le probleme est le meme pour tout les serveurs de ce type. keepalive rend le web plus sensible au probleme c'est tout. Les postmasters ont le meme probleme avec qmail ou postfix. En regardant, les options par default sur une de mes machines: Timeout and KeepAliveTimeout sont tres hautes mais valable pour un petit site a la fin d'une connection lente. C'est surement pour ca que apache est plus vulnerable, changez ces valeurs et ca devrait bcp aider (et les options du module prefork si vous avez assez de RAM) Donc, oui les script-kiddies vont s'amuser quelques mois avant que les hostmasters changent leur configurations, ca va faire chier le monde maintenant que l'outil facile a utiliser est la. Rien de neuf - a part un peu de pub pour lighttpd et nginx (que j'aime bcp). Regards, Thomas Mangin Technical Director -- Exa Networks Limited - http://www.exa-networks.co.uk/ Company No. 04922037 - VAT no. 829 1565 09 27-29 Mill Field Road, BD16 1PY, UK Phone: +44 (0) 845 145 1234 - Fax: +44 (0) 1274 567646 On 22 Jun 2009, at 13:45, Xavier Nicollet wrote: Le 22 juin 2009 à 13:10, jul a écrit: En réaction à la publication par rsnake d'un outil pour faire du DoS sur Apache en quelques paquets [1], je souhaitais savoir si des vérifications/mesures particulières ont été prises par les opérateurs/hébergeurs ? [...] [1] http://ha.ckers.org/blog/20090617/slowloris-http-dos/ Lu le lien un peu rapidement, donc désolé si j'ai pris des raccourcis. """ Then I randomly started thinking about the way Apache works and figured out that it may be possible to create something similar to a SYN flood, but in HTTP. """ KeepAlive Off devrait pas mal aider. Une bonne partie des utilisateurs d'apache utilise ce paramètre. Don't worry. Ce n'est pas une "faille" bien nouvelle. -- Xavier Nicollet --- Liste de diffusion du FRnOG http://www.frnog.org/ --- Liste de diffusion du FRnOG http://www.frnog.org/
Re: [FRnOG] Apache DoS tool impacts ?
2009/6/22 jul : > Bonjour, > > En réaction à la publication par rsnake d'un outil pour faire du DoS sur > Apache en quelques paquets [1], je souhaitais savoir si des > vérifications/mesures particulières ont été prises par les > opérateurs/hébergeurs ? > > A priori, il semble que les contre-mesures soient limitées > * Éventuellement, absorption par les load-balancers ou reverse proxy > * Diminuer le Timeout Apache > * Module pour limiter le nombre de connexion par IP > > Commentaires ? Limiter par le nombre de connexions n'est pas toujours une solution viable surtout lorsque les clients HTTP sont derrières un proxy HTTP ou du NAT. (donc utilisant la même source IP) Le TimeOut dans Apache semble une solution mais ne fait que demander au "client" DoS d'augmenter le débit des connexions (en gros, il faut donc plus de bande passante à l'attaquant). De plus, l'équilibre entre le TimeOut d'une application serveur qui prends un peu de temps et le TimeOut du client peut rendre cela encore plus difficile. Pour l'instant, il semble qu'une bonne contre-mesure soit le "load-balancer"/reverse proxy. Je viens de le tester sur une machine sans aucune modification sur la partie Apache httpd, juste changer le port de 80 vers 8080 et le binding en localhost. En utilisant Perlbal (http://www.danga.com/perlbal/) comme load balancer avec une simple config de ce genre : CREATE POOL httpserver POOL httpserver ADD 127.0.0.1:8080 CREATE SERVICE balancer SET listen = 1.2.3.4:80 SET role= reverse_proxy SET pool= httpserver SET persist_client = on SET persist_backend = on SET verify_backend = on ENABLE balancer J'ai aussi augmenter la limite des fichiers ouverts pour Perlbal (via un simple ulimit -n). Cela semble bien résister à slowloris.pl mais bon il n'y a pas vraiment de solutions miracles pour ce vieux soucis du DoS avec sessions persistantes. adulau -- -- Alexandre Dulaunoy (adulau) -- http://www.foo.be/ -- http://www.foo.be/cgi-bin/wiki.pl/Diary -- "Knowledge can create problems, it is not through ignorance --that we can solve them" Isaac Asimov --- Liste de diffusion du FRnOG http://www.frnog.org/
Re: [FRnOG] Apache DoS tool impacts ?
Bonjour, Xavier Nicollet wrote: [...] KeepAlive Off devrait pas mal aider. Non, ca aide un peu, mais ca n'arrête rien, le script étant concu pour garder des sessions ouvertes indéfiniment. [...] Ce n'est pas une "faille" bien nouvelle. clairement, ce n'est pas nouveau, ce genre d'attaque existe depuis belle lurette, la ""faille"" est uniquement du au fait que dans ce genre de modèle "prefork" un Maxclients est nécessaire pour éviter de surcharger la RAM du serveur. D'ailleurs, Apache en mode "worker" n'est pas affecté. -- Hervé COMMOWICK, EXOSEC (http://www.exosec.fr/) ZAC des Metz - 3 Rue du petit robinson - 78350 JOUY EN JOSAS Tel: +33 1 30 67 60 65 - Fax: +33 1 75 43 40 70 mailto:hcommow...@exosec.fr --- Liste de diffusion du FRnOG http://www.frnog.org/
Re: [FRnOG] Apache DoS tool impacts ?
At 14:45 22/06/09, Xavier Nicollet wrote: Lu le lien un peu rapidement, donc désolé si j'ai pris des raccourcis. """ Then I randomly started thinking about the way Apache works and figured out that it may be possible to create something similar to a SYN flood, but in HTTP. """ KeepAlive Off devrait pas mal aider. Une bonne partie des utilisateurs d'apache utilise ce paramètre. Don't worry. Ce n'est pas une "faille" bien nouvelle. KeepAlive Off ou On ne suffit pas à bloquer le flood. Je ne sais pas si la faille est nouvelle ou pas mais pour nous ca reste un flood comme un autre donc ca change pas les méthodes pour les bloquer. Jean-Francois COUSI === www.serveur-express.com Le specialiste du serveur dedie Location, hebergement et infogerance de serveurs dedies Tel:01.58.64.26.80 Fax:01.58.64.26.81 --- Liste de diffusion du FRnOG http://www.frnog.org/
Re: [FRnOG] Apache DoS tool impacts ?
At 13:10 22/06/09, jul wrote: En réaction à la publication par rsnake d'un outil pour faire du DoS sur Apache en quelques paquets [1], je souhaitais savoir si des vérifications/mesures particulières ont été prises par les opérateurs/hébergeurs ? A priori, il semble que les contre-mesures soient limitées * Éventuellement, absorption par les load-balancers ou reverse proxy * Diminuer le Timeout Apache * Module pour limiter le nombre de connexion par IP Commentaires ? On a testé slowloris et effectivement ca marche bien, on peut écrouler un Apache en quelques secondes. En plus c'est super simple à utiliser donc y'en a plein qui vont pouvoir s'amuser avec, ca va etre fun :) Maintenant meme si ca facilite le travail, des flood sur Apache ca existait avant donc c'est pas nouveau, et tous les hébergeurs en recoivent régulièrement donc ils savent comment y faire face. Quand le flood concerne des requetes Apache valides (sur des pages PHP pour écrouler le CPU par exemple), un simple filtrage dans la conf Apache suffit. Mais la ca ne marche pas, c'est au niveau du réseau qu'il faut filtrer l'IP pour bloquer le flood. Soit sur le serveur, soit sur le switch en amont soit directement sur les routeurs. Et quand ca arrive souvent il faut des scripts pour filtrer automatiquement au dela d'un certain nombre de requetes/IP. Donc si ca vient de la meme IP ce sera facile à bloquer car c'est pas tres discret comme attaque, mais si le gars utilise plus d'une dizaine d'IP différentes pour bloquer moins de 20 process simultanés ca sera plus difficilement automatisable donc ca demandera un peu plus de travail si on veut pas blacklister des IP d'utilisateurs qui ont juste tendance à cliquer un peu vite :) Jean-Francois COUSI === www.serveur-express.com Le specialiste du serveur dedie Location, hebergement et infogerance de serveurs dedies Tel:01.58.64.26.80 Fax:01.58.64.26.81 --- Liste de diffusion du FRnOG http://www.frnog.org/
Re: [FRnOG] Apache DoS tool impacts ?
Le 22 juin 2009 à 13:10, jul a écrit: > En réaction à la publication par rsnake d'un outil pour faire du DoS sur > Apache en quelques paquets [1], je souhaitais savoir si des > vérifications/mesures particulières ont été prises par les > opérateurs/hébergeurs ? > [...] > [1] > http://ha.ckers.org/blog/20090617/slowloris-http-dos/ Lu le lien un peu rapidement, donc désolé si j'ai pris des raccourcis. """ Then I randomly started thinking about the way Apache works and figured out that it may be possible to create something similar to a SYN flood, but in HTTP. """ KeepAlive Off devrait pas mal aider. Une bonne partie des utilisateurs d'apache utilise ce paramètre. Don't worry. Ce n'est pas une "faille" bien nouvelle. -- Xavier Nicollet --- Liste de diffusion du FRnOG http://www.frnog.org/
Re: [FRnOG] Apache DoS tool impacts ?
Cette vulnérabilité ne concerne pas que les serveurs Apache, voir également le script DoS TCP/IP Handshake Flood : http://blog.madpowah.org/archives/2009/06/22/index.html#e2009-06-22T00_57_24.txt On Monday 22 June 2009 13:10:02 jul wrote: > Bonjour, > > En réaction à la publication par rsnake d'un outil pour faire du DoS sur > Apache en quelques paquets [1], je souhaitais savoir si des > vérifications/mesures particulières ont été prises par les > opérateurs/hébergeurs ? > > A priori, il semble que les contre-mesures soient limitées > * Éventuellement, absorption par les load-balancers ou reverse proxy > * Diminuer le Timeout Apache > * Module pour limiter le nombre de connexion par IP > > Commentaires ? > > Merci > > [1] > http://ha.ckers.org/blog/20090617/slowloris-http-dos/ > http://isc.sans.org/diary.html?storyid=6613 > --- > Liste de diffusion du FRnOG > http://www.frnog.org/ --- Liste de diffusion du FRnOG http://www.frnog.org/