Si votre site Wordpress a récemment été infecté, il est possible que les hackers aient introduit du code malveillant sur certaines pages du CMS. Lorsque Google mettra à jour l’indexation de vos pages, vous pourrez constater que de nombreux résultats de recherche contiennent des pages inconnues et des caractères spéciaux. Voici donc un article pour vous aider à faire du ménage sur un site Wordpress piraté.

bldwebagency-wordpress-hacked-site-pirate-google

Nettoyer un site Wordpress piraté

Il convient tout d’abord d’identifier pourquoi votre site a été piraté. La version de PHP est obsolète et présente des failles de sécurité ? Vous utilisez une version de Wordpress trop ancienne ? ou vous avez installé un plugin non mis à jour depuis des années ?

Si vous avez encore accès à l’administration Wordpress, rendez-vous dans la liste des extensions et récupérez un maximum d’informations sur ces dernières pour identifier celle qui peut présenter un risque. Vous pouvez utiliser ce Scan de Vulnérabilités pour les Plugins et les thèmes. Egalement, veillez à ce que le cœur de Wordpress soit à jour, c’est la base.

Si vous n’avez plus accès à l’administration du site, connectez-vous en FTP ou SSH et récupérez un maximum d’informations sur les plugins et les thèmes.

Dans un second temps, il convient de remonter une sauvegarde de votre site sur un environnement de test. Cette étape va vous permettre de remonter dans le temps en restaurant fichiers et base de données afin d’y effectuer un scan complet des fichiers. Vous pourrez alors identifier la sauvegarde ne contenant aucun fichier compromis.

Identifier le code compromis dans un site Wordpress Piraté

Voici quelques commandes linux pour identifier les fichiers infectés, contenant du code en base64 :

cd /var/www/html/monsite.com && grep -R return.*base64_decode  .
find $dir -name "*.php" -type f | xargs sed -i 's#<?php /\*\*/ eval(base64_decode("aWY[^>]*?>##g'
find . -name "*.php" -print0 | xargs -0 egrep -l `eval\(base64_decode\)` >> infected_files.txt

Lorsque l’ensemble des fichiers seront scannés, la dernière commande vous listera les fichiers compromis. Après analyse, vous pourrez décider si il est bon de conserver l’ensemble des fichiers, de les nettoyer, ou de repartir sur une installation propre.

Purger les URLs malveillantes des résultats Google

Dans le cas ou votre site a été infecté et piraté, il est possible que du code y soit injecté et que de nouvelles pages ou redirections soient en place sans que vous ne puissiez les identifier. Si plusieurs jours se sont écoulés, alors Google a commencé l’indexation de ces pages. Vous pourrez alors constater que des résultats concernant votre nom de domaine sont visibles, mais redirigent vers d’autres sites.

Pour nettoyer ces URLs dans les résultats de recherche Google, il convient d’identifier le pattern des URLs présentes dans l’index Google. Prenons cet exemple :

https://nom-de-domaine.fr/conmrixzp741732
https://nom-de-domaine.fr/ctuuc961439
http://nom-de-domaine.fr/haxfwcowv6881
http://nom-de-domaine.fr/chlwfzkle658271
http://nom-de-domaine.fr/fjsxt794539
http://nom-de-domaine.fr/ngogtvudqw9573192

Il est possible d’analyser ces requests uri de la façon suivante : on identifie que l’URL commence par :

  • de 5 à 10 lettres puis
  • une suite de 4 à 7 chiffres selon les urls.

Après quelques tests, nous pouvons déduire que la regexp suivante pourrait couvrir ces URLs :

^[a-z]{5,10}\d{4,7}$

A partir de cette regexp nous pouvons donc générer la règle de redirection suivante qui va indiquer aux moteurs de recherche de ne plus suivre les URLs correspondantes.

<IfModule mod_rewrite.c>
         RewriteEngine On
 	RewriteBase /
 	ErrorDocument 410 default
 	RewriteRule ^[a-z]{4,10}\d{4,10}$ – [E=NOINDEXNOFOLLOW,G,END]
 	Header always set X-Robots-Tag "noindex, nofollow" env=noindexnofollow
 </IfModule>

Il va falloir ensuite se rendre sur l’outil de suppression d’URL de Google, pour leur demander de retirer toutes les URLs concernées. Cette opération est indispensable si vous souhaitez que l’opération soit plus rapide. Voici également l’aide Google sur l’outil de suppression d’URL.

Protéger son site Wordpress des attaques et injections de code

Pour conclure cet article, il n’est pas difficile de comprendre qu’il est primordiale de sécuriser son site Wordpress. Pour cela, quelques règles de base :

  • Choisir un hébergeur de confiance qui peut offrir une première couche de sécurité (o2switch, hostinger, infomaniak…).
  • Mettre en place une sauvegarde décentralisée et journalière de son site (avec rétention d’au moins 10 jours..)
  • Configurer un plugin de protection anti DDOS et de détection des tentatives d’injection de code (WP-Cerber, Sucuri)
  • Protéger Wordpress en ajoutant les Headers de base (Article de WPBeginner)
  • Protéger l’accès aux fichiers spécifiques de Wordpress et configurer une protection de base depuis le htaccess (Article de CreativeBloq)

Retrouvez tous nos articles sur Wordpress en suivant ce lien.