En bref : si vous souhaitez faire supprimer un malware de votre site web, effacer quelques fichiers suffit rarement. Nous sauvegardons d'abord les constats, trouvons les webshells, portes dérobées et tâches cachées, reconstruisons à partir de sources fiables et refermons la porte d'entrée. Alors seulement le nettoyage est solide.
À quoi reconnaître un malware sur le site web
Un code malveillant sur un site web ne se remarque souvent qu'indirectement. Typiques sont les redirections vers des sites étrangers, des contenus de spam visibles uniquement par les moteurs de recherche ou les appareils mobiles, un avertissement de Google dans les résultats de recherche, des plaintes de clients ou un blocage par l'hébergeur pour envoi de spam. Sur le serveur apparaissent des fichiers PHP inconnus, de nouveaux comptes administrateur, des fichiers .htaccess modifiés ou des tâches cron inexplicables.
Après PHP2Shell s'ajoute une autre inquiétude : par CVE-2026-109618 et CVE-2026-109619, des attaquants peuvent exécuter du code sans authentification. Il n'existe pas d'indicateurs de compromission (IOC) publiés et confirmés ; la détection repose sur l'analyse comportementale. À quoi ressemblent typiquement les webshells et où elles se trouvent, Reconnaître et supprimer les webshells le décrit.
Supprimer un malware d'un site web : pourquoi la rigueur importe plus que la rapidité
Les attaquants déposent rarement un seul fichier. Plusieurs portes dérobées à des endroits différents sont courantes : dans les dossiers d'envoi, dans les plugins ou thèmes, dans les must-use plugins, dans la base de données, dans les tâches cron ou dans des comptes utilisateur supplémentaires. Si seul le fichier le plus voyant est supprimé, le code malveillant revient.
Dans le même temps, l'état infecté est un élément de preuve. Quiconque nettoie trop vite perd la possibilité de déterminer si des données clients sont concernées. C'est pourquoi nous sauvegardons avant toute modification. Cela coûte peu de temps et vous laisse toutes les voies ouvertes, y compris une notification ultérieure à l'autorité de contrôle ou à l'assureur.
Une mise à jour de PHP ou du CMS ne supprime pas un logiciel malveillant déjà présent sur le serveur. Et un site web nettoyé est de nouveau infecté tant que la porte d'entrée reste ouverte.
Où le code malveillant se cache typiquement
Nous vérifions les endroits suivants lors de chaque nettoyage, car ils sont concernés encore et encore dans la pratique :
| Emplacement | Constat typique |
|---|---|
| Dossiers d'envoi | fichiers PHP aux noms d'apparence inoffensive ou camouflés en image |
| Plugins, thèmes, modules | fichiers supplémentaires ou fichiers d'origine modifiés |
| Configuration | lignes introduites dans .htaccess, .user.ini ou les fichiers d'entrée |
| Base de données | comptes administrateur étrangers, scripts dans les contenus ou les options |
| Système | tâches cron, clés SSH supplémentaires, processus sans but identifiable |
| Caches et dossiers temporaires | copies de code malveillant qui réapparaissent après suppression |
Le lien entre les éléments est important : une seule découverte explique rarement tout l'incident. Seul le tableau d'ensemble montre comment l'attaquant a procédé et s'il a emporté des identifiants.
Comment PHP SOS aide-t-il concrètement ?
- Sauvegarder : nous créons une copie des fichiers, de la base de données et des journaux dans l'état infecté. Elle est conservée pour une analyse ultérieure.
- Rechercher : nous comparons les fichiers du programme avec les originaux de l'éditeur, vérifions la présence de code exécutable dans les dossiers d'envoi, fouillons la base de données, les tâches cron, les comptes utilisateur et la configuration du serveur. Pour les environnements WordPress, nous procédons comme décrit dans Trouver les portes dérobées dans WordPress.
- Nettoyer : nous réinstallons le cœur, les extensions et les thèmes à partir de sources fiables, au lieu de rapiécer des fichiers suspects un par un. Nous examinons séparément vos propres contenus et envois, et ne reprenons que ce qui est sans risque.
- Fermer la cause : nous appliquons le correctif à PHP et à l'application, supprimons les comptes étrangers et remplaçons tous les identifiants et clés que l'attaquant a pu voir.
- Contrôle ultérieur : nous surveillons le site web après le nettoyage pour détecter de nouvelles modifications et vous aidons à faire réexaminer un avertissement de Google via la Search Console. Plus d'informations sous Supprimer l'avertissement de Google.
Pour les administrateurs, un premier coup d'œil sans danger aux fichiers PHP modifiés récemment :
# Fichiers PHP du répertoire web modifiés au cours des 10 derniers jours
find /var/www -type f -name "*.php" -mtime -10 -printf "%TY-%Tm-%Td %TH:%TM %p\n" | sort
Le résultat est un indice, pas une preuve : les attaquants peuvent modifier les horodatages.
Ce que vous recevez et ce dont nous avons besoin
Vous recevez un rapport avec les composants malveillants trouvés et leur emplacement, les mesures de nettoyage, la liste des identifiants remplacés et la porte d'entrée probable. Nous distinguons clairement ce qui est établi, ce qui est probable et ce qui est inconnu.
De votre part, nous avons besoin de :
- l'accès au serveur ou au panneau d'hébergement, au back-office du CMS et à la base de données
- un interlocuteur capable de valider les changements de mots de passe et les mises hors service
- des informations sur l'agence, le développeur ou l'hébergeur et sur les adaptations propres au système
- les sauvegardes existantes avec leur date, afin que nous puissions estimer quel état pourrait être sain
- l'accès à Google Search Console, si un avertissement s'affiche
Ce que nous ne promettons pas
Nous ne promettons pas que chaque porte dérobée sera trouvée à coup sûr sur chaque système si des journaux manquent ou si l'infection remonte à longtemps. Lorsque la situation est floue, nous recommandons la reconstruction sur un serveur neuf, sur lequel seuls des contenus vérifiés sont transférés. C'est plus coûteux, mais souvent la voie la plus fiable. Nous ne prédisons pas non plus quand Google ou d'autres services retireront un avertissement ; ce sont ces fournisseurs qui en décident.
S'il faut établir de manière recevable devant un tribunal ce qui s'est exactement passé et quelles données sont concernées, nous faisons appel à la forensique informatique avec des partenaires spécialisés. En cas d'attaque aiguë et encore en cours, le travail commence par l'aide d'urgence en cas de site web piraté.
Questions fréquentes
Un plugin antimalware suffit-il à nettoyer mon site web ?
Un scanner trouve des motifs connus, mais pas toutes les portes dérobées. Les webshells sont souvent obscurcies, se cachent dans des images, des caches ou la base de données, ou sont ancrées dans une tâche cron. Un scanner est un outil, pas un nettoyage complet.
Puis-je simplement restaurer une ancienne sauvegarde ?
Seulement s'il est certain que la sauvegarde date d'avant l'intrusion et que la porte d'entrée est ensuite refermée. Sinon, le site web est propre un instant et est de nouveau infecté par le même chemin.
Pourquoi le malware réapparaît-il sans cesse après suppression ?
Il existe le plus souvent une seconde porte dérobée, une tâche cron, un compte administrateur manipulé, ou bien la faille est encore ouverte. Le nettoyage ne tient que lorsque tous les mécanismes de persistance ont été trouvés et la cause éliminée.
Une mise à jour de PHP supprime-t-elle un malware existant ?
Non. Un correctif ferme la faille, mais ne supprime aucun logiciel malveillant déjà introduit. Ce sont deux étapes de travail distinctes.