
Nettoyer un site WordPress piraté, c’est notre quotidien chez EVICO — et s’il y a une chose que
des dizaines d’interventions nous ont apprise, c’est celle-ci : le nettoyage raté est
la norme, pas l’exception. Le scénario classique qu’on nous décrit au téléphone :
« j’ai supprimé les fichiers bizarres, j’ai changé mon mot de passe, et deux semaines après
c’est revenu ». Normal : selon Sucuri, environ 70 % des sites compromis
contiennent au moins une porte dérobée au moment du nettoyage — souvent plusieurs. Voici
notre méthode complète, phase par phase. Elle est technique par endroits : c’est volontaire.
Vous saurez exactement ce qu’un nettoyage sérieux doit contenir — que vous le fassiez vous-même ou
que vous le confiiez à quelqu’un.
Phase 1 : isoler — on ne nettoie pas un site en production
- →Site en mode 503 (maintenance) : on protège les visiteurs et on dit à Google « ne désindexe pas, indisponibilité temporaire ».
- →Copie complète de l’état infecté (fichiers + base) : c’est notre matière d’analyse et la preuve pour l’assurance.
- →Rotation immédiate des accès : mots de passe WordPress, FTP/SSH, base de données, espace hébergeur. Si l’attaquant a encore un accès valide pendant que vous nettoyez, vous videz la baignoire robinet ouvert.
Détail qui compte : on révoque aussi les mots de passe d’application et les
clés API WordPress (Réglages → Utilisateurs → mots de passe d’application), souvent oubliés — un
attaquant qui en a créé un garde un accès REST même après votre changement de mot de passe.
Phase 2 : analyser — dater l’intrusion et trouver la porte d’entrée
C’est la phase que les nettoyages amateurs sautent, et c’est pour ça qu’ils échouent. Sans savoir
comment l’attaquant est entré, vous refermez peut-être la mauvaise porte.
- Les logs d’accès du serveur (access.log, disponibles chez tout hébergeur sérieux) : on y cherche les POST suspects vers des fichiers PHP inhabituels, les pics de requêtes, les premières apparitions des fichiers malveillants dans les URLs appelées.
- Les dates de modification des fichiers : un tri par date remonte souvent le fil — attention, les malwares sérieux falsifient les timestamps, d’où l’intérêt de croiser avec les logs.
- L’inventaire des versions : cœur, thème, extensions. Dans 9 cas sur 10, la porte d’entrée est une extension vulnérable — logique, quand on sait que 91 % des 11 334 vulnérabilités WordPress recensées en 2025 concernaient des extensions (Patchstack).
Phase 3 : comparer — le cœur et les extensions contre leurs versions officielles
Le grand avantage de WordPress : tout le code légitime est public. On peut donc comparer
chaque fichier du site avec sa version officielle et isoler ce qui a été modifié ou ajouté. En
pratique :
- →Vérification des sommes de contrôle du cœur : la commande
wp core verify-checksums(WP-CLI) compare chaque fichier du cœur avec l’original de wordpress.org et liste les fichiers altérés ou étrangers. - →Réinstallation propre du cœur : on remplace wp-admin/ et wp-includes/ entiers par des versions fraîches — plus fiable que de nettoyer fichier par fichier.
- →Diff des extensions et du thème : chaque extension est comparée à son zip officiel du même numéro de version. Ce qui diffère est soit une personnalisation documentée, soit une infection.
- →Les zones grises : wp-content/uploads/ ne doit contenir AUCUN fichier PHP (on peut l’interdire au niveau serveur) ; la racine ne doit contenir que les fichiers WordPress standards + votre .htaccess et wp-config.php, qu’on inspecte ligne par ligne.
Ce qu’on trouve le plus souvent : des fichiers aux noms trompeurs (wp-cache.php, class-wp-widget.php à la racine, admin-ajax.php dans uploads/), du code encodé en base64 ou compressé via eval(gzinflate(...)) injecté en tête de fichiers légitimes, et des backdoors d’une seule ligne du type @eval($_POST[...]) — invisibles à l’œil pressé, détectables par comparaison systématique.
Phase 4 : désinfecter — fichiers, base, utilisateurs, cron
Le nettoyage ne s’arrête pas aux fichiers. Les quatre endroits où l’infection persiste :
| Zone | Ce qu’on y cherche | Exemples réels |
|---|---|---|
| Fichiers | Backdoors, webshells, injections en tête/queue de fichiers | eval/base64, faux plugins, fichiers PHP dans uploads/ |
| Base de données | Scripts injectés dans les contenus et options | JavaScript malveillant dans wp_options (widgets, siteurl), utilisateurs cachés, pages de spam |
| Utilisateurs | Comptes admin créés par l’attaquant | Comptes aux noms génériques, e-mails jetables, rôle administrateur |
| Tâches planifiées | Réinfection automatique programmée | Tâches cron WordPress ou serveur qui retéléchargent le malware toutes les nuits |
C’est la combinaison qui compte : un seul de ces quatre endroits oublié, et le site se
réinfecte. Les tâches cron malveillantes, en particulier, sont la cause la plus fréquente des
récidives « inexpliquées » qu’on nous amène.
Phase 5 : colmater — fermer la porte ET changer les serrures
- Mise à jour de tout : cœur, extensions, thème, PHP. L’extension vulnérable identifiée en phase 2 est mise à jour ou remplacée — et si elle n’a pas de correctif (le cas de 46 % des vulnérabilités au moment de leur divulgation, selon Patchstack), elle est supprimée, point.
- Rotation complète des secrets : les clés de sécurité de wp-config.php (AUTH_KEY, etc. — leur changement invalide tous les cookies de session, y compris ceux de l’attaquant), le mot de passe de la base, les préfixes d’API.
- Durcissement : 2FA sur les comptes admin, limitation des tentatives de connexion, exécution PHP interdite dans uploads/, édition de fichiers désactivée dans l’admin (
DISALLOW_FILE_EDIT).
Phase 6 : réhabiliter — Google, blacklists, hébergeur

