HTTP Connection Request Smuggling

Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)!

Ceci est un résumé de l'article https://portswigger.net/research/browser-powered-desync-attacks

Attaques d'État de Connexion

Validation de la Première Requête

Lors du routage des requêtes, les serveurs proxy inverses peuvent dépendre de l'en-tête Host pour déterminer le serveur back-end de destination, en se basant souvent sur une liste blanche d'hôtes autorisés. Cependant, une vulnérabilité existe dans certains proxies où la liste blanche n'est appliquée que sur la requête initiale dans une connexion. Par conséquent, les attaquants pourraient exploiter cela en faisant d'abord une requête à un hôte autorisé, puis en demandant un site interne via la même connexion:

GET / HTTP/1.1
Host: [allowed-external-host]

GET / HTTP/1.1
Host: [internal-host]

Routage de la première requête

Dans certaines configurations, un serveur frontal peut utiliser l'en-tête Host de la première requête pour déterminer le routage en aval de cette requête, puis router de manière persistante toutes les requêtes ultérieures de la même connexion client vers la même connexion en aval. Cela peut être démontré comme suit :

GET / HTTP/1.1
Host: example.com

POST /pwreset HTTP/1.1
Host: psres.net

Cet problème peut potentiellement être combiné avec les attaques d'en-tête Host, telles que l'empoisonnement de réinitialisation de mot de passe ou l'empoisonnement de cache web, pour exploiter d'autres vulnérabilités ou obtenir un accès non autorisé à des hôtes virtuels supplémentaires.

Pour identifier ces vulnérabilités, la fonctionnalité 'sonde d'état de connexion' dans HTTP Request Smuggler peut être utilisée.

Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)!

Dernière mise à jour