ZB-Block.jpg

J'ai découvert par hasard l'existence de ZB Block, un script PHP qui permet de protéger votre site contre différents types attaques : SQL injection, Spam bot ...

ZB Block s'installe simplement, il suffit de dézipper le contenu du zip dans un répertoire de votre site, de lancer la procédure d'installation et de réaliser un "include" du script dans la page index.php de votre site pour le rendre actif.
Une fois en place, il filtrera toutes les requêtes HTTP entrantes vers votre site et sera en mesure de délivrer des erreurs HTTP de type 403 si il reçoit une tentative d'attaque ou de type 503 si les attaques reçues persistent.

Le fonctionnement de cet outil est très simple et se base principalement sur des expressions régulières. La base de données des signatures étant assez importante, il faudra tout de même faire attention que ce script ne dégrade pas trop les performances de vos pages Web.

Voici un exemple de règles présentes dans le fichier de signatures :


// *Query Scans
$ax += inmatch($querydec,"*/","RFI attack/SQL injection (QU-001). ");
$ax += inmatch($querydec,"/*","RFI attack/SQL injection (QU-002). ");
$ax += inmatch($query,"%u","Injection (Unicode ASCII escaping) (QU-003). ");
.....


Les utilisateurs de l'outil ont la possibilité d'enrichir cette base de signatures avec leurs propres règles de filtrage si ils le souhaitent.

Un forum actif d'utilisateurs maintient cette base de signatures assez régulièrement. Si vous mettez cet outil en place sur votre blog ou votre forum, il faudra ne pas oublier de mettre à jour la base de données de signatures pour pouvoir bloquer les derniers bots découverts par la communauté.

Cet outil est une très belle initiative, couplé avec un outil comme Failtoban il peut devenir très agressif. Il faudra cependant faire attention que les différentes règles en place soient compatibles avec votre site Internet et n'empêcheraient pas certains visiteurs d'accéder à certains contenus de votre site.

Les règles par défaut sont très agressives et bloquent de nombreux comportements. A titre d'exemple, sur ce blog, 5 clients se sont fait bannir en moins de 2 minutes ...

///
Host: vladimir.twt.yandex.net
IP: 100.43.81.9
Score: 1
Violation count: 1 INSTA-BANNED
Why blocked: Yandex is banned. INSTA-BAN (HN-110). You have been instantly banned due to extremely hazardous behavior!
Query: utm_source=feedburner&utm_medium=twitter&utm_campaign=Feed%3A+blog-de-geeek+%28Geeek%29
Referer:
User Agent: Mozilla/5.0 (compatible; TweetedTimes Bot/1.0; +http://tweetedtimes.com)
Reconstructed URL: http:// www.geeek.org /bonne-annee-2013-les-geeks-640.html?utm_source=feedburner&utm_medium=twitter&utm_campaign=Feed%3A+blog-de-geeek+%28Geeek%29
///

Que pensez-vous de cet outil ? Est-ce que vous l'utiliseriez sur votre site Internet ? Connaissez-vous des alternatives ?

Plus d'infos sur : http://www.spambotsecurity.com/zbblock.php