Tratando de hacer una solicitud de publicación multiparte fragmentada, nginx y php ambos devuelven un error 400

0

Estoy tratando de usar un protocolo fragmentado y un protocolo multiparte en una solicitud POST, como esta

Todos los símbolos de nueva línea son \r\n , por ejemplo,

POST http://127.0.0.1/print.php?a=1&b=2 HTTP/1.1
accept-language: *
transfer-encoding: chunked
accept: */*
user-agent: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36
host: 127.0.0.1
content-type: multipart/form-data; boundary=test123;

4B
--test123
Content-Disposition: form-data; name="xxx"

123
--test123--

0

Pero, cuando publico esta solicitud en un servidor PHP, devuelve 400 errores, lo que significa que esta es una solicitud no válida.

¿Alguna idea? Simplemente estoy probando un método de omisión de WAF

    
pregunta daisy 05.10.2017 - 10:19
fuente

1 respuesta

1

Aunque la codificación de transferencia fragmentada se define tanto para la respuesta como para la solicitud en el estándar HTTP / 1.1 (pero no en HTTP / 1.0), por lo general, solo se usa para las respuestas. No se admite universalmente para las solicitudes.

Aparte de eso, su primera línea solo debe incluir la ruta y no la URL completa. Si bien HTTP / 1.1 (a diferencia de HTTP / 1.0) permitió explícitamente la URL completa en este lugar, muchos servidores no aceptan esto.

    
respondido por el Steffen Ullrich 05.10.2017 - 10:37
fuente

Lea otras preguntas en las etiquetas