Dépannage WordPress

Site WordPress piraté : détecter, nettoyer, sécuriser

Site WordPress piraté : quoi faire dans l'ordre, comment nettoyer sans tout réinstaller, et comment verrouiller après. Procédure complète, signes, pièges.

Site WordPress piraté : détecter, nettoyer, sécuriser

Site WordPress piraté : que faire, dans l’ordre

Un site WordPress piraté se traite en quatre temps, toujours dans cet ordre : isoler le site pour qu’il cesse de nuire, localiser l’infection dans les fichiers et la base, nettoyer ou réinstaller le cœur, les thèmes et les extensions depuis des sources propres, puis changer tous les accès. Nettoyer avant d’isoler laisse l’attaquant revenir pendant qu’on travaille. C’est aussi l’ordre que recommande la documentation officielle de WordPress (FAQ « My site was hacked », wordpress.org).

Si tu n’es pas encore sûr d’être piraté, commence par les signes qui ne trompent pas dans Mon site WordPress a-t-il été piraté ?, puis reviens ici.

Ce que couvre ce guide

Un matin, une recherche Google sur le nom de l’entreprise remonte des résultats en russe ou des liens vers des produits pharmaceutiques. Ou pire : Chrome affiche “Ce site peut nuire à votre ordinateur” avant même que la page ne charge. C’est le scénario type d’un WordPress compromis. Cet article explique comment reconnaître les signes d’un piratage, nettoyer le site méthodiquement, puis verrouiller les accès pour que ça ne se reproduise pas. Il s’adresse aux responsables de sites WordPress qui gèrent (ou font gérer) leur maintenance et veulent comprendre ce qui se passe avant d’appeler du renfort.

Prérequis

  • Accès à l’hébergement (FTP/SFTP ou gestionnaire de fichiers, voir aussi la connexion SSH sur Plesk si ton offre le permet)
  • Accès à la base de données (phpMyAdmin ou équivalent)
  • Une sauvegarde récente si elle existe (sinon, en créer une immédiatement, même du site infecté)
  • Accès admin WordPress (ou un moyen de le récupérer)
  • Un peu de temps calme : le nettoyage se fait méthodiquement, pas dans la précipitation

1. Identifier les signes d’un site compromis

Un piratage ne se manifeste pas toujours par un écran noir avec un message de rançon. La plupart du temps, il est silencieux et discret, justement pour durer. Voici les signaux les plus fréquents :

  • Redirections inattendues : le site (ou certaines pages) redirige vers un domaine étranger, souvent au clic depuis Google plutôt qu’en accès direct, technique classique pour passer sous le radar de l’admin.
  • Contenu spam invisible : des centaines de pages sur le viagra, le crédit ou des produits de contrefaçon, indexées par Google mais introuvables dans le menu du site.
  • Fichiers inconnus : des fichiers PHP aux noms bizarres (wp-cache.php, xmrpc.php à ne pas confondre avec xmlrpc.php, ou des noms aléatoires de 8 caractères) dans /wp-content/uploads/, /wp-content/themes/ ou à la racine.
  • Utilisateurs admin inconnus : un compte “administrator2” ou un compte avec un email suspect apparu dans Utilisateurs.
  • Ralentissement soudain ou pics de charge serveur inexpliqués (souvent lié à des scripts qui envoient du spam en masse ou minent des cryptomonnaies).
  • Alerte de l’hébergeur ou de Google Search Console signalant un “contenu piraté” ou un malware détecté.
  • Le navigateur affiche un avertissement de sécurité (Google Safe Browsing a blacklisté le domaine).

Si un seul de ces signes apparaît, ne pas attendre. Un site compromis continue de se dégrader et peut contaminer d’autres sites sur le même hébergement mutualisé.

2. Isoler le site immédiatement

Avant de nettoyer, il faut limiter les dégâts.

  1. Mettre le site en maintenance ou couper l’accès public si possible (via .htaccess ou le tableau de bord de l’hébergeur), pour stopper la propagation du contenu malveillant tant que le nettoyage n’est pas terminé.
  2. Changer tous les mots de passe : admin WordPress, FTP, base de données, hébergement, en suivant les recommandations publiques de l’ANSSI sur les mots de passe (source : ANSSI, 2026). Le piratage est presque toujours lié à un accès compromis quelque part.
  3. Sauvegarder l’état infecté avant toute modification (fichiers + base de données), pour pouvoir analyser ou revenir en arrière si le nettoyage se passe mal.
  4. Si le site est en mode maintenance bloqué de manière anormale suite à une mise à jour interrompue par le script malveillant, voir WordPress bloqué en maintenance.

