Guide de correction

Site WordPress piraté : que faire ? La checklist d’urgence

13 novembre 2026

Tout commence souvent de façon anodine. Un client vous écrit qu’en voulant consulter votre site, il s’est retrouvé sur un casino en ligne. Votre hébergeur vous envoie un mail pour vous annoncer que votre hébergement a été suspendu pour envoi de spam. Ou bien Google affiche sous votre résultat de recherche la mention « Ce site a peut-être été piraté. » À ce stade, le doute n’est plus permis : quelqu’un s’est introduit dans votre WordPress. C’est rageant, mais ce n’est pas la fin du monde. Ce qui compte maintenant, c’est de faire les choses dans le bon ordre. Si vous paniquez, effacez tout et restaurez la première vieille sauvegarde venue, le problème revient bien souvent une semaine plus tard. Cette checklist d’urgence vous guide pendant les premières heures, pendant le nettoyage et dans les semaines qui suivent.

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

Un piratage ne saute pas toujours aux yeux. Beaucoup d’attaquants font même tout pour que vous ne remarquiez rien. Ils préfèrent utiliser tranquillement votre serveur pour envoyer du spam, rediriger vos visiteurs ou faire grimper leurs propres pages dans Google. Prenez ces signes au sérieux :

  • Des redirections vers des sites inconnus : vos visiteurs atterrissent sur des pages de jeux d’argent, de rencontres ou de fausses boutiques. Souvent, cela ne se produit que sur smartphone ou seulement quand le visiteur vient de Google.
  • Des avertissements de Google ou du navigateur : Chrome affiche une page d’avertissement rouge à la place de votre site, les résultats de recherche indiquent « Ce site a peut-être été piraté. » ou la Search Console signale un problème de sécurité.
  • Des pages inconnues dans l’index : une recherche site:votredomaine.fr fait apparaître des pages remplies de caractères japonais, de médicaments contre les troubles de l’érection ou de produits de marque à prix cassés, que vous n’avez jamais créées. Les spécialistes parlent de Japanese Keyword Hack ou de Pharma Hack.
  • Des utilisateurs inconnus : la liste des utilisateurs contient un administrateur que personne ne connaît. Parfois, il y est même masqué et n’apparaît que dans la base de données.
  • Un courrier de l’hébergeur : il signale un envoi de spam ou une charge serveur anormalement élevée, ou il a déjà suspendu votre hébergement.
  • Des fichiers et des modifications étranges : des fichiers aux noms cryptiques, du code inconnu tout en haut de index.php, des plugins que vous n’avez jamais installés, ou un mot de passe qui, du jour au lendemain, ne vous permet plus de vous connecter.

Un point en déstabilise plus d’un : de votre côté, vous ne voyez souvent rien du tout. Un malware bien conçu reconnaît les administrateurs connectés à leur cookie et leur montre le site parfaitement normal. Pour vos tests, ouvrez donc votre site dans une fenêtre de navigation privée, idéalement sur votre smartphone en données mobiles. Accédez au site une fois directement, puis une fois depuis une recherche Google.

Site WordPress piraté : que faire dans la première heure ?

