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
ai-vuln-rediscovery-nginx-cve-2026-42945 — Redescubrimiento reproducible de vulnerabilidad asistido por IA de CVE-2026-42945 en nginx, que incluye análisis técnico, disparador de PoC y validación de parche para desbordamiento de búfer en el montón. | Kitploit
Herramientas/GitHubGitHub/chamsbouzaiene/ai-vuln-rediscovery-nginx-cve-2026-42945
Análisis de VulnerabilidadesSeguridad WebPapers e InvestigaciónAprendizaje y EducaciónSeguridad de IAExplotación de Binarios
GitHubchamsbouzaiene/ai-vuln-rediscovery-nginx-cve-2026-42945

ai-vuln-rediscovery-nginx-cve-2026-42945

Redescubrimiento reproducible de vulnerabilidad asistido por IA de CVE-2026-42945 en nginx, que incluye análisis técnico, disparador de PoC y validación de parche para desbordamiento de búfer en el montón.

Ver Repositorio
25hace 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

Redescubrimiento asistido por IA de CVE-2026-42945 en nginx

Este repositorio documenta un experimento reproducible de redescubrimiento de vulnerabilidad asistido por IA contra el módulo ngx_http_rewrite_module de nginx, posteriormente asociado con CVE-2026-42945.

El experimento es intencionalmente limitado. El archivo vulnerable, src/http/ngx_http_script.c, se proporcionó directamente al modelo para su auditoría. Esto no es una afirmación de que un sistema de IA encontró el problema de forma autónoma en la base de código completa de nginx desde cero.

Resumen

El error auditado es un desbordamiento de búfer en el heap causado por un estado obsoleto del motor de scripts en el procesamiento de reescritura de nginx.

A alto nivel:

  1. Una sustitución de rewrite que contiene ? establece e->is_args = 1.
  2. En el código vulnerable, e->is_args no se limpia después de que finaliza la reescritura.
  • Una expresión posterior set, if o rewrite que copie una captura de regex sin nombre, como $1, puede dimensionar el búfer de destino como si la captura se copiara sin procesar.
  • El paso de escritura luego ve el e->is_args = 1 obsoleto y escapa la URI de la captura.
  • El escape puede expandir bytes como espacios de un byte a tres bytes, por lo que el paso de escritura excede la asignación calculada por el paso de longitud.
  • La reproducción local con AddressSanitizer confirma un heap-buffer-overflow en:

    root@kitploit:~
    ngx_escape_uri
    ngx_http_script_copy_capture_code
    ngx_http_rewrite_handler
    

    Qué Contiene Este Repositorio

    root@kitploit:~
    .
    ├── README.md
    ├── LICENSE
    ├── prompts/
    │   ├── audit_prompt.md
    │   └── poc_prompt.md
    ├── poc/
    │   ├── trigger.py
    │   ├── nginx.conf
    │   ├── reproduce.sh
    │   └── expected_output.txt
    ├── docs/
    │   ├── technical-analysis.md
    │   ├── vulnerability-breakdown.md
    │   └── methodology.md
    └── screenshots/
        └── asan-crash.png
    

    Reproducción

    El PoC está diseñado para una compilación de laboratorio local de nginx vulnerable con AddressSanitizer habilitado. Inicia nginx en 127.0.0.1:18080, envía una solicitud manipulada a un servidor local e imprime evidencia del fallo.

    1. Compilar nginx vulnerable con ASan

    Utilice un árbol fuente de nginx afectado. El experimento se validó contra nginx 1.30.0 compilado con clang y ASan:

    root@kitploit:~
    ./auto/configure \
      --prefix=/tmp/nginx-asan-poc \
      --with-cc-opt='-O0 -g -fsanitize=address -fno-omit-frame-pointer' \
      --with-ld-opt='-fsanitize=address'
    
    make -j"$(getconf _NPROCESSORS_ONLN 2>/dev/null || sysctl -n hw.ncpu)"
    

    2. Ejecutar el PoC

    Desde este repositorio:

    root@kitploit:~
    NGINX_BIN=/path/to/vulnerable/nginx/objs/nginx ./poc/reproduce.sh
    

    Si este repositorio se coloca directamente dentro del checkout del código fuente de nginx utilizado para la validación, el script también encuentra ../../objs/nginx automáticamente.

    3. Resultado esperado

    Una reproducción exitosa imprime un informe de ASan similar a:

    root@kitploit:~
    ERROR: AddressSanitizer: heap-buffer-overflow
    WRITE of size 1
        #0 ngx_escape_uri ngx_string.c:1687
        #1 ngx_http_script_copy_capture_code ngx_http_script.c:1399
        #2 ngx_http_rewrite_handler ngx_http_rewrite_module.c:180
    

    Ver poc/expected_output.txt.

    Captura de pantalla del fallo de ASan

    Configuración de Activación Mínima

    La configuración de nginx utilizada por el PoC es intencionalmente pequeña:

    root@kitploit:~
    location / {
        rewrite ^(.*) /new?c=1;
        set $myvar $1;
        return 200 "$myvar\n";
    }
    

    La primera reescritura establece e->is_args porque la sustitución contiene ?. La posterior set evalúa $1 mientras ese estado obsoleto aún está presente.

    Parche Oficial

    El parche mínimo restablece la bandera de estado de argumentos del motor de scripts cuando finaliza una reescritura de regex:

    root@kitploit:~
    e->is_args = 0;
    e->quote = 0;
    

    En el árbol fuente utilizado para este experimento, la corrección aparece como commit:

    root@kitploit:~
    524977e7c534e87e5b55739fa74601c9f1102686
    Rewrite: fixed escaping and possible buffer overrun
    

    El punto clave no es el tamaño del parche, sino el invariante de estado que restaura: el paso de longitud y el paso de escritura deben estar de acuerdo sobre si las capturas se están copiando como argumentos de URI.

    Transparencia del Experimento

    Este experimento utilizó un agente de codificación de frontera como asistente de auditoría. El prompt dirigió explícitamente al modelo a centrarse en problemas de seguridad de memoria en src/http/ngx_http_script.c y a prestar especial atención a discrepancias de dos pasos (longitud/escritura).

    Limitaciones importantes:

    • El archivo fuente vulnerable se proporcionó directamente.
    • El prompt de auditoría estaba altamente dirigido a la clase de error.
    • El modelo tuvo acceso al historial del repositorio local durante la validación.
    • El resultado debe interpretarse como redescubrimiento guiado, no como búsqueda autónoma de errores.
    • El PoC demuestra solo evidencia de fallo/ASan; no es un exploit armado.

    Los prompts exactos se incluyen en prompts/audit_prompt.md y prompts/poc_prompt.md.

    Uso Responsable

    Este repositorio está destinado a la investigación defensiva, la validación de parches y la reproducibilidad. Ejecute el PoC solo contra instancias de laboratorio local que usted controle.

    Licencia

    La documentación y el harness del PoC en este repositorio se publican bajo la Licencia MIT. nginx en sí no está incluido y se rige por su propia licencia.

    Descargar herramienta