Pages : 1
#1 Le 28/01/2015, à 22:32
- seabird2_fr
mod_evasive et DOSBlockingPeriod
Bonsoir,
J’ai un petit soucis avec la durée du blacklistage.
Voilà ce que j’ai fait pour test dans la configuration:
J'ai mis deux pages en 5s et 10 requêtes en 5s autant dire pas grand-chose.
<IfModule mod_evasive20.c>
DOSHashTableSize 3097
DOSPageCount 2
DOSPageInterval 5
DOSSiteCount 10
DOSSiteInterval 5
DOSBlockingPeriod 600
DOSLogDir "/var/log/mod_evasive"
#DOSWhitelist 127.0.0.1
</IfModule>
Si je fais le test manuellement depuis le navigateur . Je suis bien bloqué mais à peine 5s malgré mon DOSBlockingPeriod à 600
Si j'essai avec ab:
ex: ab -n 1000 -c 100 http://mon-ip-publique/ , 96% des requêtes ne passent pas (toujours un problème avec le durée du blacklist)
Voilà ce que j'obtiens en lançant le test perl qu’il y a en exemple. Ce qui est bizarre c'est que j'ai un premier 403 puis ça redevient OK puis ça repart en 403 .Et malgré mon DOSBlockingPeriod 600 , ca reste bloqué également à peine 5s
et je suis bien présent dans /var/log/mod_evasive => dos-127.0.0.1
root@servertest:/usr/share/doc/libapache2-mod-evasive/examples# perl test.pl
HTTP/1.1 200 OK
HTTP/1.1 200 OK
HTTP/1.1 200 OK
HTTP/1.1 200 OK
HTTP/1.1 200 OK
HTTP/1.1 200 OK
HTTP/1.1 200 OK
HTTP/1.1 200 OK
HTTP/1.1 200 OK
HTTP/1.1 200 OK
HTTP/1.1 200 OK
HTTP/1.1 200 OK
HTTP/1.1 200 OK
HTTP/1.1 200 OK
HTTP/1.1 200 OK
HTTP/1.1 200 OK
HTTP/1.1 200 OK
HTTP/1.1 200 OK
HTTP/1.1 200 OK
HTTP/1.1 200 OK
HTTP/1.1 403 Forbidden
HTTP/1.1 200 OK
HTTP/1.1 200 OK
HTTP/1.1 200 OK
HTTP/1.1 200 OK
HTTP/1.1 200 OK
HTTP/1.1 200 OK
HTTP/1.1 200 OK
HTTP/1.1 200 OK
HTTP/1.1 403 Forbidden
HTTP/1.1 200 OK
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
.........
Merci pour vos suggestions,
Eric
Hors ligne
#2 Le 29/01/2015, à 20:34
- tiramiseb
Re : mod_evasive et DOSBlockingPeriod
Salut,
Juste une supposition pour l'une de tes interrogations...
Ce qui est bizarre c'est que j'ai un premier 403 puis ça redevient OK puis ça repart en 403
Ça peut provenir du MPM que tu utilises, j'imagine qu'il faut que les processus (ou les threads) qui répondent aux requêtes et qui "décident" du blocage mettent un certain temps pour "propager" la nécessité du blocage aux autres.
Par contre, aucune idée pour le délai de 5 secondes.
Sébastien Maccagnoni - https://www.maccagnoni.eu - https://www.domotego.com
Hors ligne
#3 Le 29/01/2015, à 21:38
- seabird2_fr
Re : mod_evasive et DOSBlockingPeriod
Bonsoir,
C'est vrai que je n'ai toujours aucune idée concernant ce délai au alentour de 5s.
J'ai testé avec plusieurs valeurs différentes et toujours ces 5s. Il y a quelque chose qui apparemment prend le pas sur DOSBlockingPeriod.
Je cherche toujours...
Eric
Hors ligne
#4 Le 29/01/2015, à 21:59
- tiramiseb
Re : mod_evasive et DOSBlockingPeriod
À tout hasard, que donne la commande suivante ?
grep -r DOS /etc/apache2
Sébastien Maccagnoni - https://www.maccagnoni.eu - https://www.domotego.com
Hors ligne
#5 Le 29/01/2015, à 22:03
- seabird2_fr
Re : mod_evasive et DOSBlockingPeriod
Voilà ce que j'obtiens.
root@servertest:/home# grep -r DOS /etc/apache2
/etc/apache2/magic:#0 leshort 0x76FF squeezed data (CP/M, DOS)
/etc/apache2/magic:#0 leshort 0x76FE crunched data (CP/M, DOS)
/etc/apache2/magic:# DOS
/etc/apache2/mods-available/mod-evasive.conf: DOSHashTableSize 3097
/etc/apache2/mods-available/mod-evasive.conf: DOSPageCount 2
/etc/apache2/mods-available/mod-evasive.conf: DOSPageInterval 5
/etc/apache2/mods-available/mod-evasive.conf: DOSSiteCount 10
/etc/apache2/mods-available/mod-evasive.conf: DOSSiteInterval 5
/etc/apache2/mods-available/mod-evasive.conf: DOSBlockingPeriod 600
/etc/apache2/mods-available/mod-evasive.conf: DOSLogDir "/var/log/mod_evasive"
/etc/apache2/mods-available/mod-evasive.conf: #DOSWhitelist 127.0.0.1
Hors ligne
#6 Le 29/01/2015, à 22:16
- tiramiseb
Re : mod_evasive et DOSBlockingPeriod
Bon, tu n'as donc pas de configuration qui serait appliquée dans un autre fichier...
Il n'y a rien dans les logs d'Apache, notamment lorsque tu le relances, à ce propos ?
Sébastien Maccagnoni - https://www.maccagnoni.eu - https://www.domotego.com
Hors ligne
#7 Le 29/01/2015, à 22:29
- seabird2_fr
Re : mod_evasive et DOSBlockingPeriod
Je ne vois rien de particulier dans /var/log/apache2/access.log
xx.xxx.xx.xxx - - [29/Jan/2015:22:21:46 +0100] "GET /bid.php HTTP/1.1" 200 347 "-" "Mozilla/5.0 (Windows NT 6.3; WOW64; rv:35.0) Gecko/20100101 Firefox/35.0"
xx.xxx.xx.xxx - - [29/Jan/2015:22:21:58 +0100] "GET /bid.php HTTP/1.1" 200 347 "-" "Mozilla/5.0 (Windows NT 6.3; WOW64; rv:35.0) Gecko/20100101 Firefox/35.0"
xx.xxx.xx.xxx - - [29/Jan/2015:22:21:59 +0100] "GET /bid.php HTTP/1.1" 200 346 "-" "Mozilla/5.0 (Windows NT 6.3; WOW64; rv:35.0) Gecko/20100101 Firefox/35.0"
xx.xxx.xx.xxx - - [29/Jan/2015:22:22:00 +0100] "GET /bid.php HTTP/1.1" 200 346 "-" "Mozilla/5.0 (Windows NT 6.3; WOW64; rv:35.0) Gecko/20100101 Firefox/35.0"
xx.xxx.xx.xxx - - [29/Jan/2015:22:22:01 +0100] "GET /bid.php HTTP/1.1" 403 427 "-" "Mozilla/5.0 (Windows NT 6.3; WOW64; rv:35.0) Gecko/20100101 Firefox/35.0"
xx.xxx.xx.xxx - - [29/Jan/2015:22:22:10 +0100] "GET /bid.php HTTP/1.1" 200 347 "-" "Mozilla/5.0 (Windows NT 6.3; WOW64; rv:35.0) Gecko/20100101 Firefox/35.0"
xx.xxx.xx.xxx - - [29/Jan/2015:22:22:11 +0100] "GET /bid.php HTTP/1.1" 200 346 "-" "Mozilla/5.0 (Windows NT 6.3; WOW64; rv:35.0) Gecko/20100101 Firefox/35.0"
Je vois bien la page bloquée à 22:22 et débloquée à 22:22:10
Dernière modification par seabird2_fr (Le 29/01/2015, à 22:30)
Hors ligne
#8 Le 29/01/2015, à 22:31
- tiramiseb
Re : mod_evasive et DOSBlockingPeriod
Dans le "error.log" au moment du redémarrage.
Sébastien Maccagnoni - https://www.maccagnoni.eu - https://www.domotego.com
Hors ligne
#9 Le 29/01/2015, à 22:39
- seabird2_fr
Re : mod_evasive et DOSBlockingPeriod
Rien de particulier non plus sauf le message lors du blocage:
[Thu Jan 29 22:36:38 2015] [error] [client xxx.xxx.xxx.xxx] client denied by server configuration: /home/testsite/www/bid.php
Visiblement, je ne suis pas le seul à avoir ce problème:
http://mail-archives.apache.org/mod_mbo … ail.com%3E
Dernière modification par seabird2_fr (Le 29/01/2015, à 22:52)
Hors ligne
#10 Le 31/01/2015, à 13:30
- LeoMajor
Re : mod_evasive et DOSBlockingPeriod
De mémoire, pour DOSBlockingPeriod > 10, ll faut utiliser DOSSystemCommand, pour créer un log sur mesure, et parser analyser avec fail2ban.
DOSSystemCommand "(/bin/echo $(/bin/date) evasive: %s ip bannie) >> /var/log/mod-evasive/dos_evasive.log"
Pour DOSBlockingPeriod < 10, c'est inutile;
DOSBlockingPeriod 6
A remarquer, que le mod-evasive est pour simuler, ce qu'un humain peut faire, a contrario d'un bot. Par extension, DOS ... Ce forum en est équipé, lorsqu'apache est utilisé ( un message s'affiche sur le forum, en disant un truc "veuillez patienter 10 secondes ..., ", lorsqu'on sollicite trop de requêtes en peu de temps).
En ce moment, c'est Koala web server, qui tourne, donc pas de mod_evasive
Pour les attaques signées, les aspirateurs de site, les logiciels de vulnérabilté, wget ..., bref, l'user-agent est détectable, et le mode opératoire aussi (voir log), il y a un exemple avec env=bad_bot (voir phpmyadmin)
Hors ligne
#11 Le 31/01/2015, à 14:31
- seabird2_fr
Re : mod_evasive et DOSBlockingPeriod
Bonjour,
De mémoire, pour DOSBlockingPeriod > 10, ll faut utiliser DOSSystemCommand, pour créer un log sur mesure, et parser analyser avec fail2ban.
DOSSystemCommand "(/bin/echo $(/bin/date) evasive: %s ip bannie) >> /var/log/mod-evasive/dos_evasive.log"
Pour DOSBlockingPeriod < 10, c'est inutile;
DOSBlockingPeriod 6
Ok , merci, je vais voir ça. En plus, je veux l'utiliser avec fail2ban.
Ce qui est étonnant, lorsque j'ai parcouru le web, c'est qu'à aucun moment je vois ce problème de DOSBlockingPeriod > 10 . Pourtant très souvent ils ont des valeurs > 10.
Eric
Dernière modification par seabird2_fr (Le 31/01/2015, à 14:32)
Hors ligne
#12 Le 31/01/2015, à 14:52
- LeoMajor
Re : mod_evasive et DOSBlockingPeriod
Ce qui est étonnant...
je ne sais pas. cela a été peut-être corrigé
Ensuite, selon la webapplication, mod_evasive peut être contre-productif ou à re-configurer. Par exemple, une galerie de miniatures photos, avec des effets décoratifs (animation), où il y a beaucoup de requêtes; evasive peut faire planter l'animation.
Dernière modification par Tewis (Le 31/01/2015, à 14:56)
Hors ligne
Pages : 1