Apache Httpd < 2.4.48 : NULL pointer dereference on specially crafted HTTP/2 request

2021-04-22T00:00:00
ID HTTPD:97FAC33DC7B1FADC4478C7BA0E35CA20
Type httpd
Reporter Apache Team Foundation
Modified 2021-06-01T00:00:00

Description

Apache HTTP Server protocol handler for the HTTP/2 protocol checks received request headers against the size limitations as configured for the server and used for the HTTP/1 protocol as well. On violation of these restrictions and HTTP response is sent to the client with a status code indicating why the request was rejected.

This rejection response was not fully initialised in the HTTP/2 protocol handler if the offending header was the very first one received or appeared in a a footer. This led to a NULL pointer dereference on initialised memory, crashing reliably the child process. Since such a triggering HTTP/2 request is easy to craft and submit, this can be exploited to DoS the server.

This issue affected mod_http2 1.15.17 and Apache HTTP Server version 2.4.47 only. Apache HTTP Server 2.4.47 was never released.