Retour aux articles
Par  

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

Le navigateur affiche une alerte rouge devant votre site. Ou vos visiteurs atterrissent sur une boutique de contrefaçons. Ou votre hébergeur vient de suspendre le compte. Dans tous les cas, la même question : que faire, et dans quel ordre ?

L’ordre compte plus qu’on ne le croit. La plupart des sites repiratés la semaine suivant un « nettoyage » l’ont été parce qu’on a effacé les symptômes sans fermer la porte d’entrée. Voici la marche à suivre que j’applique quand on m’appelle pour un site WordPress compromis.

1. Confirmer que le site est bien piraté

Certains signes ne trompent pas :

  • une alerte du navigateur ou de Google (« Ce site est peut-être piraté », « Site trompeur ») ;
  • des redirections vers d’autres sites, souvent seulement sur mobile ou depuis Google, ce qui les rend invisibles quand vous tapez l’adresse vous-même ;
  • des pages que vous n’avez jamais créées, à caractère sexuel, ou en vente de médicaments, qui apparaissent dans les résultats de Google ;
  • un compte administrateur que personne ne reconnaît ;
  • un message de votre hébergeur : envoi massif d’e-mails, fichiers suspects, compte suspendu.

Un site simplement lent ou en erreur n’est pas forcément piraté. Mais au moindre de ces signes, partez du principe qu’il l’est.

2. Ne rien effacer, faire suspendre le site

Le premier réflexe — tout supprimer, ou restaurer la sauvegarde de la veille — est le mauvais. Les fichiers modifiés et les journaux du serveur sont les seuls indices qui diront par où l’attaquant est entré. Sans eux, on nettoie à l’aveugle.

Demandez plutôt à votre hébergeur de suspendre le site, ou mettez une page de maintenance : vos visiteurs ne sont plus exposés, et les traces restent intactes.

3. Changer tous les mots de passe, depuis un appareil sain

Si un mot de passe a fuité, l’attaquant peut revenir à tout moment. Changez-les tous, depuis un ordinateur dont vous êtes sûr :

  • les comptes administrateur WordPress, et supprimez ceux que vous ne connaissez pas ;
  • l’espace client de l’hébergeur ;
  • les accès FTP ou SFTP ;
  • le mot de passe de la base de données, à reporter dans le fichier de configuration de WordPress ;
  • la messagerie liée au site, surtout si elle sert à réinitialiser les autres accès.

Renouvelez aussi les clés de sécurité de WordPress dans le fichier de configuration : toutes les sessions ouvertes sont déconnectées, y compris celle de l’intrus.

4. Prévenir l’hébergeur et récupérer les journaux

Votre hébergeur a souvent repéré l’activité suspecte avant vous. Demandez-lui les journaux d’accès du serveur sur les dernières semaines et la liste de ses sauvegardes : il en conserve parfois que vous ignorez, et l’une d’elles est peut-être antérieure à l’infection.

5. Trouver la porte d’entrée

C’est l’étape que l’on saute le plus souvent, et la seule qui empêche la récidive. Dans l’immense majorité des cas, l’entrée est l’une de ces trois :

  • une extension ou un thème pas à jour, dont la faille est publiée et exploitée en série par des robots ;
  • un mot de passe réutilisé ailleurs, récupéré dans une fuite de données ;
  • une extension « premium » téléchargée gratuitement sur un site tiers, livrée avec sa porte dérobée.

Pour la repérer : comparez les versions installées aux bases publiques de vulnérabilités, regardez quels fichiers ont été modifiés récemment et à quelle date, et cherchez dans les journaux du serveur les requêtes inhabituelles autour de cette date. La coïncidence entre une faille connue et la date des premiers fichiers modifiés désigne presque toujours le coupable.

6. Nettoyer, ou restaurer une sauvegarde saine

Deux options, selon ce dont vous disposez.

Une sauvegarde datée d’avant l’infection existe : restaurez-la, mais seulement après avoir identifié la faille, puis mettez tout à jour avant de remettre le site en ligne. Vous perdrez ce qui a été publié depuis, à ressaisir.

Aucune sauvegarde fiable : il faut nettoyer en place.

  1. réinstaller le cœur de WordPress depuis la source officielle, et vérifier que ses fichiers sont intacts ;
  2. réinstaller chaque extension et le thème depuis leur source officielle, et supprimer ceux qui ne servent plus ;
  3. chercher des fichiers PHP là où il ne devrait y en avoir aucun, à commencer par le dossier des médias ;
  4. inspecter la base de données : scripts injectés dans les contenus ou les réglages, utilisateurs ajoutés ;
  5. contrôler les fichiers de configuration du serveur, souvent modifiés pour les redirections.

Un nettoyage partiel ne sert à rien : il suffit d’un fichier oublié pour que tout recommence.

7. Fermer la faille

Une fois le site propre, verrouillez-le avant de le rouvrir :

  • mettez à jour le cœur, le thème et toutes les extensions, et remplacez celles qui ne sont plus maintenues ;
  • activez la double authentification sur les comptes administrateur, et limitez les tentatives de connexion ;
  • ne gardez que les comptes nécessaires, avec les droits nécessaires ;
  • désactivez l’éditeur de fichiers intégré à l’administration ;
  • interdisez l’exécution de code PHP dans le dossier des médias.

8. Réparer les dégâts visibles

Le site est propre, mais ses conséquences durent :

  • Google : dans la Search Console, le rapport « Problèmes de sécurité » liste ce que Google a détecté. Une fois le site nettoyé, demandez un examen : selon le type de problème, l’alerte disparaît en quelques jours ou quelques semaines.
  • Les pages parasites créées par l’attaquant doivent renvoyer une erreur 404 ou 410 pour sortir de l’index.
  • Vos e-mails : si du spam est parti de votre domaine, vos messages peuvent arriver en indésirables pendant un temps. Surveillez-le, et vérifiez la configuration d’envoi de votre domaine.
  • Les données personnelles : si des fichiers clients, des comptes ou des commandes ont été exposés, une violation qui présente un risque pour les personnes doit être notifiée à la CNIL dans les 72 heures après en avoir pris connaissance.

9. Éviter que ça recommence

Un site sécurisé puis laissé seul redevient vulnérable en quelques mois : une faille est publiée, une extension est oubliée. Ce qui protège dans la durée tient en trois habitudes — des mises à jour appliquées chaque semaine, des sauvegardes stockées ailleurs que sur le serveur et dont on a vérifié qu’elles se restaurent, une surveillance qui alerte avant vos visiteurs. C’est exactement ce que couvre un contrat de maintenance.

Quand faire appel à un professionnel

Vous pouvez suivre ces étapes vous-même si vous êtes à l’aise avec les accès au serveur. Faites-vous aider si vous ne trouvez pas la porte d’entrée, si le site encaisse des paiements ou stocke des données clients, ou s’il a déjà été repiraté après un premier nettoyage.

Je prends en charge le diagnostic, le nettoyage et la sécurisation de sites piratés, WordPress en premier lieu. Écrivez à urgence@jehan.dev : vous aurez une réponse le jour ouvré même.

Un barbu qui fait un boulot de barbu

Je vous accompagne à tous les niveaux pour vos projets web

Me contacter