1 votes

Comment bloquer l'accès à de faux liens qui n'existent pas ?

J'ai remarqué dans mon compte Google Analytics que mon site web est soudainement frappé par une grande quantité de trafic de spam qui détruit les statistiques des visiteurs. Le serveur web fonctionne sous Ubuntu 18.04 et Apache.

Il ne s'agit même pas d'un spam de référence dont on pourrait retrouver la source, mais plutôt d'un spam automatisé vers des liens qui n'existent pas sur mon site, probablement dans le but de trouver des fichiers infectés. Les robots spammeurs n'utilisent pas l'URL complète et ne visitent que certains liens de sous-répertoires, par exemple :

/INVOICE-CT/11.php
/INVOICE-CT/1.php
/INVOICE-CT/counter/counter.php
/INVOICE-CT/process.php
/CT/b432.html
/CT/b136.html
/CT/c1428.html
/CT/b246.html
/CT/b510.html
/ct/0295.html
/CT/b118.html
/ct/b385.html
/CT/b738.html
/ct/c1559.html

Quel est le meilleur moyen de bloquer ce type de trafic dans les pays suivants .htaccess ?

Idéalement, cela ne devrait pas interférer avec les erreurs 404 "générées par l'homme".

Comme Google Analytics ne révèle pas les IP des visiteurs, comment identifier les IP des robots dans Ubuntu pour ensuite les bloquer ?

J'apprécierais vos conseils.

1voto

MrWhite Points 11269

Vous pourriez faire quelque chose comme ce qui suit dans .htaccess pour bloquer toutes les URL qui commencent par /INVOICE-CT/ o /CT/ . Cette méthode utilise mod_rewrite pour renvoyer un document d'erreur 404 généré par le système (ou un document d'erreur Apache personnalisé si vous avez défini un fichier de type ErrorDocument ):

RewriteEngine On
RewriteRule ^(invoice-)?ct/ - [R=404]

Si votre document d'erreur ne contient pas le code GA, GA n'enregistrera pas la demande.

Idéalement, cela ne devrait pas interférer avec les erreurs 404 "générées par l'homme".

Je suppose que les autres 404 sont générés par votre application web, et non par Apache ? Sinon, nous devrions repenser l'approche ci-dessus et réécrire vers une autre URL à la place.

Comme Google Analytics ne révèle pas les IP des visiteurs, comment identifier les IP des robots dans Ubuntu pour ensuite les bloquer ?

Il est évident que cette méthode ne permet pas d'identifier les adresses IP des robots. Toute demande vers ces URL totalement invalides seront bloqués de la même manière. L'identification de ces bots malveillants n'est pas une tâche triviale et est probablement mieux réalisée avec un module de serveur comme mod_security ou fail2ban.

Quel est le meilleur moyen de bloquer ce type de trafic dans les pays suivants .htaccess ?

La "meilleure façon" est probablement de ne pas utiliser .htaccess (ou la configuration d'Apache), mais dans votre application web elle-même (afin de donner la priorité au "bon" trafic). Une fois que votre application a déterminé qu'il s'agit d'un 404, vérifiez l'URL demandée. S'il s'agit de l'une de ces URL totalement invalides, servez un simple document 404 (non GA), sinon servez votre document d'erreur 404 standard (qui contient le code GA).

...une grande quantité de trafic de spam qui détruit les statistiques des visiteurs.

Bien que l'on puisse supposer que ce "trafic de spam" génère déjà des 404 et ne touche pas vos véritables URL ?

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X