Skip to content
Heist/ feed
Back to feed
High

Undertow: improper state management in proxy protocol parsing causes information leakage

Type: advisorySources: OSV

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 source

Published 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"
}