Description
The HTTP/2 server can refund connection-level flow control twice for the same data: Once when a client resets a stream (refunding data for any sent-but-unread portion of the stream), and again when a request handler reads the buffered data. A malicious client can exploit this to bypass the configured connection-level flow control limit (MaxReceiveBufferPerConnection). Total buffered data is still limited by the concurrent stream limit and stream-level flow control.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Go standard library net/http
Default version status: unaffected
0 to < 1.26.9affected
Go standard library net/http/internal/http2
Default version status: unaffected
1.27.0-0 to < 1.27.2affected
golang.org/x/net golang.org/x/net/http2
Default version status: unaffected
0 to < 0.60.0affected