hacktricks/network-services-pentesting/pentesting-web/golang.md

47 lines
3.7 KiB
Markdown
Raw Normal View History

2022-04-28 16:01:33 +00:00
<details>
2024-02-10 13:03:23 +00:00
<summary><strong>Impara l'hacking di AWS da zero a eroe con</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
2022-04-28 16:01:33 +00:00
2024-02-10 13:03:23 +00:00
Altri modi per supportare HackTricks:
2022-04-28 16:01:33 +00:00
2024-02-10 13:03:23 +00:00
* Se vuoi vedere la tua **azienda pubblicizzata su HackTricks** o **scaricare HackTricks in PDF** Controlla i [**PACCHETTI DI ABBONAMENTO**](https://github.com/sponsors/carlospolop)!
* Ottieni il [**merchandising ufficiale di PEASS & HackTricks**](https://peass.creator-spring.com)
* Scopri [**The PEASS Family**](https://opensea.io/collection/the-peass-family), la nostra collezione di [**NFT esclusivi**](https://opensea.io/collection/the-peass-family)
* **Unisciti al** 💬 [**gruppo Discord**](https://discord.gg/hRep4RUj7f) o al [**gruppo Telegram**](https://t.me/peass) o **seguici** su **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Condividi i tuoi trucchi di hacking inviando PR ai** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repos di github.
2022-04-28 16:01:33 +00:00
</details>
2024-02-10 13:03:23 +00:00
## Metodo CONNECT
2021-02-01 09:01:16 +00:00
2024-02-10 13:03:23 +00:00
Nel linguaggio di programmazione Go, una pratica comune quando si gestiscono richieste HTTP, specificamente utilizzando la libreria `net/http`, è la conversione automatica del percorso della richiesta in un formato standardizzato. Questo processo comporta:
2021-02-01 09:01:16 +00:00
2024-02-10 13:03:23 +00:00
- I percorsi che terminano con una barra (`/`) come `/flag/` vengono reindirizzati alla loro controparte senza barra, `/flag`.
- I percorsi che contengono sequenze di attraversamento delle directory come `/../flag` vengono semplificati e reindirizzati a `/flag`.
- I percorsi con un punto finale come `/flag/.` vengono anche reindirizzati al percorso pulito `/flag`.
2021-02-01 09:01:16 +00:00
2024-02-10 13:03:23 +00:00
Tuttavia, si osserva un'eccezione con l'uso del metodo `CONNECT`. A differenza degli altri metodi HTTP, `CONNECT` non attiva il processo di normalizzazione del percorso. Questo comportamento apre una potenziale via per accedere a risorse protette. Utilizzando il metodo `CONNECT` insieme all'opzione `--path-as-is` in `curl`, è possibile aggirare la normalizzazione standard del percorso e potenzialmente raggiungere aree restritte.
2024-02-08 21:36:15 +00:00
2024-02-10 13:03:23 +00:00
Il seguente comando mostra come sfruttare questo comportamento:
2024-02-08 21:36:15 +00:00
```bash
2021-02-01 09:01:16 +00:00
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)
2022-04-28 16:01:33 +00:00
<details>
2024-02-10 13:03:23 +00:00
<summary><strong>Impara l'hacking di AWS da zero a eroe con</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
2022-04-28 16:01:33 +00:00
2024-02-10 13:03:23 +00:00
Altri modi per supportare HackTricks:
2022-04-28 16:01:33 +00:00
2024-02-10 13:03:23 +00:00
* Se vuoi vedere la tua **azienda pubblicizzata in HackTricks** o **scaricare HackTricks in PDF** Controlla i [**PACCHETTI DI ABBONAMENTO**](https://github.com/sponsors/carlospolop)!
* Ottieni il [**merchandising ufficiale di PEASS & HackTricks**](https://peass.creator-spring.com)
* Scopri [**The PEASS Family**](https://opensea.io/collection/the-peass-family), la nostra collezione di [**NFT**](https://opensea.io/collection/the-peass-family) esclusivi
* **Unisciti al** 💬 [**gruppo Discord**](https://discord.gg/hRep4RUj7f) o al [**gruppo Telegram**](https://t.me/peass) o **seguici** su **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Condividi i tuoi trucchi di hacking inviando PR ai repository github di** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud).
2022-04-28 16:01:33 +00:00
</details>