HTTP Connection Contamination
Il s'agit d'un résumé de l'article : 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 des connexions HTTP, en présence d'adresses IP partagées et d'un certificat TLS commun. Cependant, cela peut entrer en conflit avec le routage de la première requête dans les reverse-proxies, où les requêtes ultérieures sont dirigées vers l'arrière-plan déterminé par la première requête. Ce mauvais routage peut entraîner des vulnérabilités de sécurité, notamment lorsqu'il est combiné avec des certificats TLS génériques et des domaines tels que *.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 générique commun, la coalescence de connexion du navigateur pourrait amener les requêtes vers secure.example.com
à être traitées à tort par l'arrière-plan 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 les tests :
La menace est actuellement limitée en raison de la rareté du routage de la 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 des adresses IP, pourraient élargir la surface d'attaque, rendant les serveurs avec un certificat générique plus vulnérables sans nécessiter une attaque de l'homme du milieu.
Les meilleures pratiques incluent l'évitement du routage de la première requête dans les proxies inverses et la prudence avec les certificats TLS génériques, surtout avec l'avènement de HTTP/3. Des tests réguliers et une prise de conscience de ces vulnérabilités complexes et interconnectées sont cruciaux pour maintenir la sécurité web.
Last updated