Dans la première heure, vous n’avez pas encore besoin de trouver le code malveillant. L’objectif est de limiter les dégâts sans détruire de traces. Suivez ces étapes dans l’ordre :

  1. Respirez et ne supprimez rien pour l’instant. Le réflexe de tout effacer immédiatement ou de restaurer une sauvegarde à l’aveugle est compréhensible. Mais vous détruiriez ainsi précisément les traces qui vous diront plus tard comment les attaquants sont entrés.
  2. Documentez ce que vous voyez. Faites des captures d’écran des redirections et des avertissements, notez les heures et conservez les mails de votre hébergeur et de Google. Cela vous aidera à trouver la cause, et plus tard en cas de notification à l’autorité de protection des données.
  3. Sauvegardez l’état infecté. Téléchargez tous les fichiers ainsi qu’un export de la base de données, puis rangez le tout à part, avec une mention bien visible indiquant que la copie est infectée. Cette copie, vous ne la restaurerez jamais. Elle sert uniquement de preuve et de point de comparaison.
  4. Mettez le site hors ligne. C’est indispensable surtout si vos visiteurs sont redirigés vers des sites frauduleux ou si votre boutique traite des données de paiement. Un plugin de maintenance n’aide guère ici, car il tourne lui aussi dans le WordPress piraté. Bloquez plutôt le site au niveau du serveur et ne laissez passer que votre propre IP. Si votre site tourne sous Apache, trois lignes tout en haut du fichier .htaccess suffisent :
    RewriteEngine On
    RewriteCond %{REMOTE_ADDR} !^203\.0\.113\.10$
    RewriteRule ^ - [R=503,L]
    Remplacez l’adresse par votre propre IP. Le code de statut 503 indique à Google que le site n’est que temporairement indisponible. Sur une courte durée, cela ne nuit pas à votre référencement. Si votre serveur utilise nginx ou si vous avez un doute, votre hébergeur pourra vous aider.
  5. Changez les accès les plus importants. Définissez de nouveaux mots de passe pour votre compte client chez l’hébergeur, pour SFTP ou SSH et pour la base de données. Utilisez pour cela un appareil de confiance. Si les identifiants ont été dérobés sur votre propre ordinateur, par exemple par un cheval de Troie qui lit les mots de passe enregistrés dans FileZilla, de nouveaux mots de passe ne servent à rien tant que l’ordinateur reste infecté. Modifiez aussi votre propre mot de passe WordPress. Les autres utilisateurs et les clés de sécurité viendront après le nettoyage, car tant qu’une porte dérobée reste ouverte, l’attaquant peut tout simplement intercepter les nouveaux mots de passe.
  6. Prévenez votre hébergeur. Beaucoup d’hébergeurs disposent de leur propre équipe de sécurité, de scanners de malwares et surtout des journaux d’accès du serveur. Demandez précisément les logs des dernières semaines ainsi que les sauvegardes. Certains hébergeurs les conservent plus longtemps qu’on ne le croit.
  7. Informez ceux qui doivent être au courant. Si vous êtes une agence, prévenez votre client. Si d’autres personnes ont accès au site, elles en font aussi partie. Et dès que des données personnelles ont pu être touchées, un délai légal commence à courir. Nous y revenons plus bas.

Comment les pirates s’introduisent-ils dans WordPress ? Trouvez la porte d’entrée

Beaucoup sautent cette étape, et c’est justement pour cela que tant de sites se font pirater deux fois. Si vous ne trouvez pas la faille, vous faites le ménage, et quelques jours plus tard, l’attaquant revient par la même porte. Souvent sans même vous viser, simplement parce qu’un bot parcourt automatiquement le web à la recherche de cette faille précise.

Voici les portes d’entrée les plus fréquentes :

  • Des plugins et des thèmes obsolètes : c’est de loin la voie la plus courante. D’après les rapports annuels de Patchstack, l’immense majorité des failles de sécurité connues dans l’écosystème WordPress se trouve dans les plugins, une petite partie dans les thèmes et presque aucune dans le cœur de WordPress. Les plugins que plus personne ne maintient ou qui ont été retirés du répertoire des plugins de WordPress.org sont particulièrement risqués.
  • Des plugins et des thèmes nulled : des copies piratées de plugins premium, récupérées sur des sites de téléchargement douteux. Elles ne coûtent rien, mais contiennent étonnamment souvent une porte dérobée intégrée.
  • Des mots de passe faibles ou volés : des bots testent jour et nuit des combinaisons de noms d’utilisateur et de mots de passe. Si vous réutilisez le même mot de passe sur d’autres services, la prochaine fuite de données suffit à vous exposer.
  • Des voisins sur le même hébergement : si le même compte d’hébergement abrite encore une vieille installation de test, une boutique oubliée ou votre site de 2016 rangé dans un dossier, l’attaquant peut, à partir de là, atteindre tous les autres sites du compte.
  • Des ordinateurs infectés : un malware sur le PC d’un administrateur peut lire les identifiants enregistrés et les envoyer aux attaquants.

Voici comment remonter jusqu’à la cause :

  • Comparez vos plugins et vos thèmes avec une base de données de vulnérabilités, comme Wordfence Intelligence, Patchstack ou WPScan. Ce qui compte, c’est de savoir si une faille est connue pour la version exacte que vous avez installée.
  • Examinez les journaux d’accès du serveur. Les requêtes POST vers des fichiers qui n’existent pas du tout dans WordPress, ou vers des fichiers du dossier wp-content/uploads, sont suspectes. Les heures de ces requêtes vous révèlent souvent quand tout a commencé.
  • Vérifiez quand les fichiers suspects ont été créés. La date donne une piste, mais pas une preuve, car les attaquants aiment falsifier les horodatages.

