Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1359 CNY

100%

CVE-2026-56866— HTTP/1 client connection desynchronization after CONNECT rejection in net/http

Quick assessment

Affected
Go standard library net/http
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

当 发送带有非空 的 HTTP/1 CONNECT 请求时,它会将请求体直接写入连接,且在请求头之后不进行任何边界封装(framing)。如果服务器以非 2xx 状态码的 keep-alive 响应拒绝该 CONNECT 请求, 会将该连接放回空闲连接池。由于 CONNECT 请求本不应包含请求体,服务器可能会将尾部多余的请求体字节解释为连接上后续的一个管道化 HTTP/1.1 请求,导致已池化的连接状态不同步,并使下一个复用该连接的客户端误读注入请求的响应。在通过共享 转发 CONNECT 请求的反向代理(包括

AI Predicted 7.5 Difficulty: Moderate

Possible ATT&CK Techniques 1 AI

T1102 · Web Service
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2026-56866

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
HTTP/1 client connection desynchronization after CONNECT rejection in net/http
Source: CVE Program / CVE List V5
Vulnerability Description
When http.Transport sends an HTTP/1 CONNECT request with a non-empty Request.Body, it writes the body directly to the connection without framing after the request headers. If the server rejects the CONNECT request with a non-2xx keep-alive response, Transport returns the connection to the idle pool. Because CONNECT requests do not have a request body, the server may interpret the trailing body bytes as a subsequent pipelined HTTP/1.1 request on the connection, leaving the pooled connection desynchronized and causing the next caller that reuses it to read the response to the injected request. In reverse proxies (including httputil.ReverseProxy) that forward CONNECT requests through a shared Transport, this can lead to cross-user response poisoning.
Source: CVE Program / CVE List V5
CVSS Information
N/A
Source: CVE Program / CVE List V5
Vulnerability Type
N/A
Source: CVE Program / CVE List V5

Affected Products

Vendor Product Affected Versions CPE Subscribe
Go standard library net/http 0 ~ 1.26.9 -
Go standard library net/http/httputil 0 ~ 1.26.9 -

II. Public POCs for CVE-2026-56866

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2026-56866

请登录查看更多情报信息。

Vendor Advisories for CVE-2026-56866 (2)

Vendor Pages for CVE-2026-56866 (1)

Other References for CVE-2026-56866 (1)

Same Patch Batch · Go standard library · 2026-10-08 · 13 CVEs total

CVE-2026-94439 HTTP/1 server connection desynchronization after 2xx CONNECT response in net/http
CVE-2026-94440 Memory limit bypass when parsing MIME headers in net/textproto, mime/multipart
CVE-2026-94448 Reset context tracking on consecutive template expressions in html/template
CVE-2026-56857 Root.Mkdir(All) can follow junctions out of the root on Windows in os
CVE-2026-78659 HTTP/2 server memory exhaustion due to Trailer headers in net/http
CVE-2026-78660 HTTP/2 transport accepts malformed framing-related headers in net/http
CVE-2026-78663 Double flow control refund on HTTP/2 server streams in net/http
CVE-2026-78667 Lack of limit on size of parsed Range headers in net/http
CVE-2026-78669 Excessive CPU consumption from repeated initial window changes in net/http
CVE-2026-97032 HTTP/2 server crash due to HPACK encoder race in net/http
CVE-2026-97030 Recognize yield as regexp preceder keyword in html/template
CVE-2026-97031 Reject malformed ECH outer extension references in crypto/tls

IV. Related Vulnerabilities

V. Comments for CVE-2026-56866

No comments yet


Leave a comment