Логотип exploitDog
Консоль
Логотип exploitDog

exploitDog

redhat логотип

CVE-2026-56866

Опубликовано: 08 окт. 2026
Источник: redhat
CVSS3: 6.5
EPSS Низкий

Описание

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.

A flaw was found in Go's net/http package. When an HTTP CONNECT request with a request body is rejected by a server, the client transport can desynchronize the connection before returning it to the shared idle pool. In shared reverse proxy environments, a remote attacker can exploit this issue to cause cross-user response poisoning, potentially exposing sensitive information or serving unintended content to other users.

Отчет

A flaw of moderate impact was found in the Go standard library net/http package, which is shipped by a broad range of Red Hat products, including Red Hat Enterprise Linux (golang and go-toolset components), Red Hat Enterprise Linux AI, OpenShift Container Platform and other Go-based components across Red Hat's portfolio. When http.Transport sends an HTTP/1 CONNECT request that carries a non-empty request body, the body is written 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 desynchronized connection to the shared idle pool, and the trailing body bytes can be interpreted by the server as a subsequent pipelined request. A remote attacker able to send requests through a reverse proxy (including httputil.ReverseProxy) that forwards CONNECT requests via a shared Transport could exploit this to poison the responses received by other users of the pooled connection, potentially exposing sensitive information or serving unintended content to them. Red Hat rates this flaw MODERATE (CVSS 6.5, limited confidentiality and integrity impact with no availability impact), which is lower than the CISA score of 7.5 (IMPORTANT) based on a confidentiality-only vector; Red Hat's assessment reflects that the exposure requires a shared reverse-proxy deployment that forwards CONNECT requests with bodies and yields low confidentiality and integrity impact. For most affected Red Hat products the fix is deferred because the flaw is rated MODERATE severity with a CVSS score below 7.0, so the residual risk of cross-user response poisoning in such proxy deployments remains until a fix is delivered; for a subset of affected products fixes are being pursued by their maintaining teams, and some affected streams are out of active support.

Меры по смягчению последствий

Mitigation for this issue is either not available or the currently available options do not meet the Red Hat Product Security criteria comprising ease of use and deployment, applicability to widespread installation base, or stability.

Затронутые пакеты

ПлатформаПакетСостояниеРекомендацияРелиз
OpenShift Developer Tools and ServiceshelmOut of support scope
OpenShift Pipelinesopenshift-pipelines-clientFix deferred
OpenShift Serverlesskn-workflow-pluginFix deferred
OpenShift Serverlessopenshift-serverless-clientsFix deferred
OpenShift Service Mesh 3istio-proxyFix deferred
OpenShift Service Mesh 3openshift-golang-builder-containerAffected
Red Hat Ansible Automation Platform 2automation-gateway-proxyFix deferred
Red Hat Ansible Automation Platform 2automation-gateway-proxy-openssl30Out of support scope
Red Hat Ansible Automation Platform 2automation-gateway-proxy-openssl32Out of support scope
Red Hat Ansible Automation Platform 2receptorFix deferred

Показывать по

Дополнительная информация

Статус:

Moderate
Дефект:
CWE-444
https://bugzilla.redhat.com/show_bug.cgi?id=2548347net/http: golang: golang: Cross-user response poisoning via desynchronized HTTP CONNECT connections

EPSS

Процентиль: 41%
0.00473
Низкий

6.5 Medium

CVSS3

Связанные уязвимости

CVSS3: 7.5
ubuntu
18 дней назад

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.

CVSS3: 7.5
nvd
18 дней назад

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.

CVSS3: 7.5
msrc
16 дней назад

HTTP/1 client connection desynchronization after CONNECT rejection in net/http

CVSS3: 7.5
debian
18 дней назад

When http.Transport sends an HTTP/1 CONNECT request with a non-empty R ...

CVSS3: 7.5
github
18 дней назад

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.

EPSS

Процентиль: 41%
0.00473
Низкий

6.5 Medium

CVSS3