Hi Rainer,

> Am 28.09.2022 um 15:33 schrieb Rainer Jung <rainer.j...@kippdata.de>:
> 
> Hi all,
> 
> today I stumbled into an unexpected request denial by a rule in the 
> mod_security Core Rule Set 3. It denies requests without body, that have 
> Transfer-Encoding chunked set.
> 
> When I send a normal GET request, without body, no Transfer-Encoding and no 
> Content-Length, to httpd and proxy it via mod_proxy_http2 to the same server, 
> the proxied request gets "Transfer-Encoding: chunked" added by 
> mod_proxy_http2 and is then denied by mod_security on the receiving side. No 
> such addition when using mod_proxy_http.
> 
> It seems to me, that "Transfer-Encoding: chunked" is not allowed for http/2 
> (due to its always streaming behavior), and at least it is unexpected for a 
> GET or HEAD request.
> 
> Any chance we can get rid of it when proxying a request, that has no body and 
> doesn't bring the header by its own?
> 
> Should I open a PR in our bugzilla, or on the mod_h2 Github repos?

bugzilla seems good. this might affect more than http2.

We'll see what exactly happens. I suspect it is not mod_proxy_http2, but 
mod_http2 that adds "chunked" when the EOS of an incoming request has not been 
received yet and the request is started. If it has no content-length, mod_http2 
must chunk the possibly still incoming request body.

This is in 2.4.x. In trunk we changed the filters to no longer require that.

> 
> Thanks and best regards,
> 
> Rainer

Reply via email to