Undertow: improper state management in proxy protocol parsing causes information leakage
A vulnerability was found in Undertow where the ProxyProtocolReadListener reuses the same StringBuilder instance across multiple requests. This issue occurs when the parseProxyProtocolV1 method processes multiple requests on the same HTTP connection. As a result, different requests may share the same StringBuilder instance, potentially leading to information leakage between requests or responses. In some cases, a value from a previous request or response may be erroneously reused, which could lead to unintended data exposure. This issue primarily results in errors and connection termination but creates a risk of data leakage in multi-request environments.
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2024-7885
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 3 Nov 2026, 05:53 UTC · Revision 1
Source evidence
Undertow: improper state management in proxy protocol parsing causes information leakage
core-osv · Original sourcePublished 21 Aug 2024, 14:13 UTC
A vulnerability was found in Undertow where the ProxyProtocolReadListener reuses the same StringBuilder instance across multiple requests. This issue occurs when the parseProxyProtocolV1 method processes multiple requests on the same HTTP connection. As a result, different requests may share the same StringBuilder instance, potentially leading to information leakage between requests or responses. In some cases, a value from a previous request or response may be erroneously reused, which could lead to unintended data exposure. This issue primarily results in errors and connection termination but creates a risk of data leakage in multi-request environments.
osv:CVE-2024-7885
Complete source record
{
"id": "0070c531797c26698bdda925c09f6d5ad5743b76de1512c6793a121753b1636a",
"url": "https://osv.dev/vulnerability/CVE-2024-7885",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "Undertow: improper state management in proxy protocol parsing causes information leakage",
"summary": "A vulnerability was found in Undertow where the ProxyProtocolReadListener reuses the same StringBuilder instance across multiple requests. This issue occurs when the parseProxyProtocolV1 method processes multiple requests on the same HTTP connection. As a result, different requests may share the same StringBuilder instance, potentially leading to information leakage between requests or responses. In some cases, a value from a previous request or response may be erroneously reused, which could lead to unintended data exposure. This issue primarily results in errors and connection termination but creates a risk of data leakage in multi-request environments.",
"evidence": "osv:CVE-2024-7885",
"products": [],
"severity": "high",
"structured": {
"id": "CVE-2024-7885",
"aliases": [
"CVE-2024-7885",
"GHSA-9623-mqmm-5rcf"
],
"metrics": [
{
"type": "CVSS_V3",
"score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://github.com/undertow-io/undertow",
"type": "GIT",
"events": [
{
"introduced": "0"
},
{
"fixed": "56aef4041cecf5a6d81c523841028f805ac0b811"
},
{
"introduced": "b2bcc75afc25d66c863b39000d819ce6fb758a66"
},
{
"fixed": "cdeb242dc96f3ea2df32ac545921153d13fe23a5"
}
],
"database_specific": {
"extracted_events": [
{
"range": [
{
"introduced": "0"
},
{
"fixed": "2.2.36.Final"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StandardRange"
},
{
"range": [
{
"introduced": "2.3.0.Alpha1"
},
{
"fixed": "2.3.17.Final"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StandardRange"
}
]
}
}
],
"versions": [
"2.3.16.Final",
"2.2.35.Final",
"2.2.34.Final",
"2.3.15.Final",
"2.2.33.Final",
"2.3.14.Final",
"2.2.32.Final",
"2.3.13.Final",
"2.2.31.Final",
"2.3.12.Final",
"2.2.30.Final",
"2.3.11.Final",
"2.2.28.Final",
"2.3.10.Final",
"2.2.27.Final",
"2.3.9.Final",
"2.2.26.Final",
"2.3.8.Final",
"2.2.25.Final",
"2.3.7.Final",
"2.3.6.Final",
"2.2.24.Final",
"2.3.5.Final",
"2.2.23.Final",
"2.3.4.Final",
"2.3.3.Final",
"2.3.2.Final",
"2.2.22.Final",
"2.3.1.Final",
"2.2.21.Final",
"2.3.0.Final",
"2.2.20.Final",
"2.3.0.Beta1",
"2.2.19.Final",
"2.3.0.Alpha2",
"2.2.18.Final",
"2.3.0.Alpha1",
"2.2.17.Final",
"2.2.16.Final",
"2.2.15.Final",
"2.2.14.Final",
"2.2.13.Final",
"2.2.12.Final",
"2.2.11.Final",
"2.2.10.Final",
"2.2.9.Final",
"2.2.8.Final",
"2.2.7.Final",
"2.2.6.Final",
"2.2.5.Final",
"2.2.3.Final",
"2.2.4.Final",
"2.2.2.Final",
"2.1.4.Final",
"2.2.1.Final",
"2.2.0.Final",
"2.1.3.Final",
"2.1.2.Final",
"2.1.1.Final",
"2.1.0.Final",
"2.0.29.Final",
"2.0.28.Final",
"2.0.27.Final",
"2.0.26.Final",
"2.0.25.Final",
"2.0.24.Final",
"2.0.23.Final",
"2.0.22.Final",
"2.0.21.Final",
"2.0.20.Final",
"2.0.17.Final",
"2.0.16.Final",
"2.0.15.Final",
"2.0.14.Final",
"2.0.13.Final",
"2.0.12.Final",
"2.0.11.Final",
"2.0.10.Final",
"2.0.9.Final",
"2.0.8.Final",
"2.0.7.Final",
"2.0.6.Final",
"2.0.5.Final",
"2.0.4.Final",
"2.0.3.Final",
"2.0.2.Final",
"2.0.1.Final",
"2.0.0.Final",
"2.0.0.Beta1",
"2.0.0.Alpha1",
"1.3.3.Final",
"1.3.2.Final",
"1.3.1.Final",
"1.3.0.Final",
"1.3.0.CR3",
"1.3.0.CR2",
"1.3.0.CR1",
"1.3.0.Beta13",
"1.3.0.Beta12",
"1.3.0.Beta11",
"1.3.0.Beta10",
"1.3.0.Beta9",
"1.3.0.Beta8",
"1.3.0.Beta7",
"1.3.0.Beta6",
"1.3.0.Beta5",
"1.3.0.Beta4",
"1.3.0.Beta3",
"1.3.0.Beta2",
"1.3.0.Beta1",
"1.2.4.Final",
"1.2.3.Final",
"1.2.2.Final",
"1.2.1.Final",
"1.2.0.Final",
"1.2.0.CR1",
"1.2.0.Beta10",
"1.2.0.Beta9",
"1.2.0.Beta8",
"1.2.0.Beta7",
"1.2.0.Beta6",
"1.2.0.Beta5",
"1.2.0.Beta4",
"1.2.0.Beta3",
"1.2.0.Beta2",
"1.2.0.Beta1",
"1.1.0.Beta8",
"1.1.0.Beta7",
"1.1.0.Beta6",
"1.1.0.Beta5",
"1.1.0.Beta4",
"1.1.0.Beta3",
"1.1.0.Beta2",
"1.1.0.Beta1",
"1.0.3.Final",
"1.0.2.Final",
"1.0.1.Final",
"1.0.0.Final",
"1.0.0.CR4",
"1.0.0.CR3",
"1.0.0.CR2",
"1.0.0.CR1",
"1.0.0.Beta33",
"1.0.0.Beta32",
"1.0.0.Beta31",
"1.0.0.Beta30",
"1.0.0.Beta29",
"1.0.0.Beta28",
"1.0.0.Beta27",
"1.0.0.Beta26",
"1.0.0.Beta25",
"1.0.0.Beta24",
"1.0.0.Beta23",
"1.0.0.Beta22",
"1.0.0.Beta21",
"1.0.0.Beta20",
"1.0.0.Beta19",
"1.0.0.Beta18",
"1.0.0.Beta17",
"1.0.0.Beta16",
"1.0.0.Beta15",
"1.0.0.Beta14",
"1.0.0.Beta13",
"1.0.0.Beta12",
"1.0.0.Beta11",
"1.0.0.Beta10",
"1.0.0.Beta9",
"1.0.0.Beta8",
"1.0.0.Beta7",
"1.0.0.Beta6",
"1.0.0.Beta5",
"1.0.0.Beta4",
"1.0.0.Beta3",
"1.0.0.Beta2",
"1.0.0.Beta1",
"1.0.0.Alpha22",
"1.0.0.Alpha21",
"1.0.0.Alpha20",
"1.0.0.Alpha19",
"1.0.0.Alpha18",
"1.0.0.Alpha17",
"1.0.0.Alpha16",
"1.0.0.Alpha15",
"1.0.0.Alpha14",
"1.0.0.Alpha13",
"1.0.0.Alpha12",
"1.0.0.Alpha11",
"1.0.0.Alpha10",
"1.0.0.Alpha9",
"1.0.0.Alpha8",
"1.0.0.Alpha7",
"1.0.0.Alpha6",
"1.0.0.Alpha5",
"1.0.0.Alpha4",
"1.0.0.Alpha3",
"1.0.0.Alpha2",
"1.0.0.Alpha1"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2024-7885.json"
}
}
],
"modified": "2026-10-28T02:30:26.485576533Z",
"provider": "osv",
"references": [
"https://access.redhat.com/downloads/content/package-browser/",
"https://access.redhat.com/jbossnetwork/restricted/listSoftware.html",
"https://access.redhat.com/errata/RHSA-2024:11023",
"https://access.redhat.com/errata/RHSA-2024:6508",
"https://access.redhat.com/errata/RHSA-2024:6883",
"https://access.redhat.com/errata/RHSA-2024:7441",
"https://access.redhat.com/errata/RHSA-2024:7442",
"https://access.redhat.com/errata/RHSA-2024:7735",
"https://access.redhat.com/errata/RHSA-2024:7736",
"https://access.redhat.com/errata/RHSA-2024:8080",
"https://access.redhat.com/errata/RHSA-2025:16667",
"https://access.redhat.com/errata/RHSA-2026:0743",
"https://access.redhat.com/security/cve/CVE-2024-7885",
"https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/7xxx/CVE-2024-7885.json",
"https://nvd.nist.gov/vuln/detail/CVE-2024-7885",
"https://security.netapp.com/advisory/ntap-20241011-0004/",
"https://bugzilla.redhat.com/show_bug.cgi?id=2305290",
"https://github.com/undertow-io/undertow"
],
"provider_metadata": {
"cwe_ids": [
"CWE-362"
],
"cna_assigner": "redhat",
"unresolved_ranges": [
{
"extracted_events": [
{
"range": [
{
"fixed": "2.2.33.SP2-redhat-00001"
},
{
"fixed": "0:1.11.0-1.redhat_00001.1.el7eap"
},
{
"fixed": "0:2.4.11-1.Final_redhat_00001.1.el7eap"
},
{
"fixed": "0:1.7.2-19.Final_redhat_00020.1.el7eap"
},
{
"fixed": "0:2.0.41-5.SP6_redhat_00001.1.el7eap"
},
{
"fixed": "0:7.3.15-5.GA_redhat_00003.1.el7eap"
},
{
"fixed": "0:2.10.4-4.redhat_00008.1.el7eap"
},
{
"fixed": "0:2.10.4-4.redhat_00008.1.el7eap"
},
{
"fixed": "0:2.10.4-6.redhat_00008.1.el7eap"
},
{
"fixed": "0:2.10.4-4.redhat_00008.1.el7eap"
},
{
"fixed": "0:2.10.4-6.redhat_00008.1.el7eap"
},
{
"fixed": "0:2.10.4-3.redhat_00008.1.el7eap"
},
{
"fixed": "0:1.7.2-20.Final_redhat_00021.1.el7eap"
},
{
"fixed": "0:4.1.63-6.Final_redhat_00004.1.el7eap"
},
{
"fixed": "0:2.0.41-6.SP7_redhat_00001.1.el7eap"
},
{
"fixed": "0:7.3.16-3.GA_redhat_00003.1.el7eap"
},
{
"fixed": "0:2.2.33-2.SP2_redhat_00001.1.el8eap"
},
{
"fixed": "0:7.4.18-1.GA_redhat_00003.1.el8eap"
},
{
"fixed": "0:2.2.33-2.SP2_redhat_00001.1.el9eap"
},
{
"fixed": "0:7.4.18-1.GA_redhat_00003.1.el9eap"
},
{
"fixed": "0:2.2.33-2.SP2_redhat_00001.1.el7eap"
},
{
"fixed": "0:7.4.18-1.GA_redhat_00003.1.el7eap"
},
{
"fixed": "0:1.11.9-2.redhat_00001.1.el8eap"
},
{
"fixed": "0:800.3.1-2.GA_redhat_00002.1.el8eap"
},
{
"fixed": "0:2.3.14-2.SP2_redhat_00001.1.el8eap"
},
{
"fixed": "0:8.0.3-13.GA_redhat_00007.1.el8eap"
},
{
"fixed": "0:1.11.9-2.redhat_00001.1.el9eap"
},
{
"fixed": "0:800.3.1-2.GA_redhat_00002.1.el9eap"
},
{
"fixed": "0:2.3.14-2.SP2_redhat_00001.1.el9eap"
},
{
"fixed": "0:8.0.3-13.GA_redhat_00007.1.el9eap"
}
],
"source": "AFFECTED_FIELD",
"strategy": "InverseAffectedRanges"
}
]
}
],
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/7xxx/CVE-2024-7885.json"
}
},
"related_cves": [
{
"value": "CVE-2024-7885",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 492863,
"published_at": "2024-08-21T14:13:36.579+00:00"
}