CVE-2023-41337
H2O TLS Session Hijacking Vulnerability
Description
h2o is an HTTP server with support for HTTP/1.x, HTTP/2 and HTTP/3. In version 2.3.0-beta2 and prior, when h2o is configured to listen to multiple addresses or ports with each of them using different backend servers managed by multiple entities, a malicious backend entity that also has the opportunity to observe or inject packets exchanged between the client and h2o may misdirect HTTPS requests going to other backends and observe the contents of that HTTPS request being sent. The attack involves a victim client trying to resume a TLS connection and an attacker redirecting the packets to a different address or port than that intended by the client. The attacker must already have been configured by the administrator of h2o to act as a backend to one of the addresses or ports that the h2o instance listens to. Session IDs and tickets generated by h2o are not bound to information specific to the server address, port, or the X.509 certificate, and therefore it is possible for an attacker to force the victim connection to wrongfully resume against a different server address or port on which the same h2o instance is listening. Once a TLS session is misdirected to resume to a server address / port that is configured to use an attacker-controlled server as the backend, depending on the configuration, HTTPS requests from the victim client may be forwarded to the attacker's server. An H2O instance is vulnerable to this attack only if the instance is configured to listen to different addresses or ports using the listen directive at the host level and the instance is configured to connect to backend servers managed by multiple entities. A patch is available at commit 35760540337a47e5150da0f4a66a609fad2ef0ab. As a workaround, one may stop using using host-level listen directives in favor of global-level ones.
INFO
Published Date :
Dec. 12, 2023, 8:15 p.m.
Last Modified :
Dec. 19, 2023, 7:10 p.m.
Source :
[email protected]
Remotely Exploitable :
No
Impact Score :
5.2
Exploitability Score :
1.5
References to Advisories, Solutions, and Tools
Here, you will find a curated list of external links that provide in-depth
information, practical solutions, and valuable tools related to
CVE-2023-41337
.
URL | Resource |
---|---|
https://github.com/h2o/h2o/commit/35760540337a47e5150da0f4a66a609fad2ef0ab | Patch |
https://github.com/h2o/h2o/security/advisories/GHSA-5v5r-rghf-rm6q | Mitigation Patch Vendor Advisory |
We scan GitHub repositories to detect new proof-of-concept exploits. Following list is a collection of public exploits and proof-of-concepts, which have been published on GitHub (sorted by the most recently updated).
Results are limited to the first 15 repositories due to potential performance issues.
The following list is the news that have been mention
CVE-2023-41337
vulnerability anywhere in the article.
The following table lists the changes that have been made to the
CVE-2023-41337
vulnerability over time.
Vulnerability history details can be useful for understanding the evolution of a vulnerability, and for identifying the most recent changes that may impact the vulnerability's severity, exploitability, or other characteristics.
-
CVE Modified by [email protected]
May. 14, 2024
Action Type Old Value New Value -
Initial Analysis by [email protected]
Dec. 19, 2023
Action Type Old Value New Value Added CVSS V3.1 NIST AV:A/AC:L/PR:L/UI:R/S:U/C:H/I:H/A:N Changed Reference Type https://github.com/h2o/h2o/commit/35760540337a47e5150da0f4a66a609fad2ef0ab No Types Assigned https://github.com/h2o/h2o/commit/35760540337a47e5150da0f4a66a609fad2ef0ab Patch Changed Reference Type https://github.com/h2o/h2o/security/advisories/GHSA-5v5r-rghf-rm6q No Types Assigned https://github.com/h2o/h2o/security/advisories/GHSA-5v5r-rghf-rm6q Mitigation, Patch, Vendor Advisory Added CPE Configuration OR *cpe:2.3:a:dena:h2o:*:*:*:*:*:*:*:* versions up to (including) 2.2.6 *cpe:2.3:a:dena:h2o:2.3.0:beta1:*:*:*:*:*:* *cpe:2.3:a:dena:h2o:2.3.0:beta2:*:*:*:*:*:* -
CVE Received by [email protected]
Dec. 12, 2023
Action Type Old Value New Value Added Description h2o is an HTTP server with support for HTTP/1.x, HTTP/2 and HTTP/3. In version 2.3.0-beta2 and prior, when h2o is configured to listen to multiple addresses or ports with each of them using different backend servers managed by multiple entities, a malicious backend entity that also has the opportunity to observe or inject packets exchanged between the client and h2o may misdirect HTTPS requests going to other backends and observe the contents of that HTTPS request being sent. The attack involves a victim client trying to resume a TLS connection and an attacker redirecting the packets to a different address or port than that intended by the client. The attacker must already have been configured by the administrator of h2o to act as a backend to one of the addresses or ports that the h2o instance listens to. Session IDs and tickets generated by h2o are not bound to information specific to the server address, port, or the X.509 certificate, and therefore it is possible for an attacker to force the victim connection to wrongfully resume against a different server address or port on which the same h2o instance is listening. Once a TLS session is misdirected to resume to a server address / port that is configured to use an attacker-controlled server as the backend, depending on the configuration, HTTPS requests from the victim client may be forwarded to the attacker's server. An H2O instance is vulnerable to this attack only if the instance is configured to listen to different addresses or ports using the listen directive at the host level and the instance is configured to connect to backend servers managed by multiple entities. A patch is available at commit 35760540337a47e5150da0f4a66a609fad2ef0ab. As a workaround, one may stop using using host-level listen directives in favor of global-level ones. Added Reference GitHub, Inc. https://github.com/h2o/h2o/security/advisories/GHSA-5v5r-rghf-rm6q [No types assigned] Added Reference GitHub, Inc. https://github.com/h2o/h2o/commit/35760540337a47e5150da0f4a66a609fad2ef0ab [No types assigned] Added CWE GitHub, Inc. CWE-347 Added CVSS V3.1 GitHub, Inc. AV:A/AC:H/PR:L/UI:R/S:U/C:H/I:H/A:N
CWE - Common Weakness Enumeration
While CVE identifies
specific instances of vulnerabilities, CWE categorizes the common flaws or
weaknesses that can lead to vulnerabilities. CVE-2023-41337
is
associated with the following CWEs:
Common Attack Pattern Enumeration and Classification (CAPEC)
Common Attack Pattern Enumeration and Classification
(CAPEC)
stores attack patterns, which are descriptions of the common attributes and
approaches employed by adversaries to exploit the CVE-2023-41337
weaknesses.
Exploit Prediction
EPSS is a daily estimate of the probability of exploitation activity being observed over the next 30 days.
0.04 }} 0.00%
score
0.06909
percentile