web-dev-qa-db-fra.com

Comment répondre aux attaques sur le site web

J'ai wordpress site soumis à une sorte d'attaque de bot. J'ai vérifié les journaux Apache et il y a une requête à la recherche d'un post sur mon blog chaque seconde (parfois plus d'une par seconde). Lorsque je bloque l’adresse IP de l’attaquant dans le fichier htaccess, les demandes continuent, mais c’est une toutes les 5 à 10 secondes. Si je le débloque, après quelques minutes, il revient à 1 ou plus toutes les secondes.

L'adresse IP de l'attaquant change une ou deux fois par jour.

J'ai un plugin WordFence installé qui bloque les attaques, j'ajoute aussi manuellement les adresses IP à htaccess, mais je suis intéressé s'il y a un autre moyen de bloquer ce type pour de bon ...

Il est toujours identifié comme un agent utilisateur vide, reçoit toujours la même page et il ne s'agit toujours que d'une seule demande de page.

Voici une partie du journal Apache avec attaque.

178.222.186.246 - - [20/May/2013:02:35:46 -0500] "GET /2012/01/19/skembici-u-saftu/ HTTP/1.1" 200 48097 "-" "-"
178.222.186.246 - - [20/May/2013:02:35:55 -0500] "GET /2012/01/19/skembici-u-saftu/ HTTP/1.1" 200 47939 "-" "-"
178.222.186.246 - - [20/May/2013:02:35:59 -0500] "GET /2012/01/19/skembici-u-saftu/ HTTP/1.1" 200 47970 "-" "-"
2
onedevteam.com

Puisque l'agent utilisateur est vide, vous pourriez l'utiliser pour déclencher un blocage :

RewriteEngine On  
SetEnvIfNoCase User-Agent "^-?$" bad_user
Deny from env=bad_user

Je mets dans -? au cas où l'agent d'utilisateur envoyé est en réalité un tiret. Il est très difficile de savoir à partir de vos journaux s’il s’agit réellement d’un blanc ou d’un tiret.

La ressource liée sur StackOverflow contient également des exemples de plusieurs autres règles basées sur User-Agent et Referrer.

2