wp-vcd sur WordPress : reconnaître et supprimer l'infection

wp-vcd est l'un des malwares WordPress les plus répandus, propagé par les thèmes et plugins nulled. Voici comment le reconnaître, le supprimer et l'empêcher de revenir.

Par WP-Detox 4 min de lecture

Si vous avez repéré un fichier wp-vcd.php, wp-tmp.php ou wp-feed.php dans wp-includes, ou du code étrange en haut du functions.php de vos thèmes, vous avez affaire à wp-vcd — l’un des malwares WordPress les plus répandus au monde. Bonne nouvelle : il est bien connu et se nettoie, à condition de traiter la cause et pas seulement les fichiers.

Qu’est-ce que wp-vcd ?

wp-vcd est un malware WordPress auto-réplicatif dont l’objectif principal est le spam SEO : il injecte des liens et du contenu cachés dans vos pages pour référencer des sites tiers, et ouvre un accès administrateur au passage. Il se propage presque exclusivement par les thèmes et plugins « nulled » — des versions premium piratées, distribuées gratuitement sur des sites douteux, dans lesquelles le malware est empaqueté. Dès que vous installez l’extension, wp-vcd s’active.

Sa signature, c’est la persistance par réplication. Il n’y a pas un fichier à supprimer, mais un cycle : des fichiers dans le cœur qui réinjectent du code dans les thèmes, et du code dans les thèmes qui recrée les fichiers.

Les symptômes

  • Fichiers wp-vcd.php, wp-tmp.php, wp-feed.php ou class.wp.php dans wp-includes.
  • Un bloc de code (souvent une longue ligne encodée) en tête du functions.php de tous vos thèmes, y compris ceux que vous n’utilisez pas.
  • Des articles ou liens spam que vous n’avez pas créés, parfois visibles seulement pour Googlebot.
  • Un compte administrateur inconnu.
  • Des fichiers malveillants qui réapparaissent juste après suppression.

Où wp-vcd se cache

  • wp-includes/wp-vcd.php, wp-tmp.php, wp-feed.php — les fichiers porteurs.
  • Le functions.php de chaque thème installé — c’est le moteur de réplication.
  • Parfois wp-includes/post.php ou d’autres fichiers du cœur, modifiés pour appeler la charge.

Comment vérifier si vous êtes infecté

En SSH, à la racine du site :

find wp-includes -name 'wp-vcd.php' -o -name 'wp-tmp.php' -o -name 'wp-feed.php'
grep -rl "wp_vcd\|wp-vcd\|tmpcontentx" wp-content/themes/
grep -rEl "eval\(|base64_decode\(" wp-content/themes/ wp-includes/

Le scan gratuit WP-Detox détecte à distance les fichiers de cette famille et le code injecté dans les thèmes, sans que vous ayez à fouiller manuellement.

Le supprimer proprement

wp-vcd résiste au nettoyage partiel : si vous supprimez les fichiers sans nettoyer les thèmes (ou l’inverse), il se régénère. L’ordre qui marche :

  1. Sauvegardez l’état actuel.
  2. Réinstallez le cœur de WordPress depuis wordpress.org : cela remplace d’un coup wp-includes et supprime wp-vcd.php/wp-tmp.php. Notre guide détaille comment réinstaller le cœur de WordPress.
  3. Supprimez tout thème nulled — c’est la source. Ne le « nettoyez » pas, jetez-le. Remplacez-le par une version légitime.
  4. Réinstallez les thèmes et plugins légitimes depuis leurs sources officielles, pour purger le code injecté dans functions.php.
  5. Supprimez le compte administrateur pirate et régénérez tous les accès et les clés de salage.

Comment il revient (persistance)

Le mécanisme de wp-vcd est circulaire : le code dans functions.php recrée les fichiers du cœur, et les fichiers du cœur réinjectent le code dans les thèmes. Retirer un seul maillon laisse l’autre régénérer l’ensemble. Et tant que le thème nulled d’origine est présent, le malware revient à la première visite. La seule sortie fiable est de remplacer le cœur ET tous les thèmes/plugins par des sources propres, en même temps.

FAQ

Comment wp-vcd est-il arrivé sur mon site ? Dans l’immense majorité des cas, par un thème ou un plugin « nulled » — une version payante piratée téléchargée gratuitement hors du dépôt officiel. Le malware est empaqueté avec l’extension et s’active dès l’installation.

J’ai supprimé wp-vcd.php mais il revient, pourquoi ? Parce que wp-vcd s’auto-réplique. Il injecte du code dans le functions.php de tous vos thèmes ; à chaque chargement, ce code recrée les fichiers wp-vcd.php et wp-tmp.php. Il faut nettoyer les thèmes en même temps que les fichiers, sinon l’infection se régénère.

wp-vcd peut-il voler des données ? Son objectif principal est le spam SEO et les backlinks cachés, plus la création d’un accès administrateur. Mais toute backdoor active permet potentiellement d’aller plus loin : il faut donc traiter l’infection comme une compromission complète et régénérer tous les accès.


Chez WP-Detox, on nettoie les infections auto-réplicatives comme wp-vcd en traitant le cycle complet — cœur, thèmes, comptes et faille d’entrée. Le scan est gratuit, le nettoyage prend environ 30 minutes, c’est 149 € HT et remboursé si le site n’est pas propre. Pour la marche complète, voyez le guide pour nettoyer un WordPress piraté.

À lire ensuite