mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-23 05:03:35 +00:00
48 lines
3.7 KiB
Markdown
48 lines
3.7 KiB
Markdown
{% hint style="success" %}
|
|
Lernen & üben Sie AWS Hacking:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
|
Lernen & üben Sie GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
|
|
|
<details>
|
|
|
|
<summary>Unterstützen Sie HackTricks</summary>
|
|
|
|
* Überprüfen Sie die [**Abonnementpläne**](https://github.com/sponsors/carlospolop)!
|
|
* **Treten Sie der** 💬 [**Discord-Gruppe**](https://discord.gg/hRep4RUj7f) oder der [**Telegram-Gruppe**](https://t.me/peass) bei oder **folgen** Sie uns auf **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
|
* **Teilen Sie Hacking-Tricks, indem Sie PRs an die** [**HackTricks**](https://github.com/carlospolop/hacktricks) und [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub-Repos senden.
|
|
|
|
</details>
|
|
{% endhint %}
|
|
|
|
|
|
## CONNECT-Methode
|
|
|
|
In der Programmiersprache Go ist es eine gängige Praxis beim Umgang mit HTTP-Anfragen, insbesondere unter Verwendung der `net/http`-Bibliothek, die automatische Umwandlung des Anfragepfads in ein standardisiertes Format. Dieser Prozess umfasst:
|
|
|
|
- Pfade, die mit einem Schrägstrich (`/`) enden, wie `/flag/`, werden auf ihre nicht-schließende Entsprechung, `/flag`, umgeleitet.
|
|
- Pfade, die Verzeichnis-Traversierungssequenzen wie `/../flag` enthalten, werden vereinfacht und auf `/flag` umgeleitet.
|
|
- Pfade mit einem abschließenden 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 eine potenzielle Möglichkeit, auf geschützte Ressourcen zuzugreifen. 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:
|
|
```bash
|
|
curl --path-as-is -X CONNECT http://gofs.web.jctf.pro/../flag
|
|
```
|
|
[https://github.com/golang/go/blob/9bb97ea047890e900dae04202a231685492c4b18/src/net/http/server.go\#L2354-L2364](https://github.com/golang/go/blob/9bb97ea047890e900dae04202a231685492c4b18/src/net/http/server.go#L2354-L2364)
|
|
|
|
|
|
|
|
{% hint style="success" %}
|
|
Lernen & üben Sie AWS Hacking:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
|
Lernen & üben Sie GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
|
|
|
<details>
|
|
|
|
<summary>Unterstützen Sie HackTricks</summary>
|
|
|
|
* Überprüfen Sie die [**Abonnementpläne**](https://github.com/sponsors/carlospolop)!
|
|
* **Treten Sie der** 💬 [**Discord-Gruppe**](https://discord.gg/hRep4RUj7f) oder der [**Telegram-Gruppe**](https://t.me/peass) bei oder **folgen** Sie uns auf **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
|
* **Teilen Sie Hacking-Tricks, indem Sie PRs an die** [**HackTricks**](https://github.com/carlospolop/hacktricks) und [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub-Repos senden.
|
|
|
|
</details>
|
|
{% endhint %}
|