Comment le scan détecte les malwares, et ce qu'il ne voit pas
Le scan analyse votre site WordPress depuis l'extérieur, sans jamais exécuter son code. Les fichiers sont lus comme du texte, octet par octet, et comparés à des références : empreintes officielles, signatures de menaces connues. Voici exactement ce qu'il fait, comment il classe ce qu'il trouve, et ce que nous avons mesuré.
Ce que le scan examine
Notre extension de connexion, publiée sur WordPress.org, fonctionne en lecture seule : chaque requête est signée, et elle ne peut ni modifier ni supprimer un fichier. L'analyse a lieu sur nos serveurs, pas sur votre hébergement.
Le cœur de WordPress, comparé aux fichiers officiels
Chaque fichier du cœur est comparé à son empreinte publiée par WordPress.org pour votre version. Un fichier modifié, ou un fichier PHP qui n'appartient pas au cœur, est signalé.
Le reste des fichiers, passé au crible de 123 règles
Extensions, thèmes, téléversements et fichiers .htaccess sont analysés par des règles YARA versionnées : webshells, portes dérobées, injecteurs, code obfusqué et indices de campagnes identifiées. Le code PHP caché dans des fichiers .cache, .ico ou .tmp est aussi signalé.
Une partie de la base de données
Avec l'extension de connexion, le scan lit en lecture seule les options, les comptes administrateurs et éditeurs, les tâches planifiées et les contenus. Le tri se fait sur votre site : les valeurs sensibles (mots de passe, clés, adresses e-mail) n'en sortent jamais.
Les failles connues de vos versions
Les versions de WordPress, des extensions actives et du thème actif sont comparées à la base publique WPVulnerability. Une faille connue est signalée « à vérifier » avec la version qui la corrige : ce n'est pas une infection, c'est une porte qu'un attaquant peut utiliser. Seuls les noms et numéros de version quittent nos serveurs.
Trois niveaux de verdict
Un indice isolé n'est jamais présenté comme une infection. Chaque élément signalé reçoit l'un de ces trois niveaux :
Menace confirmée
Une preuve forte et peu ambiguë : une règle de webshell ou de porte dérobée à haute confiance, ou une signature antivirus. C'est le seul niveau compté comme une infection.
À vérifier
Un indice réel mais un contexte insuffisant pour conclure : fichier du cœur modifié, code obfusqué, entrée suspecte de la base. Un humain doit regarder avant d'agir.
Informatif
Une différence probablement légitime ou un fichier que WordPress n'exécute jamais, comme wp-config-sample.php. Signalé, jamais compté comme une infection.
Le score de risque suit ces verdicts : tant qu'aucune menace n'est confirmée, il ne dépasse pas 15 sur 100. Un site qui ne présente que des éléments à vérifier n'est pas un site infecté, et nous ne gonflons pas le score pour vendre un nettoyage.
Ce que nous avons mesuré
Aucun scanner ne détecte 100 % des menaces. Voici nos chiffres sur nos corpus de test, y compris celui qui nous dessert.
de rappel sur un corpus de 381 webshells PHP réels (365 détectés).
sur du malware PHP générique chiffré (AES/XOR) : 50 sur 102. Une analyse statique ne voit pas ce qui est chiffré — c'est notre angle mort.
faux positif observé sur 1 285 fichiers du core WordPress et 56 motifs pièges. Les extensions de type gestionnaire de fichiers n'ont pas été testées.
Nos angles morts
Nous préférons vous les dire avant que vous payiez. Quand une analyse n'a pas pu aller au bout (fichiers impossibles à télécharger, durée maximale atteinte), le rapport l'indique par un constat d'analyse partielle.
- Le code chiffré (AES, XOR) échappe en grande partie à une analyse statique : 49 % de détection sur notre corpus.
- Les extensions et thèmes payants n'ont pas d'empreintes publiques : leurs fichiers passent par les règles, sans comparaison avec l'original.
- Les dossiers nommés cache (par exemple wp-content/cache/) ne sont pas listés par l'extension.
- La vérification des failles connues ne porte que sur les extensions et le thème actifs, et s'appuie sur une base publique : une extension payante absente de WordPress.org y figure rarement.
- Le scan de secours, déposé par FTP quand l'administration est inaccessible, n'analyse ni la base de données ni les failles connues des versions.
- Le scan ne voit que le site WordPress : ni le reste du serveur, ni les tâches planifiées du système, ni les clés SSH.
Ce que deviennent vos données
- Vos fichiers sont lus pendant l'analyse puis oubliés : seuls les résultats sont conservés.
- Un extrait de code cité dans un rapport ne dépasse jamais 500 caractères.
- Analyse et stockage sur Google Cloud, région Francfort. Journaux techniques : 30 jours. Rapports : jusqu'à 2 ans.
- Le triage par IA des cas ambigus est une option que vous déclenchez vous-même ; il est confié à un prestataire hébergé hors UE (DeepSeek).
Le détail figure dans notre politique de confidentialité.
Voir à quoi ressemble un vrai rapport
Nous publions un rapport de scan réel, consultable sans créer de compte. Vous y verrez comment chaque élément est classé, et pourquoi un fichier signalé n'est pas forcément une infection.
