Aucune trace des accès administrateur, aucun inventaire des extensions réellement nécessaires, aucun historique des décisions de sécurité prises au fil du temps : c’est l’état dans lequel se trouve régulièrement un site dont le prestataire précédent est parti sans transition organisée. Reprendre la sécurité de ce type de projet ne peut pas commencer par une lecture de documentation, puisqu’elle n’existe simplement pas. Il faut reconstituer.
Cette reconstitution suit une méthode répétable, indépendante du contexte métier du site, qui permet de reprendre pied en une à deux journées plutôt que de naviguer à vue pendant des semaines.
Étape 1 : cartographier les accès existants
La première question à résoudre est aussi la plus urgente : qui peut encore se connecter à ce site, et par quel canal. La commande wp user list --fields=ID,user_login,user_email,roles donne un premier inventaire des comptes WordPress. Elle doit être complétée par une vérification des accès au niveau du serveur (comptes SSH, comptes FTP, accès au panneau d’hébergement) et des accès au registraire de domaine, souvent oubliés dans ce type de reconstitution.
wp user list --fields=ID,user_login,user_email,roles,user_registered
wp user meta get 1 session_tokens
Chaque compte administrateur identifié doit être confronté à une question simple : quelqu’un dans l’équipe actuelle sait-il à qui il appartient et pourquoi il existe encore ? Sans réponse claire, le compte est suspendu, pas supprimé immédiatement, le temps de confirmer qu’aucun usage légitime n’en dépend.
Étape 2 : distinguer les extensions nécessaires des extensions installées
Un site sans documentation accumule souvent des extensions installées pour un besoin ponctuel, jamais retirées ensuite. La commande wp plugin list --format=table donne la liste complète, mais ne dit rien de la nécessité réelle de chaque extension. Une observation du trafic front-end pendant quelques jours, croisée avec les fonctionnalités visibles sur le site, permet de distinguer ce qui sert réellement de ce qui ne sert plus.

Étape 3 : auditer les identifiants stockés
Sans documentation sur les intégrations tierces en place, une recherche ciblée dans la base de données révèle généralement plus d’informations qu’un examen de l’interface d’administration seule.
- Rechercher les termes courants associés à des clés d’API (
api_key,secret,token) viawp db search - Identifier chaque service tiers concerné à partir du contexte de l’option trouvée
- Contacter chaque service pour confirmer si la clé est toujours active et la faire tourner si le service le permet
Étape 4 : vérifier l’intégrité du cœur et des extensions
La commande wp core verify-checksums compare les fichiers du cœur WordPress installés avec les sommes de contrôle officielles, et signale toute modification suspecte. Une extension modifiée directement sur le serveur, sans passer par une mise à jour officielle, constitue un signal d’alerte qui mérite une inspection manuelle du différentiel.
wp core verify-checksums
wp plugin verify-checksums --all
Étape 5 : reconstituer une chronologie minimale
Les journaux d’hébergement conservés par le fournisseur (souvent sur une fenêtre de trente à quatre-vingt-dix jours) permettent de reconstituer une activité récente même sans journal d’activité applicatif dédié. Cette chronologie, même incomplète, aide à situer les dernières interventions du prestataire précédent et à détecter d’éventuelles anomalies dans cette période.
Étape 6 : documenter à mesure, pas à la fin
Chaque élément reconstitué (accès validé, extension confirmée nécessaire, clé d’API renouvelée) doit être consigné immédiatement dans un document versionné, plutôt que reporté à une synthèse finale qui risque de ne jamais être écrite avec le même niveau de détail.
Un site sans documentation n’est pas un site sans histoire : c’est un site dont l’histoire doit être relue directement dans le code, la base de données et les journaux du serveur, faute d’avoir été écrite ailleurs.
En résumé
Reprendre la sécurité d’un projet hérité sans aucune documentation demande de la méthode plus que de l’intuition : cartographier les accès, distinguer le nécessaire du superflu parmi les extensions, auditer les identifiants stockés, vérifier l’intégrité des fichiers, reconstituer une chronologie minimale et documenter chaque avancée au fil de l’eau. Cette séquence, appliquée systématiquement, transforme une situation qui semble ingérable au premier abord en un chantier balisé de deux journées de travail.