{
  "schemaVersion": 1,
  "attribution": [
    {
      "source": "CISA Known Exploited Vulnerabilities",
      "url": "https://www.cisa.gov/known-exploited-vulnerabilities-catalog",
      "licence": "US government work"
    },
    {
      "source": "GitHub Advisory Database",
      "url": "https://github.com/advisories",
      "licence": "CC BY 4.0"
    },
    {
      "source": "Have I Been Pwned",
      "url": "https://haveibeenpwned.com/",
      "licence": "CC BY 4.0"
    },
    {
      "source": "CVE Program (CVE records)",
      "url": "https://www.cve.org/Legal/TermsOfUse",
      "licence": "CVE Terms of Use",
      "notice": "Copyright © 1999-2026, The MITRE Corporation. CVE is a trademark and the CVE logo is a registered trademark of The MITRE Corporation.",
      "terms": "CVE Usage: MITRE hereby grants you a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute Common Vulnerabilities and Exposures (CVE™). Any copy you make for such purposes is authorized provided that you reproduce MITRE's copyright designation and this license in any such copy."
    },
    {
      "source": "FIRST EPSS",
      "url": "https://www.first.org/epss/",
      "licence": "free to use; FIRST requests attribution"
    }
  ],
  "record": {
    "id": "CVE-2026-23941",
    "sourceURL": "https://www.cve.org/CVERecord?id=CVE-2026-23941",
    "idYear": 2026,
    "status": "PUBLISHED",
    "publishedAt": "2026-03-13T09:11:58.175Z",
    "updatedAt": "2026-07-24T14:15:30.978Z",
    "importedAt": "2026-10-24T01:58:02.025Z",
    "snapshot": {
      "id": "cve_2026-10-24_midnight_baseline",
      "at": "2026-10-24T00:00:00.000Z",
      "source": "https://github.com/CVEProject/cvelistV5/releases/tag/cve_2026-10-24_0100Z"
    },
    "facts": {
      "title": "Request smuggling via first-wins Content-Length parsing in inets httpd",
      "summary": "Inconsistent Interpretation of HTTP Requests ('HTTP Request Smuggling') vulnerability in Erlang OTP (inets httpd module) allows HTTP Request Smuggling.\n\nThis vulnerability is associated with program files lib/inets/src/http_server/httpd_request.erl and program routines httpd_request:parse_headers/7.\n\nThe server does not reject or normalize duplicate Content-Length headers. The earliest Content-Length in the request is used for body parsing while common reverse proxies (nginx, Apache httpd, Envoy) honor the last Content-Length value. This violates RFC 9112 Section 6.3 and allows front-end/back-end desynchronization, leaving attacker-controlled bytes queued as the start of the next request.\n\nThis issue affects OTP from OTP 17.0 before OTP 28.4.1, OTP 27.3.4.9 and OTP 26.2.5.18, corresponding to inets from 5.10 before 9.6.1, 9.3.2.3 and 9.1.0.5.",
      "affected": [
        {
          "vendor": "Erlang",
          "product": "OTP",
          "packageName": "inets",
          "defaultStatus": "unknown",
          "versions": [
            {
              "version": "5.10",
              "status": "affected",
              "versionType": "otp",
              "lessThan": "*",
              "changes": [
                {
                  "at": "9.6.1",
                  "status": "unaffected"
                },
                {
                  "at": "9.3.2.3",
                  "status": "unaffected"
                },
                {
                  "at": "9.1.0.5",
                  "status": "unaffected"
                }
              ]
            }
          ]
        },
        {
          "vendor": "Erlang",
          "product": "OTP",
          "packageName": "erlang/otp",
          "collectionURL": "https://github.com",
          "defaultStatus": "unknown",
          "versions": [
            {
              "version": "17.0",
              "status": "affected",
              "versionType": "otp",
              "lessThan": "*",
              "changes": [
                {
                  "at": "28.4.1",
                  "status": "unaffected"
                },
                {
                  "at": "27.3.4.9",
                  "status": "unaffected"
                },
                {
                  "at": "26.2.5.18",
                  "status": "unaffected"
                }
              ]
            },
            {
              "version": "84adefa331c4159d432d22840663c38f155cd4c1",
              "status": "affected",
              "versionType": "git",
              "lessThan": "*",
              "changes": [
                {
                  "at": "a4b46336fd25aa100ac602eb9a627aaead7eda18",
                  "status": "unaffected"
                },
                {
                  "at": "a761d391d8d08316cbd7d4a86733ba932b73c45b",
                  "status": "unaffected"
                },
                {
                  "at": "e775a332f623851385ab6ddb866d9b150612ddf6",
                  "status": "unaffected"
                }
              ]
            }
          ]
        }
      ]
    }
  }
}