Saltar al contenido
OPS // KITitspentest.sh

X-BUR

Burp HTTP Request Smuggler

Extensión gratuita de PortSwigger en la BApp Store para detectar y explotar vulnerabilidades de contrabando de peticiones HTTP y desync.

Sitio oficialVolver al catálogo

RESUMEN

HTTP Request Smuggler es la extensión oficial de Burp de James Kettle/PortSwigger (instalable directamente desde la BApp Store, o manualmente desde github.com/PortSwigger/http-request-smuggler) que automatiza la parte tediosa de encontrar vulnerabilidades de contrabando de peticiones: sondea activamente cada petición que pasa por Burp en busca de señales de que el front-end (proxy, balanceador, CDN) y el servidor back-end no están de acuerdo sobre dónde termina una petición HTTP y empieza la siguiente.

Más allá de la detección, incluye plantillas de ataque predefinidas para convertir un desync confirmado en algo concreto — colar una petición saltándose un control de acceso del front-end, envenenar la respuesta de otro usuario o alimentar una petición ambigua a una caché web — que se conectan directamente con Repeater una vez hallado un candidato. Funciona junto al flujo base de proxy de Burp Suite (ver la entrada de Burp Suite en este sitio) y corre tanto en Community como en Professional.

CASOS DE USO

Casos de uso en un engagement

  • 01

    Escanear el tráfico que pasa por Burp en busca de firmas de desync CL.TE/TE.CL/TE.TE entre front-end y back-end.

  • 02

    Convertir un desync confirmado en un ataque de contrabando de peticiones que salte un control de acceso o regla de WAF del front-end.

  • 03

    Envenenar la respuesta que recibe otro usuario colando una petición que se cuela delante de su conexión.

  • 04

    Alimentar una petición contrabandeada a una caché downstream para lograr envenenamiento de caché web.

PRIMEROS PASOS

Cuando un objetivo está detrás de un proxy inverso, balanceador o CDN, para sondear bugs de desync de contrabando de peticiones entre front-end y back-end.

  1. Confirma que el sondeo activo de desync está autorizado — las peticiones malformadas pueden afectar a otros usuarios reales que comparten el mismo par front-end/back-end.
  2. Instala la extensión desde la BApp Store (Extender > BApp Store) o carga el JAR manualmente.
  3. Navega el objetivo a través del proxy de Burp para que la extensión escanee pasivamente el tráfico en alcance en busca de firmas de desync.
  4. Envía una petición marcada a Repeater y usa las plantillas de ataque de la extensión para confirmar y caracterizar la primitiva de contrabando.

ANTES DE USARLA

Qué revisar antes de lanzarla

Los ataques de desync son inherentemente disruptivos para un front-end compartido — un sondeo mal cronometrado puede corromper la petición o respuesta de otro usuario real, así que coordina el timing en objetivos de producción.

Los hallazgos son muy específicos de la infraestructura: el mismo payload puede ser inofensivo en una combinación de CDN/proxy y causar una caída en otra, así que empieza de forma conservadora.

Los resultados dependen de la cadena exacta de proxies delante del objetivo, que un pentest desde fuera de la red del cliente puede no replicar del todo — anota la topología observada en el informe.

SIGUE EXPLORANDO

Ver toda la fase →