3. Localiser l’infection dans les fichiers

C’est l’étape la plus technique. L’objectif : trouver le code injecté sans supprimer ce qui est légitime.

  • Comparer les fichiers du cœur WordPress, du thème et des plugins avec une installation propre téléchargée depuis WordPress.org. Tout fichier différent ou en trop mérite un examen.
  • Chercher les fonctions PHP typiques des malwares : eval(, base64_decode(, gzinflate(, str_rot13(, souvent combinées pour obfusquer le code injecté. L’injection de code figure au classement des risques applicatifs les plus répandus (source : OWASP, 2026).
  • Vérifier le fichier .htaccess : des règles de redirection ajoutées en bas du fichier sont un classique pour rediriger uniquement les visiteurs venus de Google.
  • Regarder les dates de modification des fichiers (ls -la en SSH, ou tri par date en FTP) : un lot de fichiers modifiés à la même heure, hors des mises à jour connues, trahit l’intrusion.
  • Inspecter /wp-content/uploads/ pour des fichiers .php : ce dossier ne devrait contenir que des images, PDF et médias, jamais de PHP exécutable.

4. Nettoyer la base de données

Le malware ne loge pas toujours dans les fichiers. Il s’installe souvent aussi en base :

  • Table wp_options : chercher des entrées suspectes dans siteurl, home ou des options ajoutées par un plugin inconnu.
  • Table wp_posts : rechercher du contenu spam caché (texte en blanc sur blanc, liens cachés en CSS display:none).
  • Table wp_users : supprimer tout compte administrateur non reconnu.
  • Rechercher des scripts injectés dans les widgets ou le contenu des articles via une requête SQL type SELECT * FROM wp_posts WHERE post_content LIKE '%base64_decode%'.

5. Réinstaller le cœur, les thèmes et les plugins propres

Une fois l’infection identifiée, la méthode la plus sûre reste souvent de repartir de zéro sur les fichiers d’exécution :

  • Télécharger une version fraîche du cœur WordPress et remplacer entièrement /wp-admin et /wp-includes, la marche à suivre après une compromission étant décrite par WordPress.org (source : WordPress.org, 2026).
  • Réinstaller les plugins et le thème depuis leurs sources officielles plutôt que de tenter de “réparer” des fichiers douteux.
  • Conserver uniquement /wp-content/uploads (après vérification qu’aucun .php ne s’y cache) et le fichier wp-config.php (après avoir régénéré les clés de sécurité).

6. Quand tout réinstaller plutôt que nettoyer

Certains cas ne valent pas la peine d’un nettoyage manuel :

SituationAction recommandée
Infection ancienne, plusieurs mois, non détectéeRéinstallation complète + restauration du contenu depuis une sauvegarde saine antérieure
Multiples backdoors dispersées dans tout le siteRéinstallation complète, plus rapide et plus fiable qu’un nettoyage exhaustif
Hébergement mutualisé avec d’autres sites infectésRéinstallation + changement d’hébergement ou isolation stricte
Site avec peu de contenu, peu de personnalisationRéinstallation propre plus rapide qu’un audit ligne par ligne
Site complexe, forte personnalisation, sauvegarde saine récenteNettoyage ciblé possible, avec audit complet ensuite

Une backdoor désigne un accès dissimulé laissé par l’attaquant pour revenir même après le nettoyage. Dans le doute, la réinstallation reste donc la solution la plus sûre : un nettoyage manuel en laisse toujours passer une.

7. Sécuriser durablement après le nettoyage

Le nettoyage seul ne sert à rien si la faille d’origine n’est pas corrigée.

  • Mettre à jour WordPress, thème et plugins vers leurs dernières versions, la majorité des piratages exploitent des failles connues et déjà corrigées.
  • Supprimer les plugins et thèmes inutilisés, même désactivés : ils restent une surface d’attaque.
  • L’authentification à deux facteurs désigne l’ajout d’un second élément de preuve en plus du mot de passe : à activer sur tous les comptes administrateurs, en cohérence avec les mesures de durcissement documentées par WordPress (source : WordPress Developer Resources, 2026).
  • Limiter les tentatives de connexion et changer l’URL de login par défaut.
  • Vérifier et durcir les directives PHP pour limiter l’exécution de scripts dans les dossiers d’upload.
  • Mettre en place une surveillance régulière des fichiers et un audit périodique, c’est précisément le rôle d’une maintenance non-négociable plutôt qu’une intervention ponctuelle après coup.
  • Vérifier la configuration SSL du site, un certificat expiré ou mal configuré peut aussi ouvrir la porte à des attaques de type man-in-the-middle : voir certificat SSL expiré.

Pièges courants

  • Nettoyer sans changer les mots de passe : le pirate revient par le même accès quelques jours plus tard.
  • Restaurer une sauvegarde déjà infectée sans vérifier sa date par rapport au début du piratage.
  • Oublier Google Search Console : même nettoyé, le site reste marqué “piraté” dans les résultats de recherche tant qu’une demande de réexamen n’est pas soumise.
  • Ne garder qu’un seul thème/plugin “propre” sans vérifier les autres : les malwares se propagent souvent à plusieurs endroits simultanément.
  • Négliger l’hébergement mutualisé : si un autre site sur le même serveur est infecté, la réinfection est probable sans isolation.
Combien de temps faut-il pour nettoyer un site piraté ?

Cela dépend de l’ampleur de l’infection : quelques heures pour un cas simple avec une bonne sauvegarde, plusieurs jours pour une infection ancienne et dispersée nécessitant une réinstallation complète.

Faut-il changer d'hébergeur après un piratage ?

Pas systématiquement, sauf si l’hébergement mutualisé a permis la contamination depuis un autre site, ou si l’hébergeur n’offre aucun outil de scan ou de restauration fiable.

Un plugin de sécurité suffit-il à protéger durablement le site ?

Un plugin de sécurité aide à détecter, pas à prévenir seul. Les mises à jour régulières, les accès limités et une maintenance suivie restent les vraies barrières.

Comment savoir si Google a blacklisté le site ?

Vérifier dans Google Search Console la section “Problèmes de sécurité” : elle indique précisément le type de contenu malveillant détecté et permet de demander un réexamen une fois le nettoyage terminé.

Un site piraté n’est jamais un incident isolé : c’est le symptôme d’un accès mal protégé ou d’une mise à jour négligée. Le nettoyage referme la plaie ; seule une surveillance régulière évite qu’elle ne se rouvre.

FAQ

Mon site WordPress a été piraté, que faire en premier ?

Le mettre hors ligne ou en maintenance, et changer immédiatement les mots de passe de l’administration WordPress, de l’hébergement et de la base de données. Tant que le site reste exposé, l’attaquant garde la main et le nettoyage ne tient pas. Le diagnostic vient après, jamais avant.

Comment nettoyer un site WordPress piraté sans tout réinstaller ?

En comparant les fichiers du cœur avec une copie propre de la même version, en inspectant wp-content pour les fichiers PHP inconnus ou récemment modifiés, puis en cherchant dans la base de données les scripts et les utilisateurs administrateurs ajoutés. Si l’infection touche le thème ou un plugin, on le réinstalle depuis la source plutôt que de le réparer.

Faut-il réparer ou réinstaller un site WordPress hacké ?

Réinstaller le cœur, les thèmes et les extensions depuis les sources officielles est presque toujours plus sûr et plus rapide que réparer fichier par fichier. On ne conserve que wp-config.php, le dossier des médias et la base de données, après les avoir vérifiés. Réparer ne se justifie que si aucune sauvegarde saine antérieure au piratage n’existe.

Comment savoir si mon site WordPress a été piraté ?

Un compte administrateur inconnu, des fichiers modifiés à une date où personne n’a travaillé, des redirections vers des sites étrangers, un avertissement de Google dans les résultats ou dans Chrome, ou un pic de requêtes dans les journaux d’accès. Un seul de ces signes suffit pour lancer la procédure.

Ce problème, Peechy s'en occupe

Plutôt que de tout gérer seul, confiez votre site à une agence qui s'occupe de tout, hébergement, sécurité, maintenance et corrections. Encore plus simple en abonnement : on règle les soucis avant même que vous les remarquiez.

Confier mon site à Peechy