Comment supprimer un malware de WordPress ?

Place au nettoyage. Deux solutions s’offrent à vous.

Restaurer une sauvegarde saine est la solution la plus rapide. Mais elle ne fonctionne que si vous savez avec certitude que la sauvegarde est antérieure à l’intrusion. C’est plus difficile qu’il n’y paraît. Entre l’intrusion proprement dite et ses premières conséquences visibles, il s’écoule souvent des semaines, parfois des mois, parce que les attaquants installent d’abord une porte dérobée et ne s’en servent que plus tard. Vous perdez en outre tous les contenus, commandes et commentaires créés depuis la sauvegarde, et la faille reste ouverte. Si vous choisissez cette voie, mettez à jour tous les plugins et tous les thèmes juste après la restauration, et passez quand même en revue les points qui suivent.

Nettoyer le site à la main prend plus de temps, mais la méthode est plus rigoureuse. Le plus sûr est de travailler sur une copie plutôt que sur le site en production. Voici comment procéder :

  1. Remplacez entièrement WordPress. Supprimez les dossiers wp-admin et wp-includes et mettez à leur place des copies neuves de la même version, téléchargées sur WordPress.org. Faites de même pour les fichiers à la racine du site, à l’exception de wp-config.php. Vous vérifiez ensuite que tout est en ordre avec la ligne de commande de WordPress :
    wp core verify-checksums
    La commande compare chaque fichier aux sommes de contrôle officielles de WordPress.org et signale aussi les fichiers qui n’ont rien à faire là.
  2. Réinstallez les plugins et les thèmes. Supprimez chaque plugin et chaque thème, puis installez une copie neuve provenant d’une source fiable. Ce dont vous ne vous servez pas n’a pas à revenir. Pour les plugins du répertoire officiel, il existe là aussi une vérification :
    wp plugin verify-checksums --all
    La commande ne peut pas vérifier les plugins premium, car WordPress.org ne dispose pas de leurs sommes de contrôle. Téléchargez donc à nouveau ces plugins directement chez l’éditeur.
  3. Passez le dossier uploads au peigne fin. Il est fait pour les images, les PDF et les autres médias, pas pour du PHP. Cette commande trouve les fichiers qui n’ont rien à y faire :
    find wp-content/uploads -type f -name "*.php"
    Les fichiers vides nommés index.php font exception : certains plugins les créent pour que personne ne puisse afficher le contenu d’un dossier. Examinez attentivement tout le reste.
  4. Vérifiez tout ce que vous ne pouvez pas réinstaller. Cela comprend wp-config.php, .htaccess (une cachette appréciée pour les redirections qui ne visent que les visiteurs venant de Google ou naviguant sur smartphone), votre propre thème avec son functions.php et le dossier wp-content/mu-plugins. WordPress charge automatiquement les fichiers de ce dossier, et ils ne peuvent pas être désactivés depuis le tableau de bord. Le code malveillant se reconnaît souvent à des fonctions comme eval, base64_decode ou gzinflate, associées à de longues chaînes de caractères illisibles. Pour une première recherche, cette commande suffit :
    grep -rlE "eval\(|base64_decode\(|gzinflate\(|str_rot13\(" wp-content/
    Un résultat ne prouve rien à lui seul, car des plugins tout à fait sérieux utilisent aussi certaines de ces fonctions. Il vous montre en revanche où regarder de plus près.
  5. Nettoyez la base de données. Le code malveillant ne se cache pas que dans les fichiers. Commencez par afficher tous les administrateurs :
    wp user list --role=administrator --skip-plugins --skip-themes
    Les deux options à la fin empêchent WordPress de charger les plugins et le thème, si bien qu’il n’exécute pas non plus le code malveillant qui pourrait encore s’y cacher. Supprimez tout compte que vous ne pouvez rattacher à personne. Vérifiez aussi dans la table wp_options que siteurl et home pointent toujours vers votre domaine. Voici comment trouver les scripts injectés dans les articles et les pages :
    SELECT ID, post_title, post_type FROM wp_posts WHERE post_content LIKE '%<script%';
    Si votre installation utilise un autre préfixe que wp_, adaptez les noms des tables. Les widgets sont d’ailleurs eux aussi stockés dans wp_options et méritent un coup d’œil.
  6. Contrôlez les tâches planifiées. Les attaquants aiment mettre en place des tâches cron qui recréent régulièrement le code malveillant. Regardez à la fois les tâches cron de WordPress et celles de l’espace client de votre hébergeur.

