Vous ouvrez la liste des utilisateurs dans WordPress et vous trouvez un administrateur que vous n’avez jamais vu. Le nom peut sembler aléatoire, ressembler à un mot générique comme « support » ou « admin2 », ou même ressembler presque au nom de quelqu’un que vous connaissez.
Dans WordPress, un administrateur peut presque tout faire : installer des plugins, modifier le code, créer d’autres utilisateurs, changer les contenus et lire les données des clients. Un administrateur inconnu mérite donc votre attention immédiatement.
Ce n’est pas toujours un piratage. Il existe quelques explications banales, et il vaut la peine de les écarter d’abord. Mais si personne ne peut justifier la présence de cet utilisateur, il est plus sûr de traiter la situation comme un incident de sécurité.
Le conseil le plus important est simple : ne vous contentez pas de supprimer le compte et de passer à autre chose. La suppression fait disparaître le signe visible, mais pas le moyen par lequel le compte a été créé, et elle peut détruire des informations qui montrent ce qui s’est passé.
Ce guide explique comment vérifier si le compte est légitime, que faire s’il ne l’est pas et quelles erreurs éviter.
Que signifie la présence d’un administrateur inconnu ?
Cela signifie qu’un compte disposant du contrôle total de votre site existe, et que personne dans votre organisation ne sait actuellement à qui il appartient.
Il y a deux possibilités :
- le compte a été créé de manière légitime, mais personne ne s’en souvient ni ne l’a documenté
- le compte a été créé par quelqu’un sans autorisation, généralement après avoir exploité une faille
L’objectif des premières vérifications est de distinguer ces deux cas le plus rapidement possible.
Peut-il y avoir une explication sans gravité ?
Oui. Avant de conclure à une compromission, vérifiez les sources légitimes les plus courantes.
Une agence web ou un développeur
Les agences, les freelances et les développeurs créent souvent leur propre compte administrateur lorsqu’ils commencent à travailler. Si vous avez travaillé avec quelqu’un sur le site, même il y a des années, le compte est peut-être le sien. Demandez-lui.
Votre hébergeur
Certains hébergeurs et services WordPress infogérés créent un compte pour leur équipe de support ou pour des tâches automatisées. Le nom ou l’adresse e-mail fait souvent référence à l’hébergeur.
Un plugin ou un service
Certains plugins et services externes créent un utilisateur lorsqu’ils sont connectés, par exemple pour les sauvegardes, la surveillance, la sécurité ou les migrations. L’adresse e-mail peut appartenir au domaine du service.
Un collègue
Quelqu’un dans votre organisation a peut-être créé un compte pour un nouveau membre de l’équipe, un consultant ou pour des tests, sans prévenir personne.
Comment vérifier
Examinez les détails du compte :
- l’adresse e-mail : appartient-elle à une personne ou à une entreprise que vous connaissez ?
- la date d’inscription : correspond-elle à un projet, à une migration ou à l’arrivée d’un nouveau membre de l’équipe ?
- le nom : correspond-il à un fournisseur ou à un plugin que vous utilisez ?
Interrogez ensuite les personnes qui auraient pu le créer. Si vous obtenez une réponse claire, documentez-la et demandez-vous si le compte est toujours nécessaire. Les anciens comptes que personne n’utilise représentent un risque, même lorsqu’ils sont légitimes.
Quand faut-il le traiter comme une compromission ?
Considérez le compte comme malveillant si :
- personne ne peut l’expliquer après une vérification raisonnable
- l’adresse e-mail provient d’un domaine gratuit ou d’apparence aléatoire sans rapport avec votre activité
- le compte a été créé récemment, sans projet correspondant
- le nom imite un utilisateur réel ou un terme générique
- d’autres signaux d’alerte sont présents, comme des pages de spam, des redirections, des plugins inconnus ou un avertissement de Google
- le compte réapparaît après avoir été supprimé
Les attaquants créent souvent un administrateur juste après avoir exploité un plugin vulnérable, afin de pouvoir revenir plus tard même si la vulnérabilité est corrigée.
Pourquoi ne faut-il pas simplement supprimer le compte ?
Supprimer l’utilisateur semble être la solution naturelle, mais à elle seule, cette action pose trois problèmes.
Elle ne ferme pas le point d’entrée
Le compte a été créé par un moyen quelconque : un plugin vulnérable, un mot de passe volé, une backdoor. Si ce moyen reste ouvert, l’attaquant peut créer un nouveau compte, parfois en quelques minutes. Consultez pourquoi le malware revient sans cesse pour en savoir plus.
Elle peut détruire des preuves
Les détails du compte, sa date d’inscription et son activité aident à établir quand et comment le site a été compromis. Une fois le compte supprimé, ces informations sont plus difficiles à retrouver.
Elle peut supprimer des contenus
Lorsque vous supprimez un utilisateur dans WordPress, on vous demande quoi faire des contenus qu’il a créés. Si vous choisissez de les supprimer, tout ce qui est attribué à cet utilisateur disparaît. Si le compte a servi à publier du spam, c’est peut-être ce que vous voulez. Mais si des contenus lui ont été attribués par erreur alors qu’ils appartenaient à un compte légitime, ou si l’attaquant s’est approprié des pages existantes, vous pourriez supprimer de vrais contenus.
Que faire à la place ?
Suivez ces étapes dans l’ordre. Elles contiennent le problème tout en conservant les informations dont vous avez besoin.
1. Notez les détails
Notez ou faites une capture d’écran de :
- l’identifiant, le nom affiché et l’adresse e-mail
- le rôle
- la date d’inscription
- tout autre compte inconnu, y compris ceux qui ne sont pas administrateurs
- la date et l’heure auxquelles vous l’avez remarqué
2. Conservez une copie du site
Faites une sauvegarde complète des fichiers et de la base de données dans leur état actuel, et stockez-la séparément. C’est une preuve, pas un point de restauration.
3. Retirez ses pouvoirs au compte
Au lieu de le supprimer immédiatement, vous pouvez lui attribuer le rôle le plus bas, ou changer son mot de passe et son adresse e-mail pour des valeurs que vous seul contrôlez. Cela empêche l’utilisation du compte tout en conservant sa trace. Un technicien préférera peut-être s’en charger directement : demandez en cas de doute.
4. Mettez fin à toutes les sessions actives
Changer un mot de passe ne déconnecte pas toujours une personne déjà connectée. Mettez fin aux sessions actives du compte inconnu et, idéalement, de tous les administrateurs. Changer les clés de sécurité de WordPress déconnecte tout le monde d’un coup.
5. Changez les mots de passe
Changez les mots de passe de tous les administrateurs, du compte d’hébergement, de l’accès SFTP et de la base de données. Utilisez des mots de passe uniques et activez l’authentification à deux facteurs lorsque c’est possible. Vérifiez aussi que les comptes e-mail liés aux administrateurs sont sécurisés.
6. Vérifiez ce qu’a fait le compte
Recherchez :
- les articles, pages ou produits créés ou modifiés récemment
- les plugins ou thèmes installés aux alentours de la date d’inscription du compte
- les modifications de réglages, comme l’adresse du site ou le rôle par défaut des nouveaux utilisateurs
- les autres utilisateurs créés après lui
- les nouveaux fichiers ou snippets de code
7. Trouvez le point d’entrée
C’est l’étape qui empêche la récidive. Parmi les points d’entrée possibles : un plugin ou un thème vulnérable, un mot de passe réutilisé, un compte d’hébergement compromis ou une backdoor laissée par un incident précédent.
8. Supprimez le compte correctement
Une fois l’enquête terminée, supprimez le compte. Quand WordPress vous demande quoi faire de ses contenus, choisissez en connaissance de cause : supprimez-les s’il s’agit de spam, ou attribuez-les à un utilisateur légitime s’il s’agit de vrais contenus.
Que faut-il vérifier d’autre ?
L’inscription est-elle ouverte à tous ?
Dans Settings → General (Réglages → Général), vérifiez l’option « Membership » (« Inscription » : « Tout le monde peut s’enregistrer ») et le « New User Default Role » (« Rôle par défaut de tout nouvel utilisateur »). Si le rôle par défaut a été changé en Administrateur, n’importe qui a pu s’inscrire avec un accès complet. Ce réglage est parfois modifié par les attaquants.
Y a-t-il d’autres utilisateurs inconnus ?
Les attaquants ne créent pas seulement des administrateurs. Un compte Éditeur ou Gestionnaire de boutique peut aussi causer des dégâts. Examinez tous les rôles.
Le site est-il une boutique WooCommerce ou un site à espace membres ?
Si le site gère des commandes, des abonnements ou des données personnelles, un administrateur inconnu a peut-être eu accès aux informations des clients. Cela peut avoir des conséquences juridiques au regard des règles de protection des données : impliquez la personne responsable de la confidentialité dans votre organisation.
Que faut-il éviter ?
À éviter :
- supprimer le compte avant d’avoir noté ses détails
- supprimer les contenus du compte sans vérifier de quoi il s’agit
- ne changer que votre propre mot de passe
- supposer que le problème est réglé parce que le compte a disparu
- restaurer une sauvegarde sans vérifier si le compte y figure
- envoyer des mots de passe à des collègues ou à des fournisseurs par e-mail
Quand demander de l’aide ?
Demandez de l’aide lorsque :
- personne ne peut expliquer le compte
- il existe d’autres signes de compromission
- le compte revient après avoir été supprimé
- le site gère des paiements ou des données personnelles
- vous ne pouvez plus vous connecter vous-même, ou votre propre compte a été modifié
- vous ne savez pas comment découvrir ce qu’a fait le compte
Comment D4Hub peut vous aider
D4Hub peut :
- vérifier si le compte est légitime, à partir de ses détails et de l’historique du site
- conserver les preuves avant toute modification
- mettre fin aux sessions, régénérer les clés et sécuriser tous les accès
- examiner les contenus, plugins, réglages et fichiers modifiés par le compte
- trouver et fermer le point d’entrée
- rechercher des backdoors et d’autres comptes inconnus
- supprimer le compte et traiter correctement ses contenus
- vous conseiller sur les étapes suivantes si des données clients ont pu être exposées
Vous pouvez demander de l’aide à tout moment, y compris après que le compte a déjà été supprimé.
Ouvrir un ticket de supportPour les utilisateurs expérimentés : enquêter sur un administrateur inconnu
Ces vérifications s’adressent aux personnes à l’aise avec WP-CLI et SFTP ou SSH.
Avant de commencer, faites une sauvegarde complète des fichiers et de la base de données et conservez-la à l’écart du site en ligne. La plupart des commandes ci-dessous se contentent de lire des informations. Celles qui modifient quelque chose sont clairement signalées.
Lister tous les administrateurs
wp user list --role=administrator --fields=ID,user_login,user_email,user_registeredNotez l’ID du compte inconnu. Sur un multisite, lancez aussi wp super-admin list. Répétez la première commande sans --role=administrator pour passer en revue tous les utilisateurs.
Vérifier les métadonnées du compte
wp user meta list <id>Remplacez <id> par l’ID du compte. Examinez les capacités, les préférences d’affichage et les éventuelles entrées propres à des plugins, qui peuvent donner des indices sur la façon dont le compte a été créé.
Voir les sessions actives du compte
wp user session list <id>Cette commande affiche les sessions de connexion en cours, généralement avec l’heure de connexion, l’adresse IP et le navigateur. Notez ces informations avant de mettre fin aux sessions. Une adresse IP inconnue avec une connexion récente est un signe fort que le compte est utilisé.
Mettre fin aux sessions du compte
Cette commande modifie des données : elle déconnecte l’utilisateur partout.
wp user session destroy <id> --allPour déconnecter tous les utilisateurs d’un coup, vous pouvez régénérer les clés de sécurité dans wp-config.php :
wp config shuffle-saltsCette commande modifie aussi des données. Tout le monde, vous compris, devra se reconnecter.
Examiner les contenus créés par le compte
wp post list --author=<id> --post_type=any --post_status=any --fields=ID,post_title,post_type,post_status,post_dateVérifiez ensuite les contenus modifiés le plus récemment sur l’ensemble du site :
wp post list --post_type=any --post_status=any --orderby=modified --order=DESC --fields=ID,post_title,post_type,post_modified --posts_per_page=30Examiner les plugins et les modifications récentes
wp plugin list --fields=name,status,version,updateWordPress n’enregistre pas la date d’installation d’un plugin, mais les dates des dossiers donnent un indice utile :
ls -lt wp-content/plugins/Comparez ces dates avec la date d’inscription du compte. Vérifiez aussi wp-content/mu-plugins/ et cherchez de nouvelles entrées dans les plugins de snippets de code.
Vérifier les réglages d’inscription
wp option get users_can_register
wp option get default_roleUn default_role égal à administrator est un signal d’alerte sérieux.
Supprimer le compte et réattribuer les contenus
Uniquement après l’enquête, cette commande supprime l’utilisateur et attribue ses contenus à un autre compte :
wp user delete <id> --reassign=<other-id>Sans --reassign, les contenus de l’utilisateur sont supprimés. Choisissez en connaissance de cause.
Si quelque chose n’est pas clair dans ces résultats, arrêtez-vous. D4Hub peut les examiner avec vous ou prendre en charge l’enquête.
Questions fréquentes
Un plugin peut-il créer un administrateur de lui-même ?
Certains plugins et services légitimes créent un utilisateur lorsqu’ils sont connectés, généralement avec une adresse e-mail de leur propre domaine. Un plugin vulnérable ou malveillant peut aussi créer des administrateurs à votre insu, ce qui est une attaque courante.
Si je supprime le compte, mon site est-il en sécurité ?
Pas forcément. Le compte est un symptôme. Si le moyen par lequel il a été créé reste ouvert, l’attaquant peut en créer un autre. Le point d’entrée doit être trouvé et fermé.
Que deviennent les articles du compte quand je le supprime ?
WordPress vous demande s’il faut supprimer tous les contenus de l’utilisateur ou les attribuer à un autre utilisateur. Avec WP-CLI, l’option --reassign fait la même chose. Si vous ne réattribuez pas les contenus, ils sont supprimés.
Changer le mot de passe déconnecte-t-il l’utilisateur ?
Pas toujours de manière fiable. Mettre fin aux sessions de l’utilisateur, ou régénérer les clés de sécurité de WordPress, est le moyen le plus sûr de s’assurer que personne ne reste connecté.
WordPress peut-il m’indiquer la dernière connexion de l’utilisateur ?
Pas par défaut. Les sessions actives montrent les connexions récentes, et certains plugins de sécurité ou de journal d’activité enregistrent les connexions, mais seulement à partir de leur installation. Les logs d’accès de l’hébergement peuvent aussi aider.
Dois-je prévenir mes clients ?
Cela dépend de ce à quoi le compte a pu accéder et des règles de protection des données qui s’appliquent à vous. Si le site contient des données clients, demandez conseil à la personne chargée de la confidentialité dans votre organisation, ou à un conseiller juridique.
D4Hub peut-il m’aider si le compte a déjà été supprimé ?
Oui. L’enquête reste possible grâce aux sauvegardes, aux logs et à l’état du site. D4Hub peut vérifier comment le compte a été créé et si autre chose a été laissé derrière.