CyberGlossary

Vulnerabilidades

HTTP Request Smuggling

También conocido como: HRS, Contrabando de peticiones

Definición

Ataque que aprovecha discrepancias entre un proxy front-end y un servidor back-end sobre dónde termina una petición HTTP, para colar una segunda petición oculta.

El HTTP request smuggling abusa del parsing inconsistente de las cabeceras Content-Length y Transfer-Encoding (CL.TE, TE.CL, TE.TE) entre intermediarios como balanceadores, CDN, proxies inversos y servidores de origen. Construyendo una petición ambigua, el atacante hace que el front-end y el back-end no coincidan sobre dónde termina el mensaje, lo que permite colar otra petición que se procesa en la conexión de otro usuario. Las consecuencias incluyen envenenamiento de caché, robo de credenciales, bypass de WAF y toma de cuentas. Defensas: normalizar o rechazar peticiones ambiguas, usar HTTP/2 de extremo a extremo, alinear las implementaciones de front-end y back-end y aplicar los parches del fabricante.

Ejemplos

  • Smuggling CL.TE contra un par CDN/back-end donde la CDN usa Content-Length y el origen Transfer-Encoding.
  • Petición POST colada que roba la cabecera Authorization del siguiente usuario sobre una conexión keep-alive compartida.

Términos relacionados