CVE-2026-66046
CVE-2026-66046 is a high-severity vulnerability in Libexpat Project Libexpat with a CVSS 3.x base score of 7.5. It is not currently listed as actively exploited by CISA, and its EPSS exploit-prediction score is low. The underlying weakness is classified as CWE-407.
Key facts
- Severity: High (CVSS 3.x base score 7.5)
- CVSS v4: 8.7
- EPSS exploit prediction: 1% (53rd percentile)
- Actively exploited: Not listed in CISA KEV
- Weakness: CWE-407
- Affected product: Libexpat Project Libexpat
- Published:
- Last modified:
Description
Expat through 2.8.3 contains a denial of service vulnerability caused by quadratic algorithmic complexity in the storeAtts() function in xmlparse.c, where processing N specified attributes with non-normalized values triggers an O(N^2) linear scan of elementType->defaultAtts to determine CDATA status. A remote unauthenticated attacker can supply a single well-formed XML document of a few megabytes to an application parsing untrusted XML to cause excessive CPU consumption, resulting in denial of service without requiring authentication, external entity resolution, or non-default parser options.
Frequently asked questions
- What is CVE-2026-66046?
- Expat through 2.8.3 contains a denial of service vulnerability caused by quadratic algorithmic complexity in the storeAtts() function in xmlparse.c, where processing N specified attributes with non-normalized values triggers an O(N^2) linear scan of elementType->defaultAtts to determine CDATA status. A remote unauthenticated attacker can supply a single well-formed XML document of a few megabytes to an application parsing untrusted XML to cause excessive CPU consumption, resulting in denial of service without requiring authentication, external entity resolution, or non-default parser options.
- How severe is CVE-2026-66046?
- CVE-2026-66046 has a CVSS 3.x base score of 7.5, rated high severity. It is exploitable over network with low attack complexity, requires no privileges and no user interaction. Impact on confidentiality is none, integrity none, and availability high.
- Is CVE-2026-66046 being actively exploited?
- It is not currently listed in CISA's KEV catalog. Its EPSS exploit-prediction score is 1% (53rd percentile), an estimate of the probability of exploitation in the next 30 days.
- What products are affected by CVE-2026-66046?
- CVE-2026-66046 affects Libexpat Project Libexpat. See the affected-products list for the exact vulnerable versions.
- How do I fix CVE-2026-66046?
- Review the linked vendor and NVD advisories for patched versions and mitigations, then upgrade or apply the recommended workaround. Given its high severity, prioritise patching exposed systems.
- When was CVE-2026-66046 published?
- CVE-2026-66046 was published on 2026-08-18 and last updated on 2026-09-18.
References
- https://github.com/libexpat/libexpat/pull/1321
- https://www.vulncheck.com/advisories/expat-denial-of-service-via-storeatts-quadratic-complexity
Affected products (1)
- cpe:2.3:a:libexpat_project:libexpat:*:*:*:*:*:*:*:*
More vulnerabilities in Libexpat Project Libexpat
- CVE-2024-45492 — Critical (CVSS 9.8): An issue was discovered in libexpat before 2.6.3. nextScaffoldPart in xmlparse.c can have an integer overflow for…
- CVE-2024-45491 — Critical (CVSS 9.8): An issue was discovered in libexpat before 2.6.3. dtdCopy in xmlparse.c can have an integer overflow for nDefaultAtts…
- CVE-2022-25315 — Critical (CVSS 9.8): In Expat (aka libexpat) before 2.4.5, there is an integer overflow in storeRawNames.
- CVE-2022-25236 — Critical (CVSS 9.8): xmlparse.c in Expat (aka libexpat) before 2.4.5 allows attackers to insert namespace-separator characters into…
- CVE-2022-25235 — Critical (CVSS 9.8): xmltok_impl.c in Expat (aka libexpat) before 2.4.5 lacks certain validation of encoding, such as checks for whether a…
- CVE-2022-23852 — Critical (CVSS 9.8): Expat (aka libexpat) before 2.4.4 has a signed integer overflow in XML_GetBuffer, for configurations with a nonzero…
All CVEs affecting Libexpat Project Libexpat →
Other CWE-407 vulnerabilities
- CVE-2026-94658 — High (CVSS 8.7): Inefficient Algorithmic Complexity vulnerability in Apache Thrift Lua bindings. This issue affects Apache Thrift:…
- CVE-2026-103604 — High (CVSS 8.7): Inefficient algorithmic complexity in X.509 distinguished name string conversion (X509Name.ToString and…
- CVE-2026-49250 — High (CVSS 8.7): Conform, a type-safe form validation library, allows the parsing of nested objects in the form of object.property. From…
- CVE-2026-83613 — High (CVSS 8.7): xmldom is a pure JavaScript W3C standard-based (XML DOM Level 2 Core) DOMParser and XMLSerializer module. Prior to…
- CVE-2026-54284 — High (CVSS 8.7): sqlparse is a non-validating SQL parser module for Python. Prior to 0.6.0, TokenList construction and string conversion…
- CVE-2026-65623 — High (CVSS 8.7): Inefficient Algorithmic Complexity vulnerability in mtrudel bandit allows unauthenticated remote denial of service via…