Des scanners comme Wordfence ou le service gratuit Sucuri SiteCheck détectent de nombreux malwares connus et constituent un bon complément. Ne comptez pas uniquement sur eux pour autant. Un scanner externe ne voit que ce qui arrive dans le navigateur, et un plugin ne trouve que ce qu’il connaît déjà. Les portes dérobées récentes ou bien cachées passent entre les mailles du filet.

Comment sécuriser WordPress après un piratage ?

Le site est propre ? Vient alors l’étape qui décide s’il le restera.

  • De nouveaux mots de passe partout : pour chaque utilisateur WordPress, pour la base de données (vous reportez ensuite la nouvelle valeur dans wp-config.php), pour SFTP et pour votre compte client chez l’hébergeur. Pensez aussi aux clés d’accès des services externes enregistrées dans des plugins, par exemple pour l’envoi des mails ou pour les prestataires de paiement.
  • De nouvelles clés de sécurité : remplacez les salts dans wp-config.php par de nouvelles valeurs issues du générateur officiel de WordPress.org. Toutes les sessions existantes deviennent ainsi invalides, y compris celles qu’un attaquant détiendrait encore sous forme de cookie.
  • Refermer la faille : mettez à jour WordPress, tous les plugins et tous les thèmes. Remplacez les plugins qui ne sont plus maintenus. Pour garder ce point sous contrôle sur la durée, lisez notre guide Comment maintenir les extensions WordPress à jour et sécurisées.
  • Sécuriser les connexions : activez un second facteur de connexion pour tous les administrateurs (ce qu’est la 2FA et comment elle fonctionne) et réduisez le nombre d’administrateurs au strict nécessaire.
  • Désactiver l’éditeur de fichiers : avec cette ligne dans wp-config.php, plus personne ne peut modifier le code des plugins et des thèmes depuis le tableau de bord :
    define( 'DISALLOW_FILE_EDIT', true );
    Vous trouverez d’autres réglages dans nos guides Sécuriser wp-config.php dans WordPress et Définir correctement les permissions de fichiers dans WordPress.
  • Une protection en amont : un Web Application Firewall bloque de nombreuses attaques visant des failles connues avant même qu’elles n’atteignent WordPress.
  • Des sauvegardes qui fonctionnent vraiment : automatiques, quotidiennes, stockées en dehors du serveur et couvrant au moins 30 jours. Et restaurées au moins une fois pour tester, avant le jour où vous en aurez réellement besoin.

Gardez ensuite un œil attentif sur le site pendant plusieurs semaines. Si le code malveillant réapparaît au bout de quelques jours, c’est que vous avez manqué une porte dérobée ou que la faille est toujours ouverte. Pour une vue d’ensemble de toutes les mesures de protection, consultez notre liste de contrôle de sécurité WordPress.

« Ce site a peut-être été piraté » : comment supprimer l’avertissement de Google ?

Google ne retire pas l’avertissement automatiquement une fois le nettoyage terminé. C’est à vous d’agir :

  1. Accédez à la Google Search Console. Si vous n’y avez pas encore ajouté votre site, c’est le moment de le faire.
  2. Dans « Sécurité et actions manuelles », ouvrez le rapport « Problèmes de sécurité ». Vous y voyez ce que Google a trouvé, souvent avec quelques URL concernées à titre d’exemple.
  3. Vérifiez dans les paramètres qui est enregistré comme utilisateur ou propriétaire. Les attaquants s’y inscrivent parfois pour faire indexer plus vite leurs pages de spam. Supprimez les entrées inconnues ainsi que le fichier de validation correspondant à la racine de votre site.
  4. Cliquez sur « Demander un examen » et décrivez brièvement ce que vous avez trouvé et corrigé. Selon Google, l’examen prend généralement quelques jours en cas de malware, environ un jour en cas de phishing et parfois plusieurs semaines pour des pages de spam ajoutées par piratage.

Une fois le nettoyage terminé, les pages de spam doivent renvoyer le code de statut 404 ou 410. Elles disparaissent alors peu à peu de l’index. Si c’est urgent, l’outil de suppression d’URL de la Search Console vous aidera. Soumettez ensuite de nouveau votre véritable sitemap. Si votre serveur a envoyé du spam, vérifiez aussi si votre IP figure sur une liste noire antispam. Votre hébergeur vous aidera à la faire retirer.

