Durcissement (hardening) avancé de WordPress
Par AIFORYA — 30 juillet 2026 — 13 de lecture
Sur cette page (8)
Introduction : durcir, ce n'est pas ajouter, c'est retirer
Le durcissement est presque toujours présenté comme une liste de choses à installer. C'est l'inverse. Durcir un système consiste à réduire ce qu'il peut faire, et la plupart des mesures de cette page ne demandent aucun programme supplémentaire.
Le principe unique dont elles découlent toutes :
on ne se protège pas contre une faille inconnue, on réduit ce que cette faille peut atteindre.
Cet article suppose la base faite — mots de passe solides, double facteur, mises à jour à jour, sauvegardes testées. Si ce n'est pas le cas, commencez par l'audit de sécurité en 10 minutes.
1. L'exécution — la mesure qui neutralise la plus grande famille d'attaques
Interdire l'exécution de PHP dans le dossier des téléversements. Une seule règle de configuration du serveur, et elle neutralise toute une classe de vulnérabilités : celles où un attaquant parvient à déposer un fichier, puis à l'appeler.
C'est la mesure au meilleur rapport effort/effet de toute cette liste, et elle reste absente de la majorité des installations parce qu'elle n'est pas visible depuis le tableau de bord WordPress.
Interdire l'édition de fichiers depuis l'administration (DISALLOW_FILE_EDIT). Un compte administrateur compromis ne peut alors plus écrire de code depuis le navigateur. Cela n'empêche pas l'intrusion : cela l'empêche de devenir un contrôle total.
Désactiver l'installation d'extensions depuis l'administration sur les sites où le déploiement passe par un autre canal (DISALLOW_FILE_MODS). C'est plus restrictif et cela ne convient pas à tous les flux de travail — mais quand cela convient, cela ferme la voie principale de persistance.
2. Les permissions — précises, pas permissives
La règle n'est pas « le plus restrictif possible », c'est « écriture uniquement là où c'est nécessaire ».
- Les fichiers de configuration n'ont pas besoin d'être inscriptibles par le serveur web en fonctionnement normal.
- Le dossier des téléversements a besoin de l'écriture ; celui des extensions, non, sauf pendant une mise à jour.
- Une permission trop ouverte sur un seul dossier annule la rigueur de tous les autres.
⚠ L'erreur fréquente : appliquer des permissions très restrictives, puis les relâcher « temporairement » pour débloquer une mise à jour — et l'oublier. Notez la date quand vous le faites ; c'est la seule façon que ça se resserre.
3. Les capacités — le point que presque personne ne regarde
WordPress attribue des capacités par rôle, et la plupart des sites utilisent les rôles par défaut sans jamais les revoir.
Trois questions qui révèlent presque toujours quelque chose :
- Combien y a-t-il de comptes administrateur ? Sur la plupart des sites, plus que nécessaire. Chacun est une clé complète.
- Un rédacteur a-t-il besoin de pouvoir installer des extensions ? Non. Pourtant les rôles s'élargissent avec le temps, extension après extension, et personne ne les réduit.
- Reste-t-il des comptes de personnes parties ? Un compte inactif avec des privilèges est une porte que plus personne ne surveille.
Le correctif n'est pas technique, il est organisationnel : une revue des comptes chaque trimestre, avec la date notée.
4. La surface d'administration
- Limiter les tentatives de connexion. Cela n'arrête pas une attaque ciblée, mais cela supprime le bruit de fond qui sature les journaux et masque l'important.
- Restreindre l'accès à l'administration par adresse IP quand l'équipe est stable. C'est la mesure la plus efficace de cette section et la moins compatible avec le travail mobile — à arbitrer.
- Réduire les informations exposées. Non comme protection : comme hygiène. N'en attendez aucun effet réel.
- Surveiller l'intégrité des fichiers. On ne reconnaît pas une attaque inconnue ; on reconnaît parfaitement qu'un fichier a changé sans qu'on le sache. C'est le principe expliqué dans la protection proactive contre les menaces zero-day.
5. Ce qui NE protège PAS, malgré les apparences
- Masquer la version de WordPress. Un scanner automatisé essaie la faille, il ne lit pas un numéro.
- Déplacer la page de connexion. Utile contre le bruit, nul face à une faille dans une extension : l'exploitation ne passe pas par le formulaire.
- Un score de sécurité dans un tableau de bord. Un indicateur qui ne descend jamais ne mesure rien.
- Accumuler les extensions de sécurité. Deux pare-feux ne protègent pas deux fois plus ; ils ajoutent deux surfaces et un conflit probable.
6. Le protocole, en une page
- Exécution PHP interdite dans le dossier des téléversements — commencez par là
-
DISALLOW_FILE_EDITactif - Permissions revues : écriture seulement là où c'est nécessaire, avec une date sur les exceptions
- Comptes administrateur comptés, et réduits au nombre nécessaire
- Comptes inactifs supprimés, pas désactivés
- Capacités par rôle revues : qui peut installer, qui peut publier ?
- Tentatives de connexion limitées
- Surveillance d'intégrité active, avec une alerte qui atteint un humain dans la journée
- Restauration réellement testée, au moins une fois, dans un environnement séparé
- Nombre d'extensions réduit — voyez auditer ses extensions en 5 étapes
Conclusion
Le durcissement avancé ne consiste pas à empiler des défenses : il consiste à réduire ce qu'une faille peut atteindre. Les deux mesures au meilleur rendement de cette page — interdire l'exécution de PHP dans les téléversements et réduire le nombre de comptes à privilèges — ne coûtent aucun programme et n'apparaissent dans aucun tableau de bord.
C'est pour cela qu'elles sont rarement appliquées : il n'y a rien à installer, rien à montrer, et aucun score qui monte.
Le test qui dit où vous en êtes : si un compte administrateur était compromis ce soir, que pourrait faire l'attaquant qu'on ne peut pas l'empêcher de faire aujourd'hui ? La liste de ces actions est votre plan de travail.
Pour continuer : la protection proactive contre les menaces zero-day, l'audit de sécurité en 10 minutes et auditer ses extensions en 5 étapes. Nos extensions premium sont disponibles avec remboursement intégral sous 14 jours : voir le catalogue.