Golang
Last updated
Last updated
Lernen & üben Sie AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Lernen & üben Sie GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
In der Programmiersprache Go ist es eine gängige Praxis, beim Umgang mit HTTP-Anfragen, insbesondere unter Verwendung der net/http
-Bibliothek, den Anfragepfad automatisch in ein standardisiertes Format zu konvertieren. Dieser Prozess umfasst:
Pfade, die mit einem Schrägstrich (/
) enden, wie /flag/
, werden auf ihr Gegenstück ohne Schrägstrich umgeleitet, /flag
.
Pfade, die Verzeichnis-Traversierungssequenzen wie /../flag
enthalten, werden vereinfacht und auf /flag
umgeleitet.
Pfade mit einem nachgestellten Punkt wie in /flag/.
werden ebenfalls auf den sauberen Pfad /flag
umgeleitet.
Eine Ausnahme wird jedoch bei der Verwendung der CONNECT
-Methode beobachtet. Im Gegensatz zu anderen HTTP-Methoden löst CONNECT
nicht den Pfadnormalisierungsprozess aus. Dieses Verhalten eröffnet einen potenziellen Zugang zu geschützten Ressourcen. Durch die Verwendung der CONNECT
-Methode zusammen mit der Option --path-as-is
in curl
kann man die standardmäßige Pfadnormalisierung umgehen und möglicherweise eingeschränkte Bereiche erreichen.
Der folgende Befehl demonstriert, wie man dieses Verhalten ausnutzen kann:
Lerne & übe AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Lerne & übe GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)