CVE-2026-42945 (CVSS 9.2): NGINX Rift — Desbordamiento de Montón Explotado en Producción, PoC Público de RCE Sin Autenticación
Un desbordamiento de montón de 18 años en el módulo de reescritura de NGINX está siendo explotado activamente. Un PoC público encadena un bypass de ASLR para lograr RCE sin autenticación. Actualiza a 1.30.1 o 1.31.0 de inmediato.
CVE-2026-42945 — bautizada como “NGINX Rift” — es un desbordamiento de búfer en el montón dentro de ngx_http_rewrite_module, presente en NGINX desde la versión 0.6.27: aproximadamente 18 años sin detectarse. Cada versión estable de NGINX hasta la 1.30.0 está afectada. CVSS 9.2.
F5 divulgó la vulnerabilidad el 13 de mayo de 2026. Tres días después, el equipo de inteligencia de amenazas de Cloudflare detectó intentos de explotación activa. A 27 de mayo existe un proof-of-concept público que incluye una cadena completa de bypass de ASLR capaz de lograr ejecución remota de código sin autenticación previa ni interacción del operador del servidor.
Qué permite la vulnerabilidad
El módulo ngx_http_rewrite_module procesa reglas de reescritura en la configuración de NGINX. Una petición HTTP especialmente manipulada puede desbordar un búfer en el montón durante la evaluación de dichas reglas, corrompiendo memoria adyacente. El PoC público aprovecha una fuga de información en un proceso worker secundario de NGINX para derrotar al ASLR y luego sobreescribe un puntero de función para redirigir la ejecución. Resultado: ejecución de código arbitrario con los permisos del proceso worker de NGINX, normalmente www-data o nginx.
En servidores donde NGINX corre como root (una mala práctica frecuente), el atacante obtiene RCE con privilegios de root sin ninguna autenticación. Incluso en despliegues más robustos, un atacante puede extraer secretos de la memoria, abrir shells inversas o moverse lateralmente en entornos containerizados.
Versiones afectadas
- Todas las versiones: 0.6.27 — 1.30.0 (ramas estable y mainline)
- NGINX Plus R32 y anteriores — F5 publicó un aviso separado con versiones parcheadas
- Kubernetes ingress-nginx queda expuesto si usa NGINX 1.30.0 o anterior — confirmado por HeroDevs
Parches disponibles
- NGINX 1.30.1 (estable) — parcheado
- NGINX 1.31.0 (mainline) — parcheado
- NGINX Plus R33 — parcheado
Comando de actualización en Debian/Ubuntu:
apt update && apt install nginx=1.30.1-1~focal
Para Alpine (habitual en imágenes Docker):
apk upgrade nginx
Verificar versión instalada:
nginx -v
Mitigaciones temporales si no puedes parchear
Deshabilitar ngx_http_rewrite_module elimina la superficie de ataque pero rompe cualquier sitio que use reglas de reescritura, lo cual abarca la mayoría de entornos productivos. Una alternativa más práctica: restringir el tamaño de las peticiones HTTP y aplicar reglas de WAF que bloqueen payloads dirigidos al módulo de reescritura. F5 publicó firmas de WAF específicas dentro de las 48 horas posteriores a la divulgación.
Por qué tardó 18 años en descubrirse
La ruta de código vulnerable requería una combinación concreta de profundidad en las reglas de reescritura y estado específico del asignador de memoria, combinación que el fuzzing superficial nunca detectó. El investigador Jonah Schultz, de Assetnote, la encontró ejecutando un fuzzer de estado profundo contra rutas de código raramente ejercidas en módulos C sin gestión de memoria segura. La misma técnica ya ha encontrado dos vulnerabilidades adicionales en NGINX que están bajo divulgación responsable.
Si ejecutas NGINX en cualquier lugar —directamente, detrás de una CDN, en contenedores Docker o como ingress controller— parchea hoy. El PoC es público y la explotación activa está confirmada.
Lecturas relacionadas
- Ciberseguridad CVE-2026-23918: RCE en Apache HTTP Server 2.4.66 vía Doble Liberación en HTTP/2 — Actualiza a 2.4.67 Ya
- Ciberseguridad CVE-2026-39987: Marimo Python Notebook expone RCE sin autenticación — CISA ordena parche de emergencia
- Ciberseguridad Cisco parchea un bypass de autenticación crítico en IMC que entrega control total de servidores — CVE-2026-20093 (CVSS 9.8)