Un site WordPress n’est pas plus fragile qu’un autre, mais il est très répandu, donc très visé. Des robots parcourent le web en permanence à la recherche de versions obsolètes, de mots de passe faibles et d’extensions vulnérables. La plupart des piratages ne sont pas des attaques sophistiquées : ils exploitent une mise à jour oubliée ou un accès mal protégé.
La bonne nouvelle, c’est que quelques habitudes bloquent l’essentiel des attaques. Voici une démarche complète, de la prévention à la réaction après un incident. Un site piraté perd aussi sa visibilité : consultez en parallèle nos 15 erreurs qui empêchent un site d’être visible sur Google.
À retenir
- Mettre à jour WordPress, les thèmes et les extensions est la mesure la plus efficace.
- Mots de passe robustes, double authentification et limitation des tentatives protègent la connexion.
- Réduisez la surface d’attaque : peu d’extensions, des permissions strictes, des fonctions inutiles désactivées.
- Sauvegardez régulièrement et testez la restauration : c’est votre assurance.
1. Comprendre les menaces les plus courantes
Les attaques contre WordPress suivent quelques schémas. Les attaques par force brute testent des milliers de mots de passe sur la page de connexion. L’exploitation de failles dans des extensions ou des thèmes obsolètes permet d’injecter du code ou de créer un administrateur caché. Les logiciels malveillants envoient du spam, redirigent les visiteurs ou volent des données. Les injections SQL et les failles XSS visent les formulaires et les paramètres mal protégés.
Les extensions et thèmes sont la première source de vulnérabilités, bien plus que le cœur de WordPress, régulièrement audité. Les extensions abandonnées ou téléchargées depuis des sources non officielles sont particulièrement dangereuses : un thème « premium » piraté gratuitement contient souvent une porte dérobée.

Connaître ces menaces aide à prioriser. Inutile d’installer dix outils de protection si WordPress n’est pas à jour ou si l’administrateur utilise « motdepasse123 ».
2. Tout garder à jour
Les mises à jour corrigent des failles connues. Un attaquant n’a qu’à chercher les sites qui ne les ont pas appliquées. Activez les mises à jour automatiques de sécurité du cœur (actives par défaut pour les versions mineures) et, pour les extensions et thèmes de confiance, activez-les depuis la liste des extensions. Vérifiez la compatibilité de la version de PHP : une version ancienne, qui ne reçoit plus de correctifs, est un risque.
Pour les sites importants, testez les mises à jour majeures sur un site de préproduction avant de les appliquer. Faites une sauvegarde avant chaque mise à jour. Supprimez les extensions et thèmes inactifs : désactivés, ils restent présents sur le serveur et peuvent être exploités.
3. Protéger la connexion : mots de passe, 2FA et limitation
Utilisez un mot de passe long et unique pour chaque compte, généré par un gestionnaire de mots de passe. Évitez le nom d’utilisateur « admin », créez un compte administrateur avec un identifiant moins prévisible et donnez aux autres utilisateurs le rôle minimal dont ils ont besoin : auteur ou éditeur plutôt qu’administrateur.
Activez l’authentification à deux facteurs (2FA) : un code temporaire généré par une application s’ajoute au mot de passe. Même un mot de passe volé ne suffit plus. Plusieurs extensions de sécurité et d’authentification proposent cette option.
Limitez les tentatives de connexion : après quelques échecs, l’adresse IP est temporairement bloquée. Des extensions comme Limit Login Attempts Reloaded ou celles des suites de sécurité le font sans configuration complexe. Vous pouvez aussi masquer ou déplacer la page de connexion, ou la protéger par une règle du serveur ; cela réduit le bruit, sans remplacer le reste.

4. Réduire la surface d’attaque
Moins il y a de code et de fonctions exposées, moins il y a de risques. Désactivez l’éditeur de fichiers de l’administration, qui permet à un attaquant connecté de modifier le code PHP en direct, avec une ligne dans wp-config.php. Ajoutez aussi la limitation des installations depuis l’administration si vous gérez le site par déploiement.
// wp-config.php
define( 'DISALLOW_FILE_EDIT', true );
// Optionnel : empêcher toute installation ou mise à jour depuis l’admin
// define( 'DISALLOW_FILE_MODS', true );XML-RPC est une ancienne interface qui permet d’envoyer de nombreuses tentatives de connexion en une seule requête. Si vous n’utilisez pas d’application qui en dépend, désactivez-la par une règle du serveur ou une extension. Surveillez également l’API REST : bloquez l’énumération des utilisateurs si vous n’en avez pas l’usage, comme expliqué dans notre guide sur les sites WordPress préparés aux moteurs d’IA, qui insiste aussi sur la propreté technique.
Changez le préfixe des tables à l’installation et protégez les fichiers sensibles. Dans .htaccess (serveur Apache), interdisez l’accès direct à wp-config.php.
# .htaccess : protéger wp-config.php
<files wp-config.php>
order allow,deny
deny from all
</files>5. Permissions de fichiers et configuration du serveur
Les fichiers et dossiers d’un site doivent avoir des droits restrictifs. La recommandation courante : 755 pour les dossiers (ou 750), 644 pour les fichiers (ou 640), et 600 ou 640 pour wp-config.php. N’utilisez jamais 777, qui autorise tout le monde à écrire. Vérifiez que le propriétaire des fichiers est le bon compte système, et que PHP ne peut pas écrire partout.
Interdisez l’exécution de PHP dans le dossier des téléversements (wp-content/uploads) : un attaquant qui y dépose un fichier malveillant ne pourra pas le lancer. Votre hébergeur peut le faire pour vous ; sinon, une règle de serveur suffit.
Déplacez wp-config.php un niveau au-dessus de la racine web si l’hébergement l’autorise : WordPress le trouve automatiquement. Génèrez enfin de nouvelles clés de sécurité (les « salts ») si vous suspectez un vol de session : tous les utilisateurs seront déconnectés.

