En bref :
- Une attaque par force brute teste automatiquement des milliers de mots de passe sur votre page de connexion WordPress
- Un ralentissement du site, des pics de trafic sur
wp-login.phpou des emails d’échec de connexion sont les signes à surveiller - Limiter les tentatives, activer la double authentification et changer l’URL de connexion réduisent drastiquement le risque
Vous avez déjà reçu une avalanche d’emails « Échec de connexion » sans avoir rien tenté vous-même ? Ou remarqué que votre hébergeur signale une activité anormale sur votre compte ? Il y a de fortes chances qu’il s’agisse d’une attaque par force brute. Ce type d’attaque ne vise pas une faille technique sophistiquée : il exploite simplement la patience et la puissance de calcul, en testant des identifiants jusqu’à en trouver un qui fonctionne. Pour un dirigeant de TPE ou PME qui gère seul son site WordPress, ce genre d’alerte peut être source d’inquiétude légitime, d’autant que la page de connexion est souvent la porte la moins surveillée du site. Ce guide explique comment reconnaître une attaque en cours, comprendre pourquoi WordPress est une cible si fréquente, et surtout comment fermer durablement cette porte d’entrée sans y passer des heures.
Les symptômes fréquents d’une attaque par force brute
La première alerte est souvent indirecte : le site ralentit sans raison apparente, ou l’hébergeur envoie une notification concernant une consommation anormale de ressources. Une attaque par force brute génère en effet des milliers, parfois des dizaines de milliers de requêtes en quelques heures, chacune consommant un peu de mémoire et de temps processeur pour vérifier les identifiants soumis. Sur un hébergement mutualisé, cela peut suffire à ralentir non seulement votre site, mais aussi ceux qui partagent le même serveur, ce qui explique pourquoi certains hébergeurs suspendent temporairement un compte le temps de comprendre ce qui se passe.
Le second symptôme, plus direct, ce sont les emails WordPress signalant des échecs de connexion répétés à l’identifiant admin ou à votre nom d’utilisateur réel. Si votre thème ou un plugin de sécurité envoie ce type de notification, vous verrez apparaître des dizaines de messages en peu de temps, souvent depuis des adresses IP différentes et des pays variés. C’est la signature typique d’un botnet : un réseau d’ordinateurs compromis qui distribue l’attaque pour éviter d’être bloqué trop vite par une seule adresse IP.
Repérer une attaque dans les journaux du serveur
Si vous avez accès aux journaux d’accès (via cPanel, Plesk ou l’interface de votre hébergeur), une recherche du terme wp-login.php ou xmlrpc.php révèle très vite l’ampleur du phénomène. Il n’est pas rare de trouver plusieurs centaines de requêtes vers ces fichiers en une seule journée, alors qu’un usage normal n’en génère que quelques-unes par jour, correspondant à vos propres connexions. Le fichier xmlrpc.php mérite une attention particulière : c’est une interface historique de WordPress qui permet l’authentification à distance, et elle est massivement détournée pour tester des combinaisons d’identifiants en dehors de l’interface de connexion classique.
Différencier une attaque en cours d’une simple curiosité
Toutes les visites sur votre page de connexion ne sont pas malveillantes : des robots d’indexation, des outils de scan de sécurité légitimes ou même vos propres oublis de mot de passe peuvent générer quelques tentatives isolées. Ce qui distingue une véritable attaque, c’est le volume et la régularité : des tentatives toutes les quelques secondes, provenant d’adresses IP multiples, souvent avec des identifiants génériques comme admin, administrator ou le nom de domaine du site. Si vous constatez ce schéma, il est temps d’agir plutôt que d’espérer que cela s’arrête tout seul.
Pourquoi WordPress est une cible si fréquente
WordPress alimente plus de 40 % des sites web dans le monde, ce qui en fait une cible statistiquement rentable pour les attaquants : un script capable de tester automatiquement des identifiants sur des dizaines de milliers de sites WordPress finira toujours par trouver quelques installations mal protégées. L’emplacement de la page de connexion est en plus parfaitement connu et standardisé : /wp-login.php ou /wp-admin sur pratiquement toutes les installations par défaut, ce qui simplifie énormément le travail des robots par rapport à un système sur mesure dont l’URL d’administration serait imprévisible.
Le rôle des mots de passe faibles ou réutilisés
La plupart des attaques par force brute réussies ne cassent pas un mot de passe complexe par pure puissance de calcul : elles exploitent des mots de passe faibles, prévisibles, ou déjà compromis lors d’une fuite de données sur un autre service. Si vous utilisez le même mot de passe pour votre site WordPress et pour un compte en ligne qui a subi une fuite par le passé, ce mot de passe circule probablement déjà dans des bases de données utilisées par les attaquants. C’est ce qu’on appelle une attaque par credential stuffing, une variante de la force brute qui teste des combinaisons identifiant/mot de passe déjà connues plutôt que des combinaisons aléatoires.
L’absence de limitation native dans WordPress
Par défaut, WordPress n’impose aucune limite au nombre de tentatives de connexion. Un script peut donc essayer des milliers de mots de passe à la suite, sans délai ni blocage, tant qu’aucune extension de sécurité n’a été installée pour combler ce manque. Cette absence de protection native explique pourquoi la sécurisation de la page de connexion figure parmi les toutes premières mesures à prendre lors de la mise en place d’une maintenance WordPress régulière, bien avant de se pencher sur des optimisations plus avancées.
Les vérifications simples à faire
Avant de déployer de nouvelles protections, il est utile de faire un état des lieux rapide de votre configuration actuelle. Trois points méritent une vérification systématique : la robustesse du mot de passe administrateur, la présence ou non d’un plugin de limitation des tentatives de connexion, et l’exposition du fichier xmlrpc.php.
Vérifier la force du mot de passe administrateur
Connectez-vous à votre tableau de bord WordPress, allez dans Utilisateurs, puis modifiez votre profil administrateur. WordPress propose un générateur de mot de passe intégré qui crée automatiquement une combinaison longue et aléatoire : utilisez-le plutôt que d’inventer un mot de passe vous-même, même s’il vous semble complexe. Un gestionnaire de mots de passe (comme Bitwarden ou 1Password) permet ensuite de retenir ce mot de passe sans avoir à le mémoriser, ce qui élimine la tentation de le simplifier ou de le réutiliser ailleurs.
Comment vérifier qu’aucun compte administrateur superflu n’existe
Dans la même section Utilisateurs, passez en revue la liste complète des comptes et leurs rôles. Il arrive fréquemment qu’un ancien prestataire, un stagiaire ou un développeur ponctuel conserve un accès administrateur alors que sa mission est terminée depuis longtemps. Chaque compte administrateur actif est une porte d’entrée potentielle supplémentaire : supprimez ou rétrogradez tout compte qui n’a plus de raison d’avoir ce niveau de privilège.
Vérifier la présence d’une limitation des tentatives
Si aucun plugin de sécurité n’est installé, WordPress accepte un nombre illimité de tentatives de connexion consécutives. Des extensions comme Limit Login Attempts Reloaded, Wordfence ou WP Login LockDown ajoutent un blocage temporaire de l’adresse IP après un nombre défini d’échecs (généralement trois à cinq tentatives), ce qui rend une attaque automatisée beaucoup moins efficace en la ralentissant considérablement. L’installation se fait comme pour n’importe quelle extension, depuis Extensions > Ajouter, et la configuration par défaut suffit dans la majorité des cas.
Vérifier l’exposition de xmlrpc.php
Si votre site n’utilise pas l’application mobile WordPress ni de service tiers qui en dépend (comme certains plugins de publication automatique), le fichier xmlrpc.php peut être désactivé sans conséquence. La plupart des plugins de sécurité proposent une option dédiée pour le bloquer ; à défaut, quelques lignes ajoutées au fichier .htaccess (sur un hébergement Apache) permettent de restreindre l’accès à ce fichier. Cette étape technique gagne à être réalisée avec l’aide d’un professionnel si vous n’êtes pas à l’aise avec la modification de fichiers serveur, une erreur de syntaxe pouvant rendre le site inaccessible.
Les erreurs à éviter
La première erreur consiste à croire qu’un mot de passe complexe suffit à lui seul. Sans limitation du nombre de tentatives, même un mot de passe robuste reste théoriquement cassable par un script suffisamment patient, même si cela prendrait des années plutôt que des heures. La véritable protection vient de la combinaison de plusieurs mesures : mot de passe fort, limitation des tentatives, et idéalement double authentification.
La deuxième erreur fréquente est de renommer l’identifiant admin sans aller plus loin, en pensant avoir réglé le problème. Changer cet identifiant reste une bonne pratique, mais les attaquants testent aussi des variantes basées sur le nom de domaine ou des identifiants génériques comme contact ou le prénom du dirigeant trouvé sur la page « À propos ». Cette mesure seule ne remplace donc pas une véritable limitation des tentatives.
Enfin, certains dirigeants installent plusieurs plugins de sécurité en même temps, en pensant multiplier les protections. En réalité, plusieurs extensions qui interviennent sur le même mécanisme (par exemple deux plugins de limitation de connexion) peuvent entrer en conflit, générer des erreurs, voire bloquer l’accès légitime des administrateurs eux-mêmes. Une seule extension de sécurité complète et bien configurée est presque toujours préférable à un empilement de solutions partielles.
Un doute sur la sécurité de votre page de connexion WordPress ?
Régler ce problème maintenantQuand demander de l’aide
Si vous avez déjà constaté une compromission — connexion réussie non autorisée, fichiers modifiés, redirections suspectes — la priorité n’est plus la prévention mais l’assainissement du site, une démarche différente et plus urgente détaillée dans notre article sur la conduite à tenir face à un site WordPress piraté. En revanche, si vous constatez uniquement des tentatives de connexion suspectes sans signe de compromission avérée, il est encore temps d’agir en prévention, ce qui reste toujours plus simple et moins coûteux qu’une remise en état après incident.
Faire appel à un professionnel devient particulièrement pertinent si votre site gère des données sensibles (informations clients, paiements via WooCommerce) ou si vous manquez de temps pour surveiller régulièrement les journaux de connexion. Un accompagnement permet aussi de mettre en place une double authentification, une mesure très efficace mais parfois perçue comme technique à configurer seul : elle ajoute un code temporaire généré par une application mobile en plus du mot de passe, rendant une connexion réussie via force brute quasiment impossible même si le mot de passe est deviné.
| Mesure | Niveau de protection | Difficulté de mise en place |
|---|---|---|
| Mot de passe fort et unique | Modéré | Facile |
| Limitation des tentatives de connexion | Élevé | Facile (plugin) |
| Double authentification | Très élevé | Moyenne |
| Désactivation de xmlrpc.php | Modéré | Technique |
| Changement d’URL de connexion | Modéré (dissuasif) | Facile (plugin) |
Conclusion
Une attaque par force brute n’est pas un signe que votre site a été spécifiquement visé : c’est un phénomène automatisé et permanent qui touche l’immense majorité des sites WordPress, y compris ceux de petite taille. La bonne nouvelle, c’est que les protections efficaces contre ce type d’attaque ne demandent ni budget conséquent ni expertise technique poussée : un mot de passe fort, un plugin de limitation des tentatives et une double authentification suffisent à décourager la quasi-totalité des tentatives automatisées. Prendre quelques minutes pour mettre en place ces mesures aujourd’hui évite bien des complications demain.
Si vous préférez déléguer cette vérification et sa mise en œuvre plutôt que de vous en charger seul, je peux auditer votre configuration actuelle et sécuriser votre page de connexion en toute tranquillité.
Les signes principaux sont un ralentissement inexpliqué du site, des emails répétés signalant des échecs de connexion, et des pics de requêtes vers wp-login.php ou xmlrpc.php visibles dans les journaux du serveur.
Non. Sans limitation du nombre de tentatives, un script peut tester un nombre illimité de combinaisons. Un mot de passe fort doit être combiné à une extension de limitation des connexions et idéalement à une double authentification.
Uniquement si vous n’utilisez pas l’application mobile WordPress ni de service tiers qui en dépend. Dans ce cas, désactiver ce fichier réduit une surface d’attaque fréquemment exploitée par les scripts de force brute.
La force brute classique teste des combinaisons variées ou aléatoires de mots de passe, tandis que le credential stuffing utilise des identifiants déjà compromis lors de fuites de données sur d’autres sites, ce qui le rend souvent plus efficace.
Elle ajoute une étape supplémentaire (saisie d’un code temporaire depuis une application mobile) mais celle-ci prend quelques secondes seulement et peut être mémorisée sur un appareil de confiance pour limiter la friction au quotidien.