{"id":15,"date":"2026-10-23T14:54:04","date_gmt":"2026-10-23T12:54:04","guid":{"rendered":"https:\/\/robinet.app\/blog\/?p=15"},"modified":"2026-10-23T16:32:49","modified_gmt":"2026-10-23T14:32:49","slug":"site-wordpress-pirate-que-faire","status":"publish","type":"post","link":"https:\/\/robinet.app\/blog\/site-wordpress-pirate-que-faire\/","title":{"rendered":"Site WordPress pirat\u00e9 : que faire dans la premi\u00e8re heure"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Un site qui redirige vers une pharmacie en ligne. Des pages de spam publi\u00e9es cette nuit. Un administrateur inconnu. Quand un site WordPress pirat\u00e9 r\u00e9v\u00e8le les d\u00e9g\u00e2ts, la premi\u00e8re heure est d\u00e9cisive.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">La bonne nouvelle : un piratage WordPress se nettoie, m\u00eame sans \u00eatre d\u00e9veloppeur, \u00e0 condition de suivre les \u00e9tapes dans le bon ordre.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p><strong>En bref<\/strong><\/p><ul><li>Confirmez le piratage avant de toucher quoi que ce soit (Search Console, scan externe).<\/li><li>Changez TOUS les acc\u00e8s depuis une machine saine, h\u00e9bergeur inclus.<\/li><li>R\u00e9installez le c\u0153ur de WordPress depuis le tableau de bord, ou \u00e0 partir de l&rsquo;archive officielle si vous n&rsquo;y avez plus acc\u00e8s.<\/li><li>Ne remettez pas le site en ligne avant un deuxi\u00e8me scan propre.<\/li><li>Un nettoyage incomplet r\u00e9cidive : la backdoor cherch\u00e9e en dernier est celle qui revient en premier.<\/li><\/ul><\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\">Ce que vous aurez fait \u00e0 la fin de cette heure<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u00c0 l&rsquo;issue de cette proc\u00e9dure, vous aurez :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Coup\u00e9 l&rsquo;acc\u00e8s \u00e0 l&rsquo;attaquant sur tous les vecteurs (WordPress, FTP, base de donn\u00e9es)<\/li>\n<li>Restaur\u00e9 les fichiers c\u0153ur dans leur version officielle<\/li>\n<li>Nettoy\u00e9 les contenus inject\u00e9s et identifi\u00e9 le vecteur d&rsquo;entr\u00e9e<\/li>\n<li>Pr\u00e9par\u00e9 la demande de r\u00e9vision aupr\u00e8s de Google, \u00e0 envoyer une fois le nettoyage confirm\u00e9 par un second scan propre<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Temps estim\u00e9 :<\/strong> la dur\u00e9e d\u00e9pend fortement de la gravit\u00e9 de l&rsquo;intrusion. Un piratage limit\u00e9 \u00e0 un fichier se r\u00e8gle rapidement. Une compromission totale prend plus de temps, et c&rsquo;est normal.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Ce qu&rsquo;il vous faut avant de commencer<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Rassemblez ces acc\u00e8s depuis une machine qui n&rsquo;est pas celle que vous utilisez habituellement, id\u00e9alement depuis un autre r\u00e9seau.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Acc\u00e8s h\u00e9bergeur, FTP et base de donn\u00e9es<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Identifiants de votre panneau d&rsquo;h\u00e9bergement (cPanel, Plesk, ISPConfig ou \u00e9quivalent)<\/li>\n<li>Acc\u00e8s FTP\/SFTP avec le client de votre choix (FileZilla fonctionne bien)<\/li>\n<li>Acc\u00e8s phpMyAdmin ou \u00e9quivalent pour la base de donn\u00e9es<\/li>\n<li>Acc\u00e8s au gestionnaire DNS de votre registraire (OVH, Gandi, Namecheap&#8230;)<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Une sauvegarde r\u00e9cente et ses identifiants<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Localisez votre derni\u00e8re sauvegarde <em>avant<\/em> de commencer \u00e0 nettoyer quoi que ce soit. Si vous n&rsquo;en avez pas, demandez \u00e0 votre h\u00e9bergeur s&rsquo;il en conserve une : la dur\u00e9e de conservation varie selon les offres.<\/p>\n\n\n\n<div class=\"rb-chiffre\" style=\"margin:28px 0;padding:20px 24px;border-radius:16px;background-color:#E5EAFD;display:flex;gap:20px;align-items:center;flex-wrap:wrap\"><strong style=\"font-size:46px;line-height:1;font-weight:800;letter-spacing:-0.02em;color:#244FF0;white-space:nowrap\">7 jours<\/strong><span style=\"flex:1;min-width:180px;font-size:17px;line-height:1.45\">dur\u00e9e de r\u00e9tention des sauvegardes automatiques chez la plupart des h\u00e9bergeurs mutualis\u00e9s fran\u00e7ais<\/span><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Une sauvegarde inexistante ne bloque pas la proc\u00e9dure, mais elle vous retire votre filet de s\u00e9curit\u00e9. Dans ce cas, exportez imm\u00e9diatement la base de donn\u00e9es depuis phpMyAdmin avant de toucher aux fichiers, m\u00eame compromise. C&rsquo;est toujours mieux que rien.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u00cates-vous vraiment pirat\u00e9 ? Les signaux qui ne trompent pas<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Avant d&rsquo;agir, confirmez. Un site WordPress qui affiche une erreur 500 n&rsquo;est pas n\u00e9cessairement infect\u00e9. Un cache corrompu ou une extension mal mise \u00e0 jour produit les m\u00eames sympt\u00f4mes visuels.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Redirections, pages de spam inconnues et comptes administrateurs fant\u00f4mes<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Les signaux sans \u00e9quivoque :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Le site redirige vers un domaine \u00e9tranger depuis un mobile (pas depuis un ordinateur de bureau, les pirates ciblent souvent les navigateurs mobiles)<\/li>\n<li>Des articles ou pages existent dans WordPress que personne n&rsquo;a cr\u00e9\u00e9s : pharmacie, contrefa\u00e7on, textes en langue \u00e9trang\u00e8re<\/li>\n<li>La liste <strong>Utilisateurs > Tous les utilisateurs<\/strong> affiche un ou plusieurs comptes administrateurs inconnus<\/li>\n<li>Le fichier .htaccess contient des r\u00e8gles de redirection que vous n&rsquo;avez jamais \u00e9crites<\/li>\n<li>Des dossiers inconnus apparaissent \u00e0 la racine du site via FTP<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Un pirate qui injecte du contenu malveillant cible en priorit\u00e9 les pages que Google indexe, pas celles que vous voyez. La consultation de votre site depuis un navigateur classique peut donc ne rien montrer.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">V\u00e9rifier avec la Search Console et un scan externe<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Deux v\u00e9rifications rapides confirment ou \u00e9cartent l&rsquo;intrusion :<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Google Search Console<\/strong>, onglet S\u00e9curit\u00e9 et actions manuelles. Un avertissement \u00ab\u00a0Ce site contient des logiciels malveillants\u00a0\u00bb est sans \u00e9quivoque. Utilisez aussi la commande site:votredomaine.com dans Google pour voir les pages index\u00e9es : si des centaines d&rsquo;URLs inconnues apparaissent, le piratage est confirm\u00e9.<\/li>\n<li><strong>Sucuri SiteCheck<\/strong> (sitecheck.sucuri.net), scan externe gratuit qui d\u00e9tecte les redirections malveillantes, le contenu blacklist\u00e9 et les modifications du .htaccess.<\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/robinet.app\/blog\/wp-content\/uploads\/2026\/10\/situation-site-wordpress-pirate-que-faire.jpg\" alt=\"Un \u00e9diteur au t\u00e9l\u00e9phone devant l'\u00e9cran de son site pirat\u00e9\"\/><figcaption>Le premier r\u00e9flexe : appeler l&rsquo;h\u00e9bergeur depuis un autre appareil.<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Si les deux confirment une intrusion, passez \u00e0 l&rsquo;\u00e9tape suivante sans attendre. Chaque heure suppl\u00e9mentaire laisse l&rsquo;attaquant actif.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Les 8 gestes \u00e0 faire dans l&rsquo;ordre dans la premi\u00e8re heure<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Beaucoup commencent par changer le mot de passe WordPress. C&rsquo;est insuffisant. Pendant ce temps, le pirate continue d&rsquo;op\u00e9rer via FTP ou la base de donn\u00e9es.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">1. Couper l&rsquo;acc\u00e8s public au site sans perdre les traces<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Activez le mode maintenance depuis votre h\u00e9bergeur ou en cr\u00e9ant un fichier .maintenance \u00e0 la racine via FTP. Objectif : emp\u00eacher les visiteurs de charger du contenu malveillant et \u00e9viter que Google \u00e9tende sa p\u00e9nalit\u00e9. Ne supprimez rien pour l&rsquo;instant ; les logs et fichiers suspects sont des preuves.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">2. Changer tous les mots de passe et r\u00e9voquer les sessions actives<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Depuis votre panneau d&rsquo;h\u00e9bergement (pas depuis WordPress) :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Nouveau mot de passe FTP\/SFTP<\/li>\n<li>Nouveau mot de passe de base de donn\u00e9es, puis mettez \u00e0 jour wp-config.php avec la nouvelle valeur<\/li>\n<li>Nouveau mot de passe du compte d&rsquo;h\u00e9bergement lui-m\u00eame<\/li>\n<li>Cl\u00e9s secr\u00e8tes WordPress : g\u00e9n\u00e9rez-en de nouvelles via <a href=\"https:\/\/api.wordpress.org\/secret-key\/1.1\/salt\/\">api.wordpress.org\/secret-key\/1.1\/salt\/<\/a> et collez-les dans wp-config.php. Cela d\u00e9connecte toutes les sessions actives instantan\u00e9ment.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Le changement de mot de passe sur une machine potentiellement compromise transmet le nouveau mot de passe \u00e0 l&rsquo;attaquant. Utilisez une autre machine, sur un autre r\u00e9seau.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">3. Supprimer ou d\u00e9sactiver les comptes administrateurs non reconnus<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Dans <strong>Utilisateurs > Tous les utilisateurs<\/strong>, supprimez tout compte que vous ne reconnaissez pas. Avant de supprimer, notez l&rsquo;adresse email associ\u00e9e : elle peut indiquer le vecteur d&rsquo;entr\u00e9e (un compte cr\u00e9\u00e9 via un formulaire de contact, une API tierce, etc.).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Changez \u00e9galement le mot de passe de TOUS les comptes administrateurs existants, pas seulement du v\u00f4tre.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">4. R\u00e9installer le c\u0153ur de WordPress depuis le tableau de bord<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Depuis <strong>Tableau de bord > Mises \u00e0 jour<\/strong>, cliquez sur \u00ab\u00a0R\u00e9installer la version X.X.X\u00a0\u00bb. WordPress t\u00e9l\u00e9charge les fichiers officiels et \u00e9crase les fichiers du c\u0153ur modifi\u00e9s, sans toucher \u00e0 vos contenus, th\u00e8mes ou extensions.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Si vous n&rsquo;avez plus acc\u00e8s au tableau de bord : t\u00e9l\u00e9chargez WordPress depuis wordpress.org, supprimez les dossiers wp-admin et wp-includes du serveur, puis envoyez ceux de l&rsquo;archive officielle par FTP. Un simple envoi par-dessus laisserait en place les fichiers ajout\u00e9s par le pirate.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">5. Inspecter et restaurer le fichier .htaccess<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Le .htaccess est le premier endroit o\u00f9 se cache une redirection pirate. Ouvrez-le via FTP (il est \u00e0 la racine, fichier masqu\u00e9, activez l&rsquo;affichage des fichiers cach\u00e9s dans FileZilla).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Un .htaccess WordPress standard ne contient que quelques lignes autour de # BEGIN WordPress. Tout le reste est suspect. Si vous voyez des blocs de redirections conditionnelles (vers des sites tiers selon l&rsquo;user-agent ou le referrer), remplacez le fichier entier par le contenu standard d&rsquo;un site install\u00e9 \u00e0 la racine du domaine :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># BEGIN WordPress\n&lt;IfModule mod_rewrite.c&gt;\nRewriteEngine On\nRewriteBase \/\nRewriteRule ^index\\.php$ - [L]\nRewriteCond %{REQUEST_FILENAME} !-f\nRewriteCond %{REQUEST_FILENAME} !-d\nRewriteRule . \/index.php [L]\n&lt;\/IfModule&gt;\n# END WordPress<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">6. Supprimer les extensions et le th\u00e8me, puis les r\u00e9installer depuis leur source officielle<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Renommez le dossier \/wp-content\/plugins en \/wp-content\/plugins-disabled via FTP. Le site bascule en mode sans extensions actives. Si le comportement suspect dispara\u00eet, une extension \u00e9tait compromise.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">R\u00e9installez chaque extension depuis wordpress.org ou sa source officielle, pas depuis une sauvegarde. Une extension pirat\u00e9e dont vous r\u00e9installez l&rsquo;archive compromise red\u00e9marre avec la backdoor int\u00e9gr\u00e9e.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Faites la m\u00eame chose avec le th\u00e8me actif. Les dossiers des th\u00e8mes non utilis\u00e9s doivent \u00eatre supprim\u00e9s enti\u00e8rement : m\u00eame d\u00e9sactiv\u00e9s dans le tableau de bord, leurs fichiers PHP restent pr\u00e9sents sur le serveur et peuvent \u00eatre appel\u00e9s directement.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p><strong>\u00c0 retenir<\/strong><\/p><ul><li>Une extension install\u00e9e depuis une source tierce (nulled, t\u00e9l\u00e9chargement direct) est une porte d&rsquo;entr\u00e9e probable<\/li><li>Les th\u00e8mes enfants h\u00e9ritent parfois du code malveillant du th\u00e8me parent<\/li><li>Si vous avez perdu l&rsquo;acc\u00e8s admin, vous ne pouvez pas supprimer une extension depuis le tableau de bord : supprimez ses fichiers directement via FTP<\/li><\/ul><\/blockquote>\n\n\n\n<h3 class=\"wp-block-heading\">7. Retirer les articles de spam et chercher d&rsquo;o\u00f9 ils viennent<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Mettez \u00e0 la corbeille les articles ou pages de spam. Avant de les supprimer d\u00e9finitivement, notez leur date de cr\u00e9ation, leur auteur assign\u00e9, et v\u00e9rifiez si une adresse externe est gliss\u00e9e dans les m\u00e9tadonn\u00e9es ou dans un r\u00e9glage global (R\u00e9glages > G\u00e9n\u00e9ral > Tagline, ou un widget de pied de page).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Une adresse ext\u00e9rieure gliss\u00e9e dans un r\u00e9glage survit \u00e0 la suppression des articles. C&rsquo;est la signature d&rsquo;une injection persistante.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">8. Demander une r\u00e9vision \u00e0 Google si le site est signal\u00e9 comme dangereux<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Si la Search Console affiche un avertissement de s\u00e9curit\u00e9 actif, une fois le nettoyage termin\u00e9 : <strong>S\u00e9curit\u00e9 et actions manuelles > Probl\u00e8mes de s\u00e9curit\u00e9 > Demander une r\u00e9vision<\/strong>. D\u00e9crivez bri\u00e8vement les mesures prises. Google traite g\u00e9n\u00e9ralement ces demandes en quelques jours, mais le site reste signal\u00e9 pendant ce d\u00e9lai.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/robinet.app\/blog\/wp-content\/uploads\/2026\/10\/infographic-site-wordpress-pirate-que-faire.png\" alt=\"Infographie : les \u00e9tapes \u00e0 suivre quand un site WordPress est pirat\u00e9\"\/><figcaption>Les \u00e9tapes de la premi\u00e8re heure, en un coup d&rsquo;\u0153il.<\/figcaption><\/figure>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p><strong>En pratique<\/strong><\/p><ul><li>Les \u00e9tapes 2 (mots de passe) et 4 (r\u00e9installation c\u0153ur) sont parmi les gestes les plus efficaces et les plus rapides \u00e0 r\u00e9aliser<\/li><li>Ne sautez pas l&rsquo;\u00e9tape .htaccess : c&rsquo;est l\u00e0 que se cachent les redirections qui r\u00e9cidivent<\/li><li>La demande de r\u00e9vision Google n&rsquo;est utile que si le nettoyage est r\u00e9ellement termin\u00e9<\/li><\/ul><\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\">Comment savoir que le nettoyage est termin\u00e9<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Un nettoyage qui semble complet peut laisser une backdoor active. Le signe le plus parlant : le site est de nouveau pirat\u00e9 quelque temps apr\u00e8s, par le m\u00eame vecteur.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>Contr\u00f4le<\/th><th>Outil<\/th><th>R\u00e9sultat attendu<\/th><\/tr><\/thead><tbody><tr><td>Scan des fichiers<\/td><td>Wordfence ou Sucuri<\/td><td>Aucun fichier malveillant d\u00e9tect\u00e9<\/td><\/tr><tr><td>Search Console<\/td><td>Google Search Console<\/td><td>Aucun avertissement actif<\/td><\/tr><tr><td>Comptes utilisateurs<\/td><td>WordPress admin<\/td><td>Aucun compte inconnu<\/td><\/tr><tr><td>.htaccess<\/td><td>FTP<\/td><td>Contenu standard uniquement<\/td><\/tr><tr><td>DNS<\/td><td>registraire<\/td><td>Pointage inchang\u00e9 vers l&rsquo;h\u00e9bergeur<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Les contr\u00f4les \u00e0 refaire 48 heures apr\u00e8s<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Relancez un scan complet apr\u00e8s un d\u00e9lai suivant le nettoyage, en plus du scan imm\u00e9diat. Pourquoi pas imm\u00e9diatement ? Certaines backdoors ont des d\u00e9clencheurs diff\u00e9r\u00e9s : elles se r\u00e9activent apr\u00e8s un premier acc\u00e8s, pas au moment de l&rsquo;installation. Un scan imm\u00e9diat peut revenir propre alors qu&rsquo;une t\u00e2che planifi\u00e9e pr\u00e9pare la r\u00e9injection.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">V\u00e9rifiez aussi les t\u00e2ches planifi\u00e9es WordPress (avec l&rsquo;extension WP Crontrol, menu <strong>Outils > Cron Events<\/strong>) : une t\u00e2che cron inject\u00e9e peut d\u00e9clencher une r\u00e9infection \u00e0 heure fixe.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Pr\u00e9venir les plateformes o\u00f9 le site est en vente<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Si le site est r\u00e9f\u00e9renc\u00e9 sur des marketplaces ou des plateformes de vente d&rsquo;articles sponsoris\u00e9s, signalez-leur la compromission pass\u00e9e et sa r\u00e9solution. Certains acheteurs d&rsquo;articles v\u00e9rifient l&rsquo;historique de s\u00e9curit\u00e9 avant de valider une commande. Un rapport de nettoyage document\u00e9 vaut mieux qu&rsquo;un silence qui inqui\u00e8te.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Les erreurs qui font tout rater<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">La plupart des r\u00e9cidives ne viennent pas d&rsquo;un piratage plus sophistiqu\u00e9. Elles viennent d&rsquo;une proc\u00e9dure incompl\u00e8te la premi\u00e8re fois.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>Erreur<\/th><th>Cons\u00e9quence<\/th><th>Alternative<\/th><\/tr><\/thead><tbody><tr><td>Remettre en ligne trop t\u00f4t<\/td><td>Le pirate garde la main, le site retombe<\/td><td>Attendre un second scan propre, puis demander la r\u00e9vision<\/td><\/tr><tr><td>Changer uniquement le mot de passe WordPress<\/td><td>Le pirate garde l&rsquo;acc\u00e8s FTP ou BDD<\/td><td>Changer TOUS les acc\u00e8s depuis l&rsquo;h\u00e9bergeur<\/td><\/tr><tr><td>R\u00e9installer une extension depuis une archive locale<\/td><td>Backdoor r\u00e9int\u00e9gr\u00e9e<\/td><td>Toujours depuis wordpress.org<\/td><\/tr><tr><td>Supprimer les articles de spam sans chercher la source<\/td><td>L&rsquo;injection recommence<\/td><td>Tracer le vecteur avant de nettoyer<\/td><\/tr><tr><td>Ignorer les DNS<\/td><td>Le domaine pointe ailleurs<\/td><td>V\u00e9rifier chez le registraire<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Remettre le site en ligne trop t\u00f4t<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Tant que Google n&rsquo;a pas valid\u00e9 la r\u00e9vision, le site reste signal\u00e9 comme dangereux, mais il doit \u00eatre en ligne et nettoy\u00e9 pour que Google puisse le v\u00e9rifier. Les visiteurs voient l&rsquo;avertissement rouge. Le trafic ne revient pas de lui-m\u00eame.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Changer uniquement le mot de passe WordPress sans toucher l&rsquo;h\u00e9bergeur<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">C&rsquo;est l&rsquo;erreur la plus courante. Elle donne l&rsquo;impression d&rsquo;avoir agi alors que l&rsquo;attaquant conserve un acc\u00e8s FTP fonctionnel. Depuis cet acc\u00e8s FTP, il peut r\u00e9\u00e9crire le .htaccess, d\u00e9poser un nouveau fichier PHP dans les m\u00e9dias, ou modifier wp-config.php directement.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Si vous ne changez que le mot de passe WordPress, vous fermez une porte en laissant les fen\u00eatres ouvertes.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Variantes selon la gravit\u00e9 de l&rsquo;intrusion<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Tous les piratages ne se traitent pas de la m\u00eame fa\u00e7on. La gravit\u00e9 conditionne la m\u00e9thode.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Piratage limit\u00e9 \u00e0 un fichier : r\u00e9installation cibl\u00e9e<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Un seul fichier .php inconnu dans \/wp-content\/uploads est fr\u00e9quent avec les injections via formulaire ou upload non filtr\u00e9. Supprimez le fichier, v\u00e9rifiez les permissions du dossier uploads (755 maximum, jamais 777), et r\u00e9installez l&rsquo;extension qui g\u00e8re les uploads si elle est impliqu\u00e9e.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">R\u00e9installation cibl\u00e9e, efficace sur un p\u00e9rim\u00e8tre pr\u00e9cis, mais insuffisante si d&rsquo;autres fichiers ont \u00e9t\u00e9 modifi\u00e9s en amont.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Compromission totale : tout supprimer et repartir d&rsquo;une sauvegarde saine<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Quand plusieurs vecteurs sont touch\u00e9s simultan\u00e9ment (c\u0153ur, extensions, base de donn\u00e9es, comptes), la restauration depuis une sauvegarde ant\u00e9rieure au piratage est souvent plus rapide et plus fiable qu&rsquo;un nettoyage fichier par fichier.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Condition : la sauvegarde doit dater d&rsquo;avant l&rsquo;intrusion. Utilisez les logs serveur pour dater le premier acc\u00e8s suspect, votre h\u00e9bergeur peut vous aider \u00e0 les interpr\u00e9ter.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Plusieurs sites sur le m\u00eame h\u00e9bergeur : isoler chacun d&rsquo;eux d&rsquo;urgence<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Un piratage sur un h\u00e9bergement mutualis\u00e9 peut se propager lat\u00e9ralement aux autres sites du m\u00eame compte. Si vous g\u00e9rez un parc de sites sur le m\u00eame h\u00e9bergeur, v\u00e9rifiez chacun d&rsquo;eux imm\u00e9diatement, m\u00eame ceux qui semblent intacts. Le fichier PHP malveillant dans le dossier m\u00e9dias d&rsquo;un site peut servir de point d&rsquo;entr\u00e9e pour les autres.<\/p>\n\n\n\n<aside class=\"rb-encadre\" style=\"margin:28px 0;padding:18px 22px;border-left:4px solid #244FF0;background-color:#E5EAFD;border-radius:0 14px 14px 0\"><strong style=\"display:block;margin-bottom:6px;color:#244FF0;font-size:15px\">Parc multi-sites<\/strong><span style=\"display:block;font-size:17px;line-height:1.55\">Sur un h\u00e9bergement mutualis\u00e9, un site compromis expose tous les autres. Auditez chaque site individuellement, m\u00eame ceux qui semblent intacts.<\/span><\/aside>\n\n\n\n<h2 class=\"wp-block-heading\">Ce que les pirates ont modifi\u00e9 sans que vous l&rsquo;ayez vu venir<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Un audit WordPress efficace va au-del\u00e0 des fichiers visibles. Certaines modifications persistent apr\u00e8s un nettoyage de surface.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">PHP cach\u00e9 dans le dossier des m\u00e9dias, DNS d\u00e9tourn\u00e9s, r\u00e9glages empoisonn\u00e9s<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Le dossier \/wp-content\/uploads n&rsquo;a aucune raison de contenir des fichiers .php. C&rsquo;est pourtant l&rsquo;un des premiers endroits o\u00f9 les pirates d\u00e9posent leurs outils, parce que ce dossier est en \u00e9criture ouverte par d\u00e9faut et rarement inspect\u00e9.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Autres zones souvent ignor\u00e9es :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>R\u00e9glages > G\u00e9n\u00e9ral<\/strong> : une URL externe gliss\u00e9e dans le champ \u00ab\u00a0Tagline\u00a0\u00bb ou \u00ab\u00a0Description du site\u00a0\u00bb reste index\u00e9e par Google m\u00eame apr\u00e8s suppression des articles de spam<\/li>\n<li><strong>Widgets et blocs r\u00e9utilisables<\/strong> : du code peut y \u00eatre inject\u00e9 et persister apr\u00e8s nettoyage des pages<\/li>\n<li><strong>DNS<\/strong> : si votre domaine r\u00e9pond depuis un serveur diff\u00e9rent de votre h\u00e9bergeur, le d\u00e9tournement est avanc\u00e9. V\u00e9rifiez imm\u00e9diatement chez votre registraire.<\/li>\n<li><strong>T\u00e2ches cron<\/strong> : une t\u00e2che planifi\u00e9e peut r\u00e9injecter du contenu \u00e0 heure fixe sans laisser de trace dans les fichiers<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Il arrive que des r\u00e9glages empoisonn\u00e9s survivent \u00e0 plusieurs cycles de nettoyage, parce que personne ne pense \u00e0 les v\u00e9rifier. C&rsquo;est souvent le dernier endroit regard\u00e9, et le premier que le pirate utilise pour s&rsquo;assurer un acc\u00e8s durable.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Surveiller ces signaux en continu avec une veille automatis\u00e9e<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Un nettoyage ponctuel prot\u00e8ge jusqu&rsquo;au prochain fichier vuln\u00e9rable ou \u00e0 la prochaine extension obsol\u00e8te. G\u00e9rer un parc de sites sans <a href=\"https:\/\/robinet.app\/produit\/veille-securite\/\">veille de s\u00e9curit\u00e9<\/a> automatis\u00e9e, c&rsquo;est d\u00e9couvrir l&rsquo;intrusion en lisant un email de Google, rarement au bon moment.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Pour les \u00e9diteurs qui g\u00e8rent plusieurs domaines, il est possible de surveiller <a href=\"https:\/\/robinet.app\/produit\/tableau-du-matin\/\">tous vos sites sur un seul \u00e9cran<\/a> et de recevoir une alerte d\u00e8s qu&rsquo;un changement suspect est d\u00e9tect\u00e9, avant que le dommage soit visible.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>Signal<\/th><th>Fr\u00e9quence de v\u00e9rification<\/th><th>Outil<\/th><\/tr><\/thead><tbody><tr><td>Fichiers c\u0153ur modifi\u00e9s<\/td><td>Quotidienne<\/td><td>Wordfence, Robinet Shield<\/td><\/tr><tr><td>Comptes administrateurs<\/td><td>\u00c0 chaque alerte<\/td><td>WordPress admin<\/td><\/tr><tr><td>DNS<\/td><td>Hebdomadaire<\/td><td>Registraire<\/td><\/tr><tr><td>Search Console<\/td><td>Hebdomadaire<\/td><td>Google Search Console<\/td><\/tr><tr><td>T\u00e2ches cron<\/td><td>Apr\u00e8s chaque nettoyage<\/td><td>WP Crontrol<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Les pi\u00e8ges de la fausse confiance<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Une r\u00e9cidive rapide apr\u00e8s nettoyage est presque toujours le signe d&rsquo;une backdoor non d\u00e9tect\u00e9e, et non d&rsquo;un attaquant plus habile.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Le sc\u00e9nario se r\u00e9p\u00e8te : nettoyage des fichiers visibles, changement du mot de passe WordPress, remise en ligne. Quelque temps plus tard, les m\u00eames pages de spam r\u00e9apparaissent. La backdoor \u00e9tait dans un fichier image renomm\u00e9 .php, dans un sous-dossier du dossier m\u00e9dias que personne n&rsquo;avait ouvert.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Un audit complet couvre ces zones invisibles. Si vous avez un doute sur la compl\u00e9tude du nettoyage, des prestataires sp\u00e9cialis\u00e9s proposent ce service.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Questions fr\u00e9quentes<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Mon h\u00e9bergeur peut-il nettoyer le site \u00e0 ma place ?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">La plupart des h\u00e9bergeurs proposent une restauration de sauvegarde, mais pas un audit de s\u00e9curit\u00e9 ni un nettoyage de backdoor. Ils remettront votre site dans l&rsquo;\u00e9tat d&rsquo;une date ant\u00e9rieure, ce qui est utile si vous avez une sauvegarde saine, mais ne ferme pas la faille qui a permis l&rsquo;intrusion. Le nettoyage actif reste \u00e0 votre charge ou \u00e0 celle d&rsquo;un prestataire sp\u00e9cialis\u00e9.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Le piratage affecte-t-il le r\u00e9f\u00e9rencement de fa\u00e7on permanente ?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Non, \u00e0 condition d&rsquo;agir vite et de valider la r\u00e9vision Google. Un site signal\u00e9 comme dangereux voit son trafic chuter brutalement, mais la p\u00e9nalit\u00e9 est lev\u00e9e apr\u00e8s validation de la demande de r\u00e9vision dans la Search Console. Plus le site reste signal\u00e9 longtemps, plus le retour \u00e0 la normale prend de temps : quelques jours \u00e0 quelques semaines selon l&rsquo;anciennet\u00e9 du signal.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Comment savoir depuis quelle version de plugin le piratage s&rsquo;est produit ?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Les logs d&rsquo;acc\u00e8s serveur (access.log) conservent les requ\u00eates HTTP avec leur timestamp. Cherchez les requ\u00eates POST inhabituelles vers des fichiers d&rsquo;extensions, ou des acc\u00e8s \u00e0 des URLs qui n&rsquo;existent pas dans votre installation. Votre h\u00e9bergeur peut vous aider \u00e0 interpr\u00e9ter ces logs si vous n&rsquo;\u00eates pas \u00e0 l&rsquo;aise avec leur format.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Un site WordPress pirat\u00e9 se nettoie, mais la vraie erreur \u00e0 ne pas commettre, c&rsquo;est de consid\u00e9rer le nettoyage comme termin\u00e9 apr\u00e8s avoir chang\u00e9 le mot de passe et supprim\u00e9 les articles de spam.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">V\u00e9rifiez le .htaccess, les t\u00e2ches cron, les r\u00e9glages globaux et le dossier des m\u00e9dias avant de remettre le site en ligne. C&rsquo;est l\u00e0 que la r\u00e9cidive se pr\u00e9pare.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Lancez un scan complet du site avec Wordfence ou Sucuri d\u00e8s maintenant, avant de toucher \u00e0 quoi que ce soit d&rsquo;autre. Ce scan vous donnera une carte des modifications, et c&rsquo;est depuis cette carte que tout le reste s&rsquo;organise.<\/p>\n\n\n","protected":false},"excerpt":{"rendered":"<p>Redirections, spam, administrateur inconnu : sur un site WordPress pirat\u00e9, que faire d&rsquo;abord ? Les gestes dans l&rsquo;ordre, puis comment \u00e9viter la r\u00e9cidive.<\/p>\n","protected":false},"author":1,"featured_media":21,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-15","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-non-classe"],"_links":{"self":[{"href":"https:\/\/robinet.app\/blog\/wp-json\/wp\/v2\/posts\/15","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/robinet.app\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/robinet.app\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/robinet.app\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/robinet.app\/blog\/wp-json\/wp\/v2\/comments?post=15"}],"version-history":[{"count":4,"href":"https:\/\/robinet.app\/blog\/wp-json\/wp\/v2\/posts\/15\/revisions"}],"predecessor-version":[{"id":22,"href":"https:\/\/robinet.app\/blog\/wp-json\/wp\/v2\/posts\/15\/revisions\/22"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/robinet.app\/blog\/wp-json\/wp\/v2\/media\/21"}],"wp:attachment":[{"href":"https:\/\/robinet.app\/blog\/wp-json\/wp\/v2\/media?parent=15"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/robinet.app\/blog\/wp-json\/wp\/v2\/categories?post=15"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/robinet.app\/blog\/wp-json\/wp\/v2\/tags?post=15"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}