6.7
MEDIUM
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.

Remotely Exploitable :

No

Impact Score :

5.2

Exploitability Score :

1.5
Affected Products

The following products are affected by CVE-2023-41337 vulnerability. Even if cvefeed.io is aware of the exact versions of the products that are affected, the information is not represented in the table below.

ID Vendor Product Action
1 Dena h2o
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
EPSS is a daily estimate of the probability of exploitation activity being observed over the next 30 days. Following chart shows the EPSS score history of the vulnerability.
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

CVSS31 - Vulnerability Scoring System
Attack Vector
Attack Complexity
Privileges Required
User Interaction
Scope
Confidentiality
Integrity
Availability