VDB
Sign up
HIGH7.5

GO-2024-2963

Denial of service due to improper 100-continue handling in net/http

Quick fix

GO-2024-2963 — stdlib: upgrade to the fixed version with the command below.

go get stdlib@v1.21.12

Details

The net/http HTTP/1.1 client mishandled the case where a server responds to a request with an "Expect: 100-continue" header with a non-informational (200 or higher) status. This mishandling could leave a client connection in an invalid state, where the next request sent on the connection will fail.

An attacker sending a request to a net/http/httputil.ReverseProxy proxy can exploit this mishandling to cause a denial of service by sending "Expect: 100-continue" requests which elicit a non-informational response from the backend. Each such request leaves the proxy with an invalid connection, and causes one subsequent request using that connection to fail.

Are you affected?

Enter the version of the package you're using.

Affected packages

Go/stdlib
Introduced in: 0Fixed in: 1.21.12
Fixgo get stdlib@v1.21.12

References