Security Blog
Security Blog

Limiter les tentatives de connexion sans plugin ?

Comment protéger la page de connexion WordPress sans utiliser de plugin


English version: Limit login attempts without a plugin?


Vous pouvez trouver de nombreux commentaires et conseils à ce sujet sur Internet. Mais est-ce réel ?

Par défaut, WordPress autorise des tentatives de connexion illimitées via le formulaire de connexion, l'envoi de cookies spéciaux, l'utilisation d'appels XML-RPC et d'appels d'API REST. Cela permet de déchiffrer les mots de passe avec une relative facilité via une attaque par force brute. De nos jours, les pirates et les robots essaient constamment de se connecter à votre site WordPress en devinant votre mot de passe administrateur et les mots de passe des autres utilisateurs enregistrés sur le site. Donc, si vous souhaitez protéger votre site sans utiliser de plugin, vous avez besoin de :

  1. Connaître bien PHP .
  2. Apprenez-en suffisamment sur le filtre et l'action d'authentification (intégrés à WordPress) pour les utiliser. Je recommande de commencer par des hooks comme « authenticate » et « wp_login_failed ».
  3. Suivez le formulaire de connexion aux publications, les demandes d'autorisation XML RPC et REST API, et oui, n'oubliez pas les cookies d'autorisation (sont-ils valides ?).
  4. Stockez quelque part toutes les tentatives avec toutes les tentatives de connexion et toutes les adresses IP pour calculer quand et quelle IP vous devez bloquer. Je recommande d'utiliser l'API Transient. Sérieusement. C'est le moyen le plus simple. Bien sûr, vous ne pouvez pas le contrôler, mais son utilisation vous permet de faire quelque chose sans connaissance de SQL.
  5. Calculez le temps entre les tentatives de connexion infructueuses pour une adresse IP particulière.
  6. Vous disposez d'un outil ou d'un code PHP pour réinitialiser l'un de ces compteurs et bloquer l'adresse IP du client. Que se passe-t-il si un client légitime est bloqué par hasard ?

Cela semble fou ? Vous avez une deuxième option. Vous pouvez rechercher sur Google et récupérer des extraits de code sur un blog sur Internet sans aucune garantie ni assistance.

Conclusion : Vous pouvez trouver sur Internet de nombreux conseils sur la façon de limiter les tentatives de connexion sans plugin. Mais tous les conseils sont donnés par des personnes qui ne savent même pas exactement comment fonctionne l'algorithme d'authentification de WordPress, y compris ces gentils gars de stackoverflow. Mais, de toute façon, vous pouvez le faire, si vous ne vous souciez vraiment pas de la sécurité de votre site, car il n'y a aucune option pour le faire correctement sans compétences en codage PHP et connaissance du mécanisme d'authentification de WordPress.

S'il y a quelque chose d'étrange sur votre site, qui allez-vous appeler ?


I'm a team lead in Cerber Tech. I'm a software & database architect, WordPress - PHP - SQL - JavaScript developer. I started coding in 1993 on IBM System/370 (yeah, that was amazing days) and today software engineering at Cerber Tech is how I make my living. I've taught to have high standards for myself as well as using them in developing software solutions.

View Comments
There are currently no comments.