Faut-il déclarer un piratage au titre du RGPD ?

Tout dépend d’une question : des données personnelles ont-elles pu être touchées ? Avec une boutique en ligne, un espace membres ou des demandes du formulaire de contact enregistrées sur le site, c’est vite le cas. Même la table des utilisateurs de WordPress contient des noms et des adresses mail.

En vertu de l’article 33 du RGPD, vous devez notifier une telle violation de données à l’autorité de contrôle compétente, en France la CNIL, dans un délai de 72 heures. Le délai court dès que vous en avez connaissance. Seule exception : lorsque la violation n’est pas susceptible d’engendrer un risque pour les personnes concernées. Si le risque est élevé, par exemple parce que des données de paiement ou des mots de passe ont pu être dérobés, l’article 34 du RGPD vous oblige aussi à informer directement les personnes concernées.

Même si vous décidez finalement de ne pas notifier la violation, vous devez documenter l’incident et votre décision. C’est ce que prévoit l’article 33, paragraphe 5. La plupart des autorités de contrôle proposent un formulaire en ligne pour la notification. Si vous avez un délégué à la protection des données (DPO), il doit être impliqué tout de suite. Cette section ne remplace pas un conseil juridique.

Quand faire appel à un professionnel pour le nettoyage ?

Si vous êtes à l’aise avec les fichiers, les bases de données et les serveurs, vous pouvez gérer sans aide une bonne partie de cette checklist. Dans certains cas, une aide professionnelle reste pourtant le meilleur choix :

  • Votre boutique traite des données de paiement et vous soupçonnez que des données de carte bancaire ont été dérobées.
  • Le site est réinfecté après chaque nettoyage.
  • Vous n’avez aucune sauvegarde exploitable, et la ligne de commande n’est pas vraiment votre domaine.
  • Il s’agit du site d’un client, et vous devrez pouvoir prouver plus tard exactement ce qui s’est passé.

Le premier interlocuteur est souvent votre hébergeur. Beaucoup proposent un nettoyage sous forme de service payant. Il existe aussi des services spécialisés, par exemple chez Wordfence ou Sucuri. Demandez au préalable si la recherche de la porte d’entrée est comprise dans le prix. Se contenter de supprimer le code malveillant ne vous protège que jusqu’à la prochaine attaque.

Comment InspectWP vous aide après un piratage

Précisons d’emblée : InspectWP n’est pas un scanner de malwares et ne remplace pas un nettoyage. Le rapport vous aide cependant sur deux points qui passent souvent à la trappe dans l’urgence : trouver la faille la plus probable et contrôler la situation par la suite.

Le rapport gratuit liste déjà les plugins et les thèmes qu’il détecte sur votre site et signale ceux qui ont été retirés du répertoire des plugins de WordPress.org ou qui n’ont reçu aucune mise à jour depuis plus d’un an. Il vous indique si vous utilisez une version obsolète de WordPress et si des fichiers sont accessibles publiquement alors qu’ils n’ont rien à y faire, comme un fichier debug.log public, des sauvegardes de la base de données ou un fichier nommé .env. Il vérifie aussi si votre page de connexion est protégée contre les essais massifs de mots de passe et si l’on peut récupérer les noms d’utilisateur depuis l’extérieur.

Dans les plans Premium et Agency, vous voyez en plus les versions installées de vos plugins et les failles de sécurité connues qui les concernent. Vous trouvez ainsi souvent la cause la plus probable en quelques minutes. Avec l’InspectWP WordPress Connector, vous savez en outre si des fichiers du cœur de WordPress ont été modifiés (le Connector les compare aux sommes de contrôle de WordPress.org), combien d’administrateurs compte le site et si des dossiers importants sont accessibles en écriture.

Après le nettoyage, les rapports automatiques sont particulièrement utiles. InspectWP vérifie alors votre site à intervalles réguliers et vous prévient par mail si vous le souhaitez. En comparant deux rapports, vous voyez d’un coup d’œil ce qui a changé, par exemple un nouveau plugin que personne ne dit avoir installé. Votre premier rapport gratuit est prêt en quelques minutes.

Vérifiez votre site WordPress dès maintenant

InspectWP analyse votre site WordPress pour détecter les problèmes de sécurité, de SEO, de conformité RGPD et de performance — gratuitement.

Analyser votre site gratuitement