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
nginx-rift-detect — Script de detección de comportamiento para CVE-2026-42945 (NGINX Rift) — desbordamiento de montón en ngx_http_rewrite_module. Sin RCE, detección basada únicamente en crashes. | Kitploit
Herramientas/GitHubGitHub/iammerrida-source/nginx-rift-detect
Escáneres de VulnerabilidadesExplotaciónRecopilación de InformaciónSeguridad WebSeguridad de RedesPruebas de Penetración
GitHubiammerrida-source/nginx-rift-detect

nginx-rift-detect

Script de detección de comportamiento para CVE-2026-42945 (NGINX Rift) — desbordamiento de montón en ngx_http_rewrite_module. Sin RCE, detección basada únicamente en crashes.

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
Ver Repositorio
3hace 3 mesesAún no revisado

nginx-rift-detect

Script de detección por comportamiento para CVE-2026-42945 (NGINX Rift) — un desbordamiento de búfer en el montón en ngx_http_rewrite_module presente en nginx desde 2008.

Python CVE CVSS License


⚠️ Descargo de responsabilidad

Esta herramienta está destinada exclusivamente a pruebas de seguridad e investigación autorizadas. Ejecútela únicamente contra sistemas de su propiedad o para los que tenga permiso explícito por escrito para realizar pruebas. El uso no autorizado puede violar las leyes de delitos informáticos de su jurisdicción. El autor no se hace responsable de ningún uso indebido o daño causado por esta herramienta.


Antecedentes

CVE-2026-42945 es un desbordamiento de búfer en el montón en el motor de scripts de reescritura de nginx (ngx_http_rewrite_module), introducido en la versión 0.6.27 (2008) y presente durante ~18 años.

El error proviene de un desajuste entre dos pasadas del motor de reescritura:

  • Pasada 1 (cálculo de longitud): ve is_args = 0 → asigna un búfer pequeño
  • Pasada 2 (copia de datos): ve is_args = 1 → llama a ngx_escape_uri, expandiendo cada byte escapable (como +) a 3× su tamaño → desborda el búfer del montón

Esto permite la ejecución remota de código sin autenticación.

Versiones afectadas:

ProductoVulnerableCorregido
NGINX Open Source0.6.27 – 1.30.01.30.1, 1.31.0+
NGINX PlusR32 – R36R36 P4, R35 P2, R32 P6

Referencias:

  • Investigación original y PoC — DepthFirstDisclosures
  • Aviso de seguridad de F5 K000160932

Cómo funciona la detección

Este script no intenta ejecutar RCE. Imita el flujo del PoC utilizando sockets sin procesar:

  1. Canario — envía 3 peticiones normales para confirmar que el servidor es estable antes de probar
  2. Heap spray — abre 20 conexiones para retener memoria
  3. Disparador — envía GET /api/<349×A><969×+> como petición HTTP parcial
  4. Sonda — si el socket de disparo se cierra inesperadamente (el worker falló y se reinició), el objetivo se marca como vulnerable

La detección depende de provocar la caída de un proceso worker. El proceso maestro de nginx lo reiniciará inmediatamente, pero habrá una breve interrupción. Utilice esta herramienta con precaución en sistemas de producción.


Uso

root@kitploit:~
# Single target (HTTP)
python3 detect-CVE-2026-42945.py --host 127.0.0.1 --port 80

# Single target (HTTPS)
python3 detect-CVE-2026-42945.py --host example.com --port 443 --tls

# List of targets
python3 detect-CVE-2026-42945.py -l targets.txt

# With threading and output file
python3 detect-CVE-2026-42945.py -l targets.txt --threads 10 -o vulnerable.txt

# More attempts for unreliable targets
python3 detect-CVE-2026-42945.py --host 10.0.0.1 --port 8080 --tries 5

Formato de targets.txt — uno por línea:

root@kitploit:~
http://example.com
https://example.com:8443
192.168.1.1
192.168.1.1:8080

Opciones:

root@kitploit:~
--host          Single target host
--port          Port (default: 80, or 443 with --tls)
--tls           Use TLS/HTTPS for single target
-l, --list      File with list of targets
--tries         Detection attempts per target (default: 3)
--threads       Concurrent threads for list scan (default: 5)
-o, --output    Save vulnerable targets to CSV file

Ejemplo de salida

root@kitploit:~
[*] CVE-2026-42945 NGINX Rift Detection | targets=2 threads=5 tries=3

[*] http://192.168.1.1:80   - nginx/1.28.0
[*] http://192.168.1.2:8080 - nginx/1.31.0

[!!!] VULNERABLE | http://192.168.1.1:80 | nginx/1.28.0 | worker crash (trigger connection closed — worker respawned)
[+]   http://192.168.1.2:8080 - not vulnerable (or timing miss, try --tries 5)

==================================================
[*] Scan complete. 2 targets scanned.
[!!!] 1 VULNERABLE target(s):
      http://192.168.1.1:80 (nginx/1.28.0)
==================================================

Pruebas contra el laboratorio

El repositorio original incluye un entorno de laboratorio Docker:

root@kitploit:~
git clone https://github.com/DepthFirstDisclosures/Nginx-Rift
cd Nginx-Rift
chmod +x setup.sh && ./setup.sh
docker compose -f env/docker-compose.yml up -d

python3 detect-CVE-2026-42945.py --host 127.0.0.1 --port 19321

Licencia

MIT — consulte LICENSE


Investigación original de vulnerabilidad y PoC: DepthFirstDisclosures

Descargar herramienta