Ce que vous voulez, c'est Fail2ban (en supposant qu'il s'agisse d'une machine linux, vous n'avez pas dit ...)
Qu'est-ce que Fail2ban?
Fail2ban analysera les journaux système pour rechercher les expressions régulières à bloquer. Lorsqu'il trouve une correspondance (ou plusieurs correspondances provenant de la même adresse IP, selon la manière dont vous l'avez configurée), il se bloque, généralement via IPTables. Généralement, cette option est utilisée pour bloquer les tentatives d’authentification ayant échoué contre SSH ou des serveurs Web.
Vous le configurez pour les interdire pendant un certain temps (il peut s'agir de minutes, de jours ... dépend de leur persistance), après quoi l'interdiction expirera, à moins qu'ils n'essayent à nouveau.
Comment cela aide-t-il à bloquer les robots d'analyse de phpmyadmin?
Il peut tout aussi bien être utilisé pour faire correspondre les signes courants d’une attaque, comme tenter d’accéder à des dossiers phpmyadmin non existants. Vous devrez trouver la bonne expression régulière pour correspondre à de telles tentatives et vous assurer de ne pas bloquer les utilisateurs légitimes.
La configuration donnée dans cet article de blog peut fonctionner verbatium ou nécessiter quelques ajustements pour votre configuration.
Pourquoi devrais-je les bloquer? Les erreurs 404 ne coûtent pas cher
Les bloquer dans iptables a une certaine utilité - s'ils vérifient les vulnérabilités de phpmyadmin, il est probable qu'ils essaieront également d'autres services pour les vulnérabilités, jusqu'à ce qu'ils rencontrent quelque chose qui fonctionne. Si vous les bannissez, la plupart des scripts / scripts abandonneront après un certain temps et ils passeront à de meilleures cibles.
Même si les analyses ne coûtent pas cher (sauf si elles trouvent réellement une vulnérabilité), elles inondent vos journaux, ce qui rend plus difficile la détection d'attaques réussies et de problèmes avec votre serveur Web.
Comme le dit le commentaire ci-dessous, Fail2ban nécessite certaines ressources système. Mais pas beaucoup. À tout le moins, je peux dire que je n’ai jamais eu un problème de performance que je pourrais attribuer à Fail2ban. J'ai toutefois eu des problèmes de performances avec des scripts très agressifs qui essayaient de forcer brutalement les mots de passe ou qui lançaient des milliers de tentatives d'injection SQL et d'autres exploits par seconde sur mon serveur. Les bloquer au niveau du pare-feu nécessite FAR moins de ressources que les bloquer au niveau du serveur / de l'application. Il peut également être étendu pour exécuter des scripts personnalisés pour interdire les adresses IP. Ainsi, au lieu de les interdire dans IPtables, vous pouvez éventuellement les interdire dans un pare-feu matériel ou envoyer un e-mail à quelqu'un si la même personne continue de vous attaquer pour pouvoir vous plaindre. auprès de votre fournisseur de services Internet ou demandez à votre centre de données de les bloquer sur leur pare-feu.
Des autres conseils?
Il est FORTEMENT RECOMMANDÉ de mettre en liste blanche quelques adresses IP que vous contrôlez afin de ne pas vous verrouiller accidentellement.