Vulnérabilité basique CL.TE
HTTP request smuggling, basic CL.TE vulnerability
Dans ce laboratoire, l’infrastructure se compose d’un serveur frontal et d’un serveur dorsal. Le serveur frontal ne prend pas en charge le chunked encoding et rejette toute requête qui n’utilise pas les méthodes GET ou POST.
L’objectif est de smuggler une requête vers le serveur back-end afin que la requête suivante interprétée par celui-ci semble utiliser la méthode GPOST.
Remarque : Même si le laboratoire accepte HTTP/2, la technique nécessaire repose exclusivement sur HTTP/1. Il faut donc changer manuellement le protocole dans Burp Repeater via la section Request attributes de l’Inspector.
Astuce : Manipuler manuellement les longueurs dans une attaque de request smuggling peut être complexe. L’extension Burp HTTP Request Smuggler, disponible dans le BApp Store, peut faciliter cette tâche.
Exemple valide observé
La requête suivante est acceptée :
Erreur en modifiant la taille finale
Si l’on remplace le 0 terminal par un caractère invalide (ex. : X), le serveur signale une erreur :

Ajout du caractère final pour injecter G
GEn plaçant un G après le chunk final, on peut préparer la requête smuggled destinée au back-end :

Mis à jour
Ce contenu vous a-t-il été utile ?