- →Search Console → Sécurité et actions manuelles → demande de réexamen, avec une description honnête de ce qui a été nettoyé. Attention : un site qui alterne nettoyages bâclés et réinfections peut être classé « récidiviste » et privé de réexamen pendant 30 jours — une raison de plus de ne demander le réexamen qu’une fois le travail complet.
- →Vérification des blacklists e-mail (Spamhaus & co via mxtoolbox) si le site a envoyé du spam.
- →Levée de la suspension hébergeur le cas échéant, avec le rapport de nettoyage en appui.
- →Resoumission du sitemap et suppression des URLs de spam indexées (outil de suppression de Search Console) : après un spam SEO — présent sur 42 % des sites infectés — des milliers d’URLs fantômes peuvent traîner dans l’index pendant des semaines.
Phase 7 : surveiller — les 30 jours qui décident
Un nettoyage se juge à 30 jours, pas à la livraison. Notre protocole post-intervention :
scan quotidien, surveillance des fichiers modifiés, contrôle des nouveaux utilisateurs et des tâches
cron, veille sur les extensions du site. Si rien ne bouge en 30 jours, la probabilité d’une backdoor
résiduelle devient faible. C’est aussi la période où l’on bascule vers une
maintenance préventive — parce que la vraie leçon d’un
piratage, c’est rarement « il fallait mieux nettoyer », c’est « il fallait mettre à
jour avant ».
Le faire soi-même ou le confier ?
Soyons honnêtes, comme toujours : si votre site est un blog sans données clients, que vous
êtes à l’aise avec FTP et phpMyAdmin, et que vous avez un week-end devant vous, cette méthode est
applicable en autonomie. En revanche, confiez le nettoyage si : le site encaisse des commandes
ou collecte des données personnelles (le volet RGPD s’ajoute au volet technique), le site est déjà
blacklisté par Google (un réexamen raté coûte cher en délais), ou si c’est déjà la deuxième
infection — une récidive signifie qu’une backdoor a survécu au premier nettoyage, et la chasse aux
backdoors est précisément la partie qui demande de l’outillage et de l’expérience.
Premier réflexe dans tous les cas : notre
checklist de la première heure. Et si le
symptôme est une redirection vers un site douteux, on a documenté ce cas précis :
d’où ça vient et comment l’arrêter.
🛡 Vous préférez confier le nettoyage à une équipe qui en fait toutes les semaines ? EVICO désinfecte les sites WordPress piratés, referme la faille et les protège durablement : découvrez notre service sécurité WordPress — diagnostic gratuit. Ou contactez-nous directement.
Sources : Sucuri Hacked Website Threat Report (backdoors sur ~70 % des sites
compromis, spam SEO : 42 %) ; Patchstack, State of WordPress Security in 2026
(11 334 vulnérabilités en 2025, 91 % dans les extensions, 46 % sans correctif à la
divulgation) ; documentation WP-CLI (verify-checksums) et Google Search Console (procédure de
réexamen, statut récidiviste) ; protocole d’intervention EVICO.