hacktricks/pentesting-web/http-connection-contamination.md

46 lines
4.3 KiB
Markdown
Raw Normal View History

# HTTP Connection Contamination
2022-11-07 10:43:41 +00:00
{% hint style="success" %}
Learn & practice 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">\
Learn & practice 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)
2022-11-07 10:43:41 +00:00
<details>
2022-11-07 10:43:41 +00:00
<summary>Support HackTricks</summary>
2024-02-03 12:22:53 +00:00
* Check the [**subscription plans**](https://github.com/sponsors/carlospolop)!
* **Join the** 💬 [**Discord group**](https://discord.gg/hRep4RUj7f) or the [**telegram group**](https://t.me/peass) or **follow** us on **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Share hacking tricks by submitting PRs to the** [**HackTricks**](https://github.com/carlospolop/hacktricks) and [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
2022-11-07 10:43:41 +00:00
</details>
{% endhint %}
2022-11-07 10:43:41 +00:00
**Questo è un riepilogo del post: [https://portswigger.net/research/http-3-connection-contamination](https://portswigger.net/research/http-3-connection-contamination)**. Controllalo per ulteriori dettagli!
2022-11-07 10:43:41 +00:00
I browser web possono riutilizzare una singola connessione HTTP/2+ per diversi siti web attraverso [HTTP connection coalescing](https://daniel.haxx.se/blog/2016/08/18/http2-connection-coalescing), date indirizzi IP condivisi e un certificato TLS comune. Tuttavia, questo può confliggere con il **first-request routing** nei reverse proxy, dove le richieste successive sono dirette al back-end determinato dalla prima richiesta. Questo errore di instradamento può portare a vulnerabilità di sicurezza, particolarmente quando combinato con certificati TLS wildcard e domini come `*.example.com`.
2022-11-07 10:43:41 +00:00
Ad esempio, se `wordpress.example.com` e `secure.example.com` sono entrambi serviti dallo stesso reverse proxy e hanno un certificato wildcard comune, la coalescenza della connessione di un browser potrebbe portare le richieste a `secure.example.com` a essere elaborate erroneamente dal back-end di WordPress, sfruttando vulnerabilità come XSS.
2022-11-07 10:43:41 +00:00
Per osservare la coalescenza delle connessioni, si possono utilizzare la scheda Rete di Chrome o strumenti come Wireshark. Ecco un frammento per il test:
2022-11-07 10:43:41 +00:00
```javascript
fetch('//sub1.hackxor.net/', {mode: 'no-cors', credentials: 'include'}).then(()=>{ fetch('//sub2.hackxor.net/', {mode: 'no-cors', credentials: 'include'}) })
```
La minaccia è attualmente limitata a causa della rarità del routing della prima richiesta e della complessità di HTTP/2. Tuttavia, le modifiche proposte in HTTP/3, che allentano il requisito di corrispondenza dell'indirizzo IP, potrebbero ampliare la superficie di attacco, rendendo i server con un certificato wildcard più vulnerabili senza necessità di un attacco MITM.
2022-11-07 10:43:41 +00:00
Le migliori pratiche includono l'evitare il routing della prima richiesta nei proxy inversi e prestare attenzione ai certificati TLS wildcard, specialmente con l'avvento di HTTP/3. Test regolari e consapevolezza di queste vulnerabilità complesse e interconnesse sono cruciali per mantenere la sicurezza web.
2022-11-07 10:43:41 +00:00
{% hint style="success" %}
Learn & practice 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">\
Learn & practice 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)
2022-11-07 10:43:41 +00:00
<details>
2022-11-07 10:43:41 +00:00
<summary>Support HackTricks</summary>
2024-02-03 12:22:53 +00:00
* Check the [**subscription plans**](https://github.com/sponsors/carlospolop)!
* **Join the** 💬 [**Discord group**](https://discord.gg/hRep4RUj7f) or the [**telegram group**](https://t.me/peass) or **follow** us on **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Share hacking tricks by submitting PRs to the** [**HackTricks**](https://github.com/carlospolop/hacktricks) and [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
2022-11-07 10:43:41 +00:00
</details>
{% endhint %}