HTTP Request Smuggling
hackingDéfinition
Le HTTP Request Smuggling est une technique d'attaque exploitant les divergences d'interprétation d'une requête HTTP entre deux serveurs situés en chaîne, typiquement un proxy frontal ou un répartiteur de charge et un serveur applicatif backend, lorsque ceux-ci ne traitent pas de façon identique les en-têtes Content-Length et Transfer-Encoding définissant la longueur du corps de la requête. En exploitant cette ambiguïté, un attaquant peut faire passer une seconde requête cachée à l'intérieur du corps de la première, requête qui sera interprétée différemment par chacun des deux serveurs, permettant de contourner des contrôles de sécurité placés au niveau du frontal, d'empoisonner le cache partagé entre utilisateurs, ou de détourner la requête d'un autre utilisateur légitime vers une réponse contrôlée par l'attaquant. Cette technique est référencée dans le OWASP Top 10 sous les catégories liées aux défauts de conception, et documentée en détail par les travaux de recherche de PortSwigger. En défense, l'homogénéisation stricte du traitement des en-têtes HTTP entre l'ensemble des composants de la chaîne, la désactivation du support HTTP/1.0 et 1.1 au profit de HTTP/2 de bout en bout lorsque possible, l'usage exclusif d'un seul en-tête de longueur normalisé, et la surveillance des journaux pour détecter des motifs de requêtes anormaux ou dupliqués constituent les contre-mesures principales recommandées pour ce vecteur d'attaque discret et difficile à détecter.
Description
L'HTTP Request Smuggling exploite les divergences d'interprétation des headers Content-Length et Transfer-Encoding entre un proxy frontal et un serveur backend pour « glisser » des requêtes supplémentaires dans le flux HTTP, affectant d'autres utilisateurs.
Exploitation
L'attaquant forge une requête ambiguë que le proxy et le backend interprètent différemment sur les limites de requête. Le « résidu » est préfixé à la prochaine requête d'un autre utilisateur, permettant de voler des sessions ou de contourner des contrôles d'accès.
Défense
- Utiliser HTTP/2 de bout en bout pour éliminer les ambiguïtés de parsing des headers
- Configurer le proxy et le backend pour rejeter les requêtes avec des headers conflictuels
- Tester régulièrement avec des outils comme HTTP Request Smuggler de PortSwigger
Articles liés
Expert en cybersécurité offensive et intelligence artificielle. Pentest, audit et développement IA sur-mesure.
Services
- Audit Infrastructure
- Audit Kubernetes
- Audit Microsoft 365
- Audit Sécurité Réseau
- Analyse de Risques
- Audit Active Directory
- Audit Application Web
- Audit Cloud (AWS/Azure/GCP)
- Audit Messagerie
- Audit API (OWASP Top 10)
- Audit DevSecOps & CI/CD
- Audit Code Source (SAST)
- Audit Postes de Travail
- Audit Sauvegarde & Résilience
- Audit OT/SCADA (IEC 62443)
- Développement IA
- Formations
Ressources
Projets & Outils
© 2026 Ayi NEDJIMI Consultants. Tous droits réservés. 2.1.7
Un projet cybersécurité ?
Expert dispo · Réponse 24h