6. HTTPS, en-têtes de sécurité et pare-feu applicatif
Le HTTPS chiffre les échanges entre le visiteur et votre site et protège les mots de passe en transit. Presque tous les hébergeurs proposent des certificats gratuits. Redirigez tout le trafic http vers https, utilisez l’en-tête HSTS une fois le site stable et corrigez les contenus mixtes.
Des en-têtes HTTP complémentaires renforcent la protection : X-Content-Type-Options, X-Frame-Options (ou la directive frame-ancestors), Referrer-Policy et, pour les sites avancés, une Content-Security-Policy. Testez-les avec précaution, car une politique trop stricte peut casser des fonctionnalités.
Un pare-feu applicatif (WAF) filtre les requêtes malveillantes avant qu’elles n’atteignent WordPress. Il peut être fourni par votre hébergeur, par un service de CDN et de protection, ou par une extension. Il bloque de nombreuses attaques automatisées, mais ne remplace ni les mises à jour ni de bons mots de passe.
7. Sauvegardes et surveillance
Aucune protection n’est parfaite : la sauvegarde est votre filet de sécurité. Appliquez la règle 3-2-1 : trois copies, sur deux supports différents, dont une hors de votre hébergement. Sauvegardez les fichiers et la base de données, et programmez la fréquence selon la fréquence de publication (quotidienne pour un site actif).
Une sauvegarde qui n’a jamais été restaurée n’est qu’une hypothèse. Testez la restauration sur un site de test au moins une fois par an. Conservez plusieurs versions : si un site est infecté depuis dix jours, la sauvegarde d’hier est contaminée aussi.
Surveillez enfin l’activité : un journal des actions (qui s’est connecté, quelle extension a été installée), une alerte en cas de modification de fichiers du cœur, un contrôle de disponibilité du site et la surveillance de Search Console, qui avertit en cas de problèmes de sécurité détectés. Plus tôt vous détectez, moins les dégâts sont importants.

8. Que faire si votre site est piraté
Premier réflexe : ne paniquez pas et agissez dans l’ordre. Mettez le site en maintenance, prévenez votre hébergeur, et changez immédiatement tous les mots de passe (WordPress, base de données, FTP, hébergement). Faites une copie du site infecté pour analyse avant de nettoyer.
Ensuite, soit vous restaurez une sauvegarde saine antérieure à l’infection puis appliquez toutes les mises à jour, soit vous nettoyez : réinstallez le cœur de WordPress depuis une source officielle, réinstallez les extensions et thèmes, recherchez les fichiers inconnus et les administrateurs suspects, et vérifiez la base de données. Un scanner de logiciels malveillants aide à repérer les fichiers modifiés.
Identifiez ensuite la cause (extension vulnérable, mot de passe compromis) et corrigez-la, sinon l’attaque se reproduira. Si Google a signalé le site comme dangereux, corrigez le problème puis demandez un nouvel examen dans Search Console. Informez vos utilisateurs si des données personnelles ont pu être exposées : le RGPD impose des obligations en cas de violation.
Une fois le site rétabli, relisez notre article sur le SEO technique de WooCommerce si vous gérez une boutique : la remise en ligne d’un grand nombre de pages demande de vérifier l’indexation.
Checklist : sécuriser WordPress
À cocher avant de passer à autre chose
- ☐ WordPress, thèmes et extensions sont à jour
- ☐ Les extensions et thèmes inutilisés sont supprimés
- ☐ Les mots de passe sont uniques et la 2FA est activée
- ☐ Les tentatives de connexion sont limitées
- ☐ DISALLOW_FILE_EDIT est activé et les droits de fichiers sont stricts
- ☐ Le site est en HTTPS avec des en-têtes de sécurité
- ☐ Une sauvegarde hors site est testée
- ☐ Un plan d’action existe en cas de piratage
Conclusion
Sécuriser WordPress n’exige pas d’être expert : mises à jour régulières, accès solides, peu d’extensions, droits de fichiers stricts, HTTPS et sauvegardes testées protègent contre la grande majorité des attaques. Surtout, ne remettez pas ces tâches à plus tard : un incident coûte bien plus cher en temps, en confiance et en visibilité. Pour que votre site reste bien classé, appuyez-vous aussi sur notre guide du SEO et de l’IA.
Prochaine étape
Votre site est protégé ? Vérifiez maintenant qu’il n’est pas freiné par des erreurs de référencement.
Lire les 15 erreurs SEO à éviter