Un backdoor, ou porte dérobée, est un point d’accès dissimulé qu’un attaquant installe après une première intrusion réussie sur un site WordPress. Son seul but est de garantir un retour possible, même si la faille d’origine est corrigée ou si le mot de passe administrateur est changé.
Les formes courantes de backdoor sur WordPress
- Fichier PHP caché dans
wp-content/uploadsou un dossier de plugin, souvent nommé pour ressembler à un fichier système légitime (wp-tmp.php,class-cache.php) - Code injecté dans un fichier existant, par exemple dans
functions.phpdu thème actif, avec du contenu encodé en base64 pour échapper à une lecture rapide - Compte administrateur caché, créé avec un nom qui n’apparaît pas dans les vues par défaut de la liste des utilisateurs
- Tâche planifiée malveillante enregistrée dans les options WordPress (WP-Cron), qui réinstalle le backdoor s’il est supprimé
Pourquoi un backdoor rend le nettoyage difficile
Un attaquant expérimenté dépose rarement un seul point d’accès : plusieurs backdoors redondants, à des emplacements différents, sont fréquents. Supprimer un seul fichier suspect laisse alors les autres actifs, ce qui explique pourquoi un site nettoyé superficiellement se retrouve souvent réinfecté en quelques jours.
Comment détecter et éliminer un backdoor
- Comparer les fichiers cœur WordPress à leur version officielle avec
wp core verify-checksums(WP-CLI), qui révèle toute modification non standard - Rechercher les fonctions PHP à risque (
eval,base64_decode,gzinflate,str_rot13) combinées entre elles, un schéma classique de camouflage - Vérifier la table des utilisateurs pour tout compte administrateur non créé sciemment
- Régénérer les clés secrètes WordPress après nettoyage, pour invalider toute session ou cookie déjà compromis