HTTP request smuggling
Content-Length (CL)
Transfer-Encoding (TE)
CL.TE
El proxy inverso utiliza el encabezado HTTP Content-Length
(CL), el servidor web utiliza el encabezado HTTP Transfer-Encoding
(TE).
Ejemplo de identificación donde la respuesta correspondiente al segundo request sea un 405 Method Not Allowed
podría revelar que es vulnerable.
Ejemplo de explotación general.
Ejemplo de explotación para obtener acceso a una ruta interna.
Ejemplo de explotación para reflected XSS en HTTP header.
TE.TE
Ofuscar el encabezado HTTP Transfer-Encoding
(TE) en uno de los componentes para provocar una vulnerabilidad de CL.TE o TE.CL.
TE.CL
El proxy inverso utiliza el encabezado HTTP Transfer-Encoding
(TE), el servidor web utiliza el encabezado HTTP Content-Length
(CL).
En la opción Repeater de Burp Suite, es importante desmarcar la opción "Update Content-Length", agregar los dos requests en un grupo de pestañas, y enviarlos utilizando la función "Send group in sequence (single connection)".
Ejemplo de identificación donde la respuesta correspondiente al segundo request sea un 400 Bad Request
podría revelar que es vulnerable.
Ejemplo de explotación general (GET).
0x2a = 42 bytes
Ejemplo de explotación general (POST).
0x83 = 131 bytes
Ejemplo de explotación para obtener acceso a una ruta interna.
0x2b = 43 bytes
HTTP/2 downgrading
El proxy inverso utiliza HTTP/2, mientras que el servidor web utiliza HTTP/1.1.
H2.CL / CL.0
El proxy inverso no valida correctamente que el encabezado HTTP Content-Length
(CL) proporcionado sea correcto y, en su lugar, reescribe la solicitud a HTTP/1.1 utilizando el encabezado HTTP Content-Length
(CL) defectuoso.
Última actualización
¿Te fue útil?