Описание
When an HTTP server handler sends a 2xx response to an HTTP/1 CONNECT request and returns without hijacking the connection, the server improperly continues to read and serve requests from the connection. Since a 2xx response to an HTTP/1 CONNECT converts the connection into a tunnel, the server should not treat the connection as continuing to contain HTTP. The impact of this misbehavior is mostly limited to potential request smuggling, where an intermediate proxy considers the data on the connection to be tunneled and the server considers it to be HTTP.
A flaw was found in Go's net/http package. When an HTTP server sends a successful response to an HTTP/1 CONNECT request without taking raw control of the connection, it improperly continues to process incoming data as standard HTTP requests instead of establishing a tunnel. A remote attacker can exploit this behavior to conduct HTTP request smuggling through intermediate proxy servers, potentially bypassing security controls.
Отчет
A moderate-impact flaw was found in the Go standard library net/http package, which is shipped in the golang and go-toolset components of Red Hat Enterprise Linux and used by many Go-based Red Hat products and components (including Red Hat Enterprise Linux AI, Red Hat In-Vehicle OS, and bundled components such as osbuild-composer and rhc). When an HTTP server handler sends a 2xx response to an HTTP/1 CONNECT request and returns without hijacking the connection, the server improperly continues to read and serve HTTP requests from a connection that should be treated as an opaque tunnel. A remote, unauthenticated attacker who can reach the server through an intermediate proxy that treats the connection as tunneled can exploit this desynchronization to conduct HTTP request smuggling, potentially bypassing proxy-enforced security controls and accessing requests or responses intended for other users. Red Hat rates this flaw Moderate severity (CVSS 3.1 base score 6.5, CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N), reflecting the limited confidentiality and integrity impact. Because the impact is Moderate with a CVSS score below 7.0, fixes for the affected Red Hat products are currently deferred rather than scheduled for an immediate update, and the Red Hat In-Vehicle OS 2.0.z streams are out of support scope. The residual risk of deferral is limited to HTTP request smuggling against servers that accept HTTP/1 CONNECT requests and are deployed behind an intermediate proxy.
Меры по смягчению последствий
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 Services | helm | Out of support scope | ||
| OpenShift Pipelines | openshift-pipelines-client | Fix deferred | ||
| OpenShift Serverless | kn-workflow-plugin | Fix deferred | ||
| OpenShift Serverless | openshift-serverless-clients | Fix deferred | ||
| OpenShift Service Mesh 3 | istio-proxy | Fix deferred | ||
| OpenShift Service Mesh 3 | openshift-golang-builder-container | Affected | ||
| Red Hat Ansible Automation Platform 2 | automation-gateway-proxy | Fix deferred | ||
| Red Hat Ansible Automation Platform 2 | automation-gateway-proxy-openssl30 | Out of support scope | ||
| Red Hat Ansible Automation Platform 2 | automation-gateway-proxy-openssl32 | Out of support scope | ||
| Red Hat Ansible Automation Platform 2 | receptor | Fix deferred |
Показывать по
Дополнительная информация
Статус:
EPSS
6.5 Medium
CVSS3
Связанные уязвимости
When an HTTP server handler sends a 2xx response to an HTTP/1 CONNECT request and returns without hijacking the connection, the server improperly continues to read and serve requests from the connection. Since a 2xx response to an HTTP/1 CONNECT converts the connection into a tunnel, the server should not treat the connection as continuing to contain HTTP. The impact of this misbehavior is mostly limited to potential request smuggling, where an intermediate proxy considers the data on the connection to be tunneled and the server considers it to be HTTP.
When an HTTP server handler sends a 2xx response to an HTTP/1 CONNECT request and returns without hijacking the connection, the server improperly continues to read and serve requests from the connection. Since a 2xx response to an HTTP/1 CONNECT converts the connection into a tunnel, the server should not treat the connection as continuing to contain HTTP. The impact of this misbehavior is mostly limited to potential request smuggling, where an intermediate proxy considers the data on the connection to be tunneled and the server considers it to be HTTP.
HTTP/1 server connection desynchronization after 2xx CONNECT response in net/http
When an HTTP server handler sends a 2xx response to an HTTP/1 CONNECT ...
When an HTTP server handler sends a 2xx response to an HTTP/1 CONNECT request and returns without hijacking the connection, the server improperly continues to read and serve requests from the connection. Since a 2xx response to an HTTP/1 CONNECT converts the connection into a tunnel, the server should not treat the connection as continuing to contain HTTP. The impact of this misbehavior is mostly limited to potential request smuggling, where an intermediate proxy considers the data on the connection to be tunneled and the server considers it to be HTTP.
EPSS
6.5 Medium
CVSS3