Skip to main content
← All vulnerabilities
CVE-2026-78663GO-2026-6612BIT-GOLANG-2026-78663

Double flow control refund on HTTP/2 server streams in net/http

Published
Last modified
Status
published
Known exploitation
Not listed in CISA KEV
Fix
Fixed in 1.26.9, 1.27.2, 0.60.0
Public exploit
None on Exploit-DB
CISA SSVC
  • Exploitation: none
  • Automatable: yes
  • Technical impact: total
?

Decision points from CISA's Vulnrichment, assessed (SSVC 2.0.3).

SSVC documentation

Summary

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 versions

  • net/http

    fixed in 1.26.9

  • net/http/internal/http2

    From 1.27.0-0 · fixed in 1.27.2

  • golang.org/x/net/http2

    fixed in 0.60.0

  • stdlibGo

    fixed in 1.26.9

  • stdlibGo

    From 1.27.0-0 · fixed in 1.27.2

  • golang.org/x/netGo

    fixed in 0.60.0

References 6

go.dev

groups.google.com

pkg.go.dev