Browser HTTP Request Smuggling
Reading time: 3 minutes
tip
Aprenda e pratique Hacking AWS:
HackTricks Training AWS Red Team Expert (ARTE)
Aprenda e pratique Hacking GCP: 
HackTricks Training GCP Red Team Expert (GRTE)
Aprenda e pratique Hacking Azure: 
HackTricks Training Azure Red Team Expert (AzRTE)
Supporte o HackTricks
- Confira os planos de assinatura!
 - Junte-se ao 💬 grupo do Discord ou ao grupo do telegram ou siga-nos no Twitter 🐦 @hacktricks_live.
 - Compartilhe truques de hacking enviando PRs para o HackTricks e HackTricks Cloud repositórios do github.
 
Browser-powered desync (também conhecido como client-side request smuggling) explora o navegador da vítima para enfileirar uma solicitação mal formatada em uma conexão compartilhada, de modo que solicitações subsequentes sejam analisadas fora de sincronia por um componente a jusante. Ao contrário do smuggling clássico FE↔BE, os payloads são limitados pelo que um navegador pode legalmente enviar entre origens.
Principais restrições e dicas
- Use apenas cabeçalhos e sintaxe que um navegador pode emitir via navegação, fetch ou envio de formulários. Ofuscações de cabeçalho (truques LWS, TE duplicado, CL inválido) geralmente não serão enviadas.
 - Alvo de endpoints e intermediários que refletem entradas ou armazenam respostas em cache. Impactos úteis incluem envenenamento de cache, vazamento de cabeçalhos injetados no front-end ou contorno de controles de caminho/método do front-end.
 - A reutilização importa: alinhe a solicitação elaborada para que compartilhe a mesma conexão HTTP/1.1 ou H2 que uma solicitação de vítima de alto valor. Comportamentos bloqueados por conexão/estaduais amplificam o impacto.
 - Prefira primitivas que não exijam cabeçalhos personalizados: confusão de caminho, injeção de string de consulta e modelagem de corpo via POSTs codificados em formulário.
 - Valide a verdadeira desincronização do lado do servidor em comparação com meros artefatos de pipeline, re-testando sem reutilização ou usando a verificação de resposta aninhada do HTTP/2.
 
Para técnicas de ponta a ponta e PoCs, veja:
- PortSwigger Research – Browser‑Powered Desync Attacks: https://portswigger.net/research/browser-powered-desync-attacks
 - PortSwigger Academy – client‑side desync: https://portswigger.net/web-security/request-smuggling/browser/client-side-desync
 
References
- https://portswigger.net/research/browser-powered-desync-attacks
 - https://portswigger.net/web-security/request-smuggling/browser/client-side-desync
 - Distinguishing pipelining vs smuggling (background on reuse false-positives): https://portswigger.net/research/how-to-distinguish-http-pipelining-from-request-smuggling
 
tip
Aprenda e pratique Hacking AWS:
HackTricks Training AWS Red Team Expert (ARTE)
Aprenda e pratique Hacking GCP: 
HackTricks Training GCP Red Team Expert (GRTE)
Aprenda e pratique Hacking Azure: 
HackTricks Training Azure Red Team Expert (AzRTE)
Supporte o HackTricks
- Confira os planos de assinatura!
 - Junte-se ao 💬 grupo do Discord ou ao grupo do telegram ou siga-nos no Twitter 🐦 @hacktricks_live.
 - Compartilhe truques de hacking enviando PRs para o HackTricks e HackTricks Cloud repositórios do github.
 
HackTricks