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

45 lines
4.5 KiB
Markdown

# Contamination de la connexion HTTP
{% hint style="success" %}
Apprenez et pratiquez le piratage AWS :<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">\
Apprenez et pratiquez le piratage GCP : <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>Soutenir HackTricks</summary>
* Consultez les [**plans d'abonnement**](https://github.com/sponsors/carlospolop) !
* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** nous sur **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Partagez des astuces de piratage en soumettant des PR aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts github.
</details>
{% endhint %}
**Ceci est un résumé du post : [https://portswigger.net/research/http-3-connection-contamination](https://portswigger.net/research/http-3-connection-contamination)**. Consultez-le pour plus de détails !
Les navigateurs web peuvent réutiliser une seule connexion HTTP/2+ pour différents sites web grâce à [la coalescence de connexion HTTP](https://daniel.haxx.se/blog/2016/08/18/http2-connection-coalescing), à condition d'avoir des adresses IP partagées et un certificat TLS commun. Cependant, cela peut entrer en conflit avec le **routage de première requête** dans les reverse-proxies, où les requêtes suivantes sont dirigées vers le back-end déterminé par la première requête. Ce mauvais routage peut entraîner des vulnérabilités de sécurité, en particulier lorsqu'il est combiné avec des certificats TLS wildcard et des domaines comme `*.example.com`.
Par exemple, si `wordpress.example.com` et `secure.example.com` sont tous deux servis par le même reverse proxy et ont un certificat wildcard commun, la coalescence de connexion d'un navigateur pourrait amener les requêtes vers `secure.example.com` à être mal traitées par le back-end WordPress, exploitant des vulnérabilités telles que XSS.
Pour observer la coalescence de connexion, l'onglet Réseau de Chrome ou des outils comme Wireshark peuvent être utilisés. Voici un extrait pour tester :
```javascript
fetch('//sub1.hackxor.net/', {mode: 'no-cors', credentials: 'include'}).then(()=>{ fetch('//sub2.hackxor.net/', {mode: 'no-cors', credentials: 'include'}) })
```
La menace est actuellement limitée en raison de la rareté du routage de première requête et de la complexité de HTTP/2. Cependant, les changements proposés dans HTTP/3, qui assouplissent l'exigence de correspondance d'adresse IP, pourraient élargir la surface d'attaque, rendant les serveurs avec un certificat wildcard plus vulnérables sans nécessiter une attaque MITM.
Les meilleures pratiques incluent d'éviter le routage de première requête dans les proxys inverses et d'être prudent avec les certificats TLS wildcard, surtout avec l'avènement de HTTP/3. Des tests réguliers et une sensibilisation à ces vulnérabilités complexes et interconnectées sont cruciaux pour maintenir la sécurité web.
{% 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)
<details>
<summary>Support HackTricks</summary>
* 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.
</details>
{% endhint %}