Points clés à retenir
- Sommaire
- 1. Mises à jour du cœur WordPress
- 2. Mises à jour des plugins
WordPress propulse plus de 43 % des sites web dans le monde. Cette popularité en fait également la cible privilégiée des cybercriminels. Selon le rapport de Sucuri 2025, plus de 60 % des sites WordPress piratés fonctionnaient avec une version obsolète du CMS, d'un plugin ou d'un thème. La bonne nouvelle ? La majorité des failles de sécurité peuvent être corrigées avec une maintenance rigoureuse.
Cette checklist de 25 points vous permettra d'évaluer la posture de sécurité de votre site WordPress et d'identifier les actions correctives prioritaires. Que vous gériez vous-même votre site ou que vous fassiez appel à un prestataire comme WpDefender, ces vérifications sont indispensables.
1. Mises à jour du cœur WordPress
Les mises à jour de sécurité du cœur WordPress sont publiées dès qu'une vulnérabilité est découverte. Ne pas les appliquer dans les 48 heures, c'est laisser la porte ouverte aux attaquants. Consultez nos 10 mesures de sécurité essentielles pour une protection de base complète.
Activez les mises à jour automatiques mineures dans wp-config.php :
define('WP_AUTO_UPDATE_CORE', 'minor');
Pour les mises à jour majeures, planifiez-les manuellement après avoir testé sur un environnement de staging. Un prestataire comme WpDefender peut gérer ce processus avec un environnement de pré-production pour éviter toute interruption.
2. Mises à jour des plugins
Les plugins représentent la première porte d'entrée des attaques sur WordPress. Selon WPScan, 94 % des vulnérabilités exploitées proviennent de plugins non mis à jour.
Conseils pratiques :
- Supprimez les plugins inutilisés — chaque plugin installé est une surface d'attaque potentielle
- Privilégiez les plugins maintenus régulièrement avec un historique de corrections rapides
- Utilisez un tableau de bord comme MainWP ou ManageWP pour superviser les mises à jour
- Au minimum, appliquez les mises à jour de sécurité sous 24 heures
3. Mises à jour des thèmes
Comme les plugins, les thèmes abandonnés ou mal maintenus exposent votre site à des risques. Un thème n'ayant pas reçu de mise à jour depuis plus de 6 mois devrait être remplacé.
Vérifiez régulièrement :
- La date de dernière mise à jour du thème actif
- La compatibilité avec la version actuelle de WordPress
- Les avis de sécurité publiés par les éditeurs
4. Mots de passe robustes
Un mot de passe WordPress faible peut être craqué en quelques secondes avec des outils comme John the Ripper. Utilisez des mots de passe de 16 caractères minimum, combinant lettres, chiffres et caractères spéciaux. Notre article sur les mots de passe WordPress sécurisés détaille les bonnes pratiques à suivre.
Bonnes pratiques :
- Utilisez un gestionnaire de mots de passe (1Password, Bitwarden, KeePass)
- Ne réutilisez jamais un mot de passe entre plusieurs comptes
- Changez le mot de passe administrateur tous les 90 jours
- Interdisez l'utilisation de mots de passe simples comme « admin » ou « password »
5. Authentification à deux facteurs (2FA)
La 2FA ajoute une couche de sécurité critique. Même si un attaquant obtient votre mot de passe, il ne pourra pas se connecter sans le second facteur.
Plugins recommandés pour la 2FA :
- Wordfence — solutions intégrées avec authentificateur mobile
- WP 2FA — compatible avec Google Authenticator et Authy
- Two Factor Authentication — léger et simple à configurer
Activez la 2FA au minimum pour tous les comptes administrateurs. Idéalement, étendez-la aux éditeurs et auteurs.
6. Sauvegardes automatiques
Une sauvegarde sans test de restauration n'est pas une sauvegarde. Selon les statistiques de l'industrie, 30 % des entreprises qui subissent une perte de données majeure ne survivent pas dans les 6 mois.
Stratégie recommandée :
- Sauvegardes quotidiennes automatiques (BaseDuplicate ou UpdraftPlus)
- Stockage hors site (Amazon S3, Google Drive, Dropbox)
- Tests de restauration mensuels sur un environnement staging
- Conservation d'au moins 30 jours de sauvegardes
- Sauvegardes séparées : fichiers et base de données
Le service d'urgence WpDefender inclut la restauration de sauvegarde en moins de 30 minutes en cas de piratage.
7. Limitation des tentatives de connexion
Les attaques par force brute tentent des milliers de combinaisons de mots de passe par minute. Sans protection, un serveur peut être saturé ou un mot de passe craqué en quelques heures.
Solutions :
- Plugin Limit Login Attempts Reloaded — bloque après 5 tentatives échouées
- Bannissement IP progressif (5 min → 30 min → 24h)
- Notification par email après 3 tentatives suspectes
- Blocage géographique si votre audience est dans une zone précise
8. Chemin de connexion personnalisé
La page /wp-admin/ et /wp-login.php sont les cibles favorites des bots. En changeant l'URL de connexion, vous éliminez 90 % des tentatives automatiques.
Plugins pour personnaliser l'URL de connexion :
- WPS Hide Login — le plus populaire, simple et efficace
- Permalink Manager Pro — offre aussi le contrôle des permalinks
Choisissez une URL non prévisible (évitez /admin, /connexion, /backdoor).
9. Certificat SSL / HTTPS
Google classe les sites HTTPS au-dessus des sites HTTP depuis 2014. En 2026, un site sans HTTPS est signalé comme « non sécurisé » par tous les navigateurs majeurs, ce qui détruit la confiance des visiteurs. Un bon hébergement sécurisé inclut généralement un certificat SSL gratuit.
Actions :
- Obtenez un certificat SSL gratuit via Let's Encrypt ou votre hébergeur
- Forcé la redirection HTTP vers HTTPS avec une règle .htaccess
- Mettez à jour tous les liens internes pour éviter le contenu mixte
- Vérifiez le certificat chaque mois — les certificats Let's Encrypt expirent tous les 90 jours
10. En-têtes de sécurité HTTP
Les en-têtes de sécurité renforcent la protection de votre site au niveau du navigateur. Ils empêchent le clickjacking, le XSS et d'autres attaques courantes.
En-têtes essentiels à configurer :
X-Content-Type-Options: nosniff— empêche le MIME sniffingX-Frame-Options: DENY— bloque l'intégration en iframeX-XSS-Protection: 1; mode=block— active le filtre XSS du navigateurStrict-Transport-Security— force HTTPS (HSTS)Content-Security-Policy— contrôle les ressources chargéesReferrer-Policy: strict-origin-when-cross-origin— limite le partage de données de référence
Ces en-têtes peuvent être ajoutés via le fichier .htaccess, un plugin de sécurité ou directement par votre hébergeur.
11. Pare-feu applicatif (WAF)
Un WAF (Web Application Firewall) filtre le trafic malveillant avant qu'il n'atteigne votre serveur. C'est la première ligne de défense contre les attaques zero-day.
Solutions recommandées :
- Wordfence — WAF en temps réel + scanner de malwares
- Sucuri — protection cloud, idéal pour les sites à fort trafic
- Cloudflare — pare-feu gratuit pour les attaques de base, premium pour avancé
Un WAF bloque en moyenne 4,5 milliards d'attaques par jour à l'échelle mondiale (chiffre Cloudflare, 2025).
12. Scanner de malwares
Un scanner de malwares détecte les fichiers modifiés, les backdoors et les injections de code malveillant. La détection précoce est critique : un malware reste en moyenne 287 jours dans un système avant d'être détecté (IBM Security, 2025).
Recommandations :
- Analyse complète hebdomadaire (automatisée si possible)
- Vérification des fichiers modifiés par rapport au dépôt officiel WordPress
- Surveillance des modifications dans les dossiers
/uploads/et/wp-content/ - Utilisez le scanner intégré de Wordfence ou la version gratuite de Sucuri SiteCheck
13. Permissions de fichiers
Des permissions mal configurées peuvent permettre à un attaquant d'injecter du code malveillant dans vos fichiers.
Recommandations standard :
- Dossiers :
755(propriétaire : lecture/écriture/exécution ; autres : lecture/exécution) - Fichiers :
644(propriétaire : lecture/écriture ; autres : lecture) - wp-config.php :
600ou640(lisible uniquement par le propriétaire) - .htaccess :
644
Utilisez un plugin comme WP File Manager ou exécutez les commandes SSH pour vérifier et corriger les permissions régulièrement.
14. Sécurité de la base de données
La base de données contient l'intégralité du contenu et des données de votre site. Sa compromise est catastrophique.
Mesures essentielles :
- Préfixe de table personnalisé (évitez le préfixe
wp_par défaut) - Utilisateur de base de données avec des privilèges minimum (pas
root) - Mot de passe de base de données fort (20+ caractères)
- Accès à la base de données limité à l'IP du serveur web
- Sauvegardes quotidiennes de la base de données
- Nettoyage régulier des tables de révisions et des métadonnées orphelines
15. Gestion des rôles utilisateurs
Chaque compte utilisateur est une porte d'entrée potentielle. 67 % des attaques impliquent un compte utilisateur compromis (Verizon DBIR, 2025).
Bonnes pratiques :
- Appliquez le principe du moindre privilège — chaque utilisateur n'obtient que les droits nécessaires
- Supprimez les comptes inactifs depuis plus de 90 jours
- Limitez le nombre d'administrateurs (2 maximum recommandé)
- Auditez les rôles tous les trimestres
- N'accordez jamais le rôle « Administrateur » à un prestataire temporaire
16. Désactivation de l'édition en ligne
La fonctionnalité d'édition en ligne de WordPress (Theme Editor et Plugin Editor) permet de modifier les fichiers PHP directement depuis l'interface d'administration. Si un compte administrateur est compromis, cette fonctionnalité permet à l'attaquant de modifier le code source.
Ajoutez cette ligne dans wp-config.php :
define('DISALLOW_FILE_EDIT', true);
C'est l'une des mesures de sécurité les plus simples et les plus efficaces. Aucune raison de ne pas l'activer.
17. Protection du fichier wp-config.php
Le fichier wp-config.php contient les identifiants de connexion à la base de données. Sa protection est critique.
Mesures :
- Déplacez-le un niveau au-dessus du répertoire racine WordPress (certaines configurations le permettent)
- Protégez-le avec des permissions
600 - Bloquez l'accès via
.htaccess:
<Files wp-config.php>
Order Allow,Deny
Deny from all
</Files>
Ne jamais stocker de mots de passe en dur dans wp-config.php en dehors des constantes WordPress prévues à cet effet.
18. Désactivation de l'exécution de PHP
Par défaut, WordPress autorise l'exécution de PHP dans le dossier /uploads/. C'est une faille majeure utilisée pour injecter des webshells.
Pour bloquer l'exécution de PHP dans /uploads/, ajoutez dans .htaccess :
<Files "*.php">
deny from all
</Files>
Ou, avec Apache 2.4+ :
<FilesMatch "\.php$">
Require all denied
</FilesMatch>
Cette mesure empêche l'exécution de n'importe quel fichier PHP téléchargé par un utilisateur ou injecté par un attaquant dans le dossier des médias.
19. Nettoyage du tableau de bord
Le tableau de bord WordPress affiche par défaut des informations qui peuvent aider un attaquant à mapper votre installation.
Éléments à masquer :
- La version de WordPress (visible dans le code source)
- La version de PHP
- Les noms des plugins et thèmes installés
- Les flux RSS
- L'api REST expose les comptes utilisateurs — limitez l'accès si nécessaire
Utilisez le plugin Disable WP version ou ajoutez ces fonctions dans functions.php pour masquer ces informations.
20. Journalisation et monitoring
Sans journalisation, vous ne pouvez pas détecter une intrusion ni comprendre ce qui a été compromis.
Configuration recommandée :
- Plugin de journalisation des connexions (WP Activity Log)
- Monitoring des modifications de fichiers
- Alertes email en cas de connexion depuis une nouvelle IP
- Journalisation des erreurs PHP côté serveur
- Conservation des logs pendant au moins 90 jours
WP Activity Log est le standard de l'industrie — il enregistre plus de 200 événements différents sur votre site WordPress.
21. Protection anti-spam
Le spam de commentaires n'est pas qu'un problème esthétique — il peut contenir des liens malveillants et nuire à votre référencement naturel.
Solutions :
- Antispam Bee — plugin gratuit et respectueux de la vie privée
- Akismet — solution cloud efficace pour le spam de commentaires
- Désactivez les commentaires sur les articles de plus de 30 jours
- Utilisez un champ honeypot pour piéger les bots
22. Désactivation de l'API XML-RPC
L'API XML-RPC de WordPress est une source majeure de problèmes de sécurité. Elle est utilisée pour :
- Les attaques par force brute (une seule requête peut tester 1000 mots de passe)
- Les attaques DDoS amplifiées
- L'exécution de code à distance
Si vous n'utilisez pas les applications mobiles WordPress ou les Pingbacks, désactivez XML-RPC complètement :
// Dans functions.php
add_filter('xmlrpc_enabled', '__return_false');
Ou bloquez-le via .htaccess :
<Files xmlrpc.php>
Order Deny,Allow
Deny from all
</Files>
23. Sécurisation des uploads
Le dossier /uploads/ est le répertoire le plus vulnérable de WordPress car il accepte les fichiers uploadés par les utilisateurs.
Protégez-le :
- Bloquez l'exécution de PHP (voir point 18)
- Vérifiez les types de fichiers acceptés
- Limite la taille des uploads (paramètre
upload_max_filesizedans php.ini) - Analysez les fichiers uploadés avec un scanner antivirus
- Utilisez un stockage externe (Amazon S3) pour les fichiers médias
24. Mises à jour PHP
PHP 7.x est en fin de vie depuis décembre 2022. Les sites utilisant PHP 7.x ne reçoivent plus de correctifs de sécurité. En 2026, vous devez utiliser PHP 8.2 ou supérieur.
Pourquoi c'est critique :
- Les failles de PHP 7.x ne seront jamais corrigées
- PHP 8.x offre des performances 15 à 25 % supérieures
- Certains plugins exigent désormais PHP 8.x minimum
- Google favorise les sites utilisant des versions récentes de PHP
Vérifiez votre version de PHP dans Tableau de bord → Outils → Info du système ou demandez à votre hébergeur.
25. Plan de réponse aux incidents
Même avec toutes les précautions, aucune protection n'est à 100 %. Avoir un plan d'action en cas de piratage est aussi important que la prévention.
Éléments du plan :
- Détection : comment identifiez-vous une compromission ? (monitoring, alertes, signalements)
- Confinement : mise en maintenance, désactivation du site, blocage des accès
- Éradication : suppression du malware, restauration des fichiers
- Récupération : restauration de la sauvegarde, vérification de l'intégrité
- Notification : informer les utilisateurs et les autorités si nécessaire (RGPD)
- Leçons tirées : analyse post-incident pour renforcer les défenses
Le service d'urgence WpDefender prend en charge l'intégralité de ce processus avec une réponse en 30 minutes, 7 jours sur 7.
Conclusion
Cette checklist de 25 points couvre les fondamentaux de la sécurité WordPress. L'implémentation progressive de ces mesures réduit de 95 % le risque de compromission (estimation basée sur les données de Sucuri et Wordfence).
La sécurité n'est pas un état, c'est un processus continu. Testez votre site contre ces 25 points et créez un plan d'action prioritaire.
Besoin d'un audit de sécurité complet ? Contactez WpDefender — nous analysons votre site et fournissons un rapport détaillé avec les actions correctives prioritaires. Réponse garantie en 30 minutes, 7/7.