CVE-2026-97032 PUBLISHED

HTTP/2 server crash due to HPACK encoder race in net/http

Assigner: Go
Reserved: 23.09.2026 Published: 08.10.2026 Updated: 08.10.2026

HTTP/2 servers could end up crashing due to inadvertently modifying its HPACK encoder concurrently. This happens because the server modifies the HPACK encoder from two goroutines without synchronization: one uses the encoder to encode a HEADERS frame as part of a response sent to a client and the other modifies the encoder's table size when handling a SETTINGS frame containing SETTINGS_HEADER_TABLE_SIZE that a client sends. A malicious client can repeatedly send a request while changing the header table size to crash the server.

Product Status

Vendor Go standard library
Product net/http
Versions Default: unaffected
  • affected from 0 to 1.26.9 (excl.)
Vendor Go standard library
Product net/http/internal/http2
Versions Default: unaffected
  • affected from 1.27.0-0 to 1.27.2 (excl.)
Vendor golang.org/x/net
Product golang.org/x/net/http2
Versions Default: unaffected
  • affected from 0 to 0.60.0 (excl.)

Credits

  • RyotaK (https://ryotak.net) of GMO Flatt Security Inc.

References

Problem Types

  • CWE-362: Concurrent Execution using Shared Resource with Improper Synchronization ('Race Condition')