Lors de mon stage au SIA BDE INSA Lyon, le site WordPress de l'intégration des nouvelles promotions a été victime d'une attaque par compromission de plugin. L'incident a été détecté le 14 décembre 2025, lorsque des membres de l'équipe IT ont remarqué une page de phishing imitant le human checker de Cloudflare.
La page malveillante invitait les visiteurs Windows à copier et exécuter un script PowerShell effectuant un memory dump. L'attaque était suffisamment sophistiquée pour ne s'activer que sur Windows, passant inaperçue sur Mac et Linux.
J'ai participé activement à l'investigation en collaboration avec les membres de l'équipe SIA (Yassine, Valentin, Clément), en analysant les logs, les plugins compromis, la base de données et les fichiers modifiés.
- Cible : Site WordPress de l'intégration BDE INSA Lyon (wp-inte)
- Infrastructure : Container Docker sur serveur Bitnami, derrière VPN Twingate
- Outils d'investigation : Portainer, accès VPS, dump MariaDB, analyse de fichiers PHP
- Vecteur initial : Plugin WordPress vulnérable installé le 18 octobre 2025
- Collaboration : Investigation collective via canal Discord sécurisé, en temps réel
one_images_user), contenant une backdoor PHP obfusquée créant silencieusement un compte administrateur caché (admlnlx).content-recaptcha), faux WAF (__waffance.php) et module de backlinks cachés (__secwaf.php).admlnlx, root, admins, adminbackup, HostingManager. Tous avec le rôle administrateur WordPress complet.admlnlx) et réinitialise les mots de passe des autres admins. Code PHP masqué par obfuscation.administrator. Emails liés à des domaines suspects (fexpost.com). Créés entre le 18 et 19 octobre 2025.__waffance.php intercepte les requêtes et redirige les visiteurs Windows vers la page de phishing Cloudflare.content-recaptcha : fichier PHP obfusqué réalisant des injections SQL pour maintenir la persistance.__secwaf.php injecte des liens cachés (display:none) en footer via l'API aiobacklinks.com. SEO poisoning.
Script PHP fortement obfusqué — plugin content-recaptcha

Comptes admin frauduleux découverts dans la base de données

Tous les comptes frauduleux ont le rôle administrator

Avertissement intégré au script — s'auto-supprime après exécution

Backdoor dans one_images_user — point d'entrée initial

Commentaires en turc dans le code — origine identifiée

Faux WAF (__waffance.php) — redirection phishing

Web shell récupéré dans /tmp
Commande forensique utilisée :
find . -type f -newermt "2025-10-18 00:00:00" ! -newermt "2025-10-20 00:00:00"
- ✓Suppression de tous les plugins compromis (
/pluginset/mu-plugins) - ✓Analyse et nettoyage des fichiers modifiés entre le 18 et le 20 octobre
- ✓Nettoyage de la base de données — suppression des 5 comptes admin frauduleux
- ✓Rotation des mots de passe : BDD, compte SIA, comptes WordPress légitimes
- ✓Redéploiement depuis une image propre — réinstallation des fichiers core WordPress
- ✓Activation des mises à jour automatiques des plugins
- ✓Mise en place d'une image Docker sécurisée (Chainguard WordPress)
- ✓Sensibilisation de l'équipe intégration sur la maintenance des plugins