L’article publié par PortSwigger met en lumière des recherches menées par James Kettle sur des attaques de désynchronisation HTTP qui révèlent des failles fondamentales dans l’implémentation du protocole HTTP/1.1.

Résumé exécutif : Les nouvelles classes d’attaques, telles que les attaques 0.CL et les exploits basés sur l’en-tête Expect, contournent les mitigations existantes et affectent des fournisseurs d’infrastructure majeurs comme Akamai, Cloudflare et Netlify. Un outil open-source est mis à disposition pour détecter systématiquement les divergences de parseur, ayant déjà permis de récolter plus de 200 000 $ en primes de bug bounty.

Résumé technique : La recherche démontre plusieurs classes d’attaques de désynchronisation HTTP : (1) les attaques 0.CL exploitent des gadgets de réponse anticipée pour échapper aux blocages de connexion en amont, (2) les attaques basées sur Expect tirent parti de la complexité du traitement 100-continue, et (3) les techniques de double désynchronisation combinent plusieurs vecteurs d’attaque. Les innovations techniques clés incluent la détection systématique des divergences de parseur à l’aide d’en-têtes masqués, l’identification des bizarreries des noms de fichiers réservés sous Windows comme gadgets de réponse anticipée, et l’exploitation des vulnérabilités de rétrogradation HTTP/2.

L’article conclut que les méthodes multiples de spécification de longueur de HTTP/1.1 (Content-Length, Transfer-Encoding, Implicit-zero, HTTP/2 built-in length) créent une ambiguïté inhérente qui permet la manipulation des limites des requêtes. La recherche plaide pour une migration vers HTTP/2 comme seule solution viable à long terme.

Ce document est une publication de recherche qui vise à exposer les vulnérabilités critiques du protocole HTTP/1.1 et à promouvoir des solutions pour sécuriser l’infrastructure web mondiale.


🔗 Source originale : https://portswigger.net/research/http1-must-die

🖴 Archive : https://web.archive.org/web/20250807084915/https://portswigger.net/research/http1-must-die