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
CVE-2026-42945 — Exploit de prueba de concepto para CVE-2026-42945, un desbordamiento de búfer en el montón en las directivas `rewrite`/`set` de NGINX, que permite DoS y posible RCE mediante solicitudes manipuladas. | Kitploit
Herramientas/GitHubGitHub/imsre9/cve-2026-42945
Análisis de VulnerabilidadesExplotaciónSeguridad WebPruebas de PenetraciónAprendizaje y EducaciónExplotación de Binarios
GitHubimsre9/cve-2026-42945

CVE-2026-42945

Exploit de prueba de concepto para CVE-2026-42945, un desbordamiento de búfer en el montón en las directivas `rewrite`/`set` de NGINX, que permite DoS y posible RCE mediante solicitudes manipuladas.

Ver Repositorio
2hace 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 - Desbordamiento de búfer en el montón

Resumen

CVE-2026-42945 es una vulnerabilidad grave de desbordamiento de búfer en el montón en el servidor NGINX, conocida como "NGINX Rift". La vulnerabilidad reside en la lógica de procesamiento de las directivas rewrite y set de NGINX. Cuando se cumplen condiciones de configuración específicas, un atacante puede provocar un desbordamiento del montón mediante una solicitud maliciosa, lo que conduce a una denegación de servicio (DoS) e incluso a una posible ejecución remota de código (RCE).

Tipo de vulnerabilidad: Desbordamiento de búfer en el montón Nivel de riesgo: Alto ID CVE: CVE-2026-42945


Versiones afectadas

  • Versiones afectadas: NGINX 0.6.27 ~ 1.30.0
  • Versiones no afectadas: NGINX 1.31.0 y posteriores

Versiones corregidas

Se recomienda actualizar inmediatamente a una de las siguientes versiones:

  • NGINX 1.31.0 o cualquier versión estable superior
  • Versiones con parches de seguridad proporcionadas por los proveedores de las distribuciones

Condiciones de activación

La vulnerabilidad se activa cuando se cumplen simultáneamente las dos condiciones siguientes:

  1. Condición de configuración: La configuración de NGINX utiliza al mismo tiempo:

    • La directiva rewrite (con la cadena de reemplazo que contiene el carácter ?)
    • La directiva set (que referencia grupos de captura de la expresión regular de rewrite, como $1, $2)
  2. Condición de solicitud: La URI de la solicitud contiene caracteres escapables (por ejemplo, +, &, %, etc.)

Explicación del principio:

  • La directiva rewrite establece e->is_args = 1 (nunca se reinicia)
  • La fase de cálculo de longitud de la directiva set utiliza un submotor con todos los valores a cero (le.is_args = 0)
  • NGINX decodifica %25 como %, pero ngx_escape_uri lo vuelve a codificar como %25 (3 bytes)
  • Cada carácter %25 se expande de 1 byte a 3 bytes, provocando una escritura fuera de los límites del búfer

Método de explotación

Prueba de concepto (PoC)

root@kitploit:~
# Usar el script de prueba del proyecto
python3 CVE-2026-42945/CVE-2026-42945-test.py --host cve.test.com --port 80

Proceso de verificación de la vulnerabilidad

  1. Enviar una solicitud normal para confirmar que el servidor está en funcionamiento
  2. Enviar una solicitud con unos pocos caracteres %25 para una prueba a pequeña escala
  3. Enviar una solicitud con muchos caracteres %25 (por ejemplo, 2000) para provocar el desbordamiento del búfer
  4. Verificar si el servidor se bloquea o devuelve una respuesta anómala (error 500/502)
  5. Comprobar si el servidor se recupera automáticamente (el proceso master crea un nuevo worker mediante fork)

Análisis de resultados de prueba

Resultados del PoC en arquitectura de una sola capa

En una configuración de NGINX de una sola capa, las pruebas desencadenan la vulnerabilidad:

Análisis del registro de bloqueo:

  • El proceso Worker se bloquea debido a SIGSEGV (señal)
  • El bloqueo ocurre en la función ngx_http_script_flush_no_cacheable_variables
  • Fase de bloqueo: ngx_http_core_rewrite_phase

Resultados del PoC en arquitectura de dos capas

En una configuración de NGINX de dos capas (capa1 de reenvío + capa2 de negocio), los resultados de la prueba son los siguientes:

Escenario de configuraciónResultado en capa1Resultado en capa2Análisis de causa
rewrite sin break + proxy_pass❌ Vulnerabilidad activada (404)❌ No llega ninguna solicitudTras rewrite, se ejecuta set y provoca desbordamiento del montón; el worker se bloquea
rewrite con break + proxy_pass✅ Normal (200)⚠️ Posible activación de la vulnerabilidadbreak detiene la ejecución de set; la solicitud se reenvía normalmente al backend

Descripción de archivos

ArchivoDescripción
CVE-2026-42945/CVE-2026-42945-test.pyScript PoC de prueba de vulnerabilidad, utilizado para verificar si el objetivo es vulnerable
single_layer_test/single_layer_nginx.confEjemplo de configuración de NGINX vulnerable en arquitectura de una sola capa
single_layer_test/image.pngDiagrama explicativo del principio de la vulnerabilidad
single_layer_test/test.logArchivo de registro de prueba
double_layer_test/layer1_nginx.confConfiguración de NGINX de la primera capa (capa de reenvío) en arquitectura de dos capas
double_layer_test/layer2_nginx.confConfiguración de NGINX de la segunda capa (capa de negocio) en arquitectura de dos capas

Referencias

  • Aviso oficial de seguridad de NGINX
  • Detalles de CVE-2026-42945 en MITRE
  • NVD - CVE-2026-42945

Descargo de responsabilidad

Este proyecto se proporciona únicamente con fines de investigación y educación en seguridad. Los usuarios deben cumplir con las leyes y regulaciones de su país o región. El autor no se hace responsable de ningún uso no autorizado o malintencionado.

¡Prohibido su uso para ataques ilegales!


Última actualización: 2026-05-19

Descargar herramienta