Vulnerability Details 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.
Exploit prediction scoring system (EPSS) score
EPSS Score 0.007
EPSS Ranking 53.3%
CVSS Severity
CVSS v3 Score 7.5
Products affected by CVE-2026-66046
-
cpe:2.3:a:libexpat_project:libexpat:-
-
cpe:2.3:a:libexpat_project:libexpat:1.95.0
-
cpe:2.3:a:libexpat_project:libexpat:1.95.1
-
cpe:2.3:a:libexpat_project:libexpat:1.95.2
-
cpe:2.3:a:libexpat_project:libexpat:1.95.3
-
cpe:2.3:a:libexpat_project:libexpat:1.95.4
-
cpe:2.3:a:libexpat_project:libexpat:1.95.5
-
cpe:2.3:a:libexpat_project:libexpat:1.95.6
-
cpe:2.3:a:libexpat_project:libexpat:1.95.7
-
cpe:2.3:a:libexpat_project:libexpat:1.95.8
-
cpe:2.3:a:libexpat_project:libexpat:2.0.0
-
cpe:2.3:a:libexpat_project:libexpat:2.0.1
-
cpe:2.3:a:libexpat_project:libexpat:2.1.0
-
cpe:2.3:a:libexpat_project:libexpat:2.1.1
-
cpe:2.3:a:libexpat_project:libexpat:2.2.0
-
cpe:2.3:a:libexpat_project:libexpat:2.2.1
-
cpe:2.3:a:libexpat_project:libexpat:2.2.10
-
cpe:2.3:a:libexpat_project:libexpat:2.2.2
-
cpe:2.3:a:libexpat_project:libexpat:2.2.3
-
cpe:2.3:a:libexpat_project:libexpat:2.2.4
-
cpe:2.3:a:libexpat_project:libexpat:2.2.5
-
cpe:2.3:a:libexpat_project:libexpat:2.2.6
-
cpe:2.3:a:libexpat_project:libexpat:2.2.7
-
cpe:2.3:a:libexpat_project:libexpat:2.2.8
-
cpe:2.3:a:libexpat_project:libexpat:2.2.9
-
cpe:2.3:a:libexpat_project:libexpat:2.3.0
-
cpe:2.3:a:libexpat_project:libexpat:2.4.0
-
cpe:2.3:a:libexpat_project:libexpat:2.4.1
-
cpe:2.3:a:libexpat_project:libexpat:2.4.3
-
cpe:2.3:a:libexpat_project:libexpat:2.4.4
-
cpe:2.3:a:libexpat_project:libexpat:2.4.5
-
cpe:2.3:a:libexpat_project:libexpat:2.4.6
-
cpe:2.3:a:libexpat_project:libexpat:2.4.7
-
cpe:2.3:a:libexpat_project:libexpat:2.4.8
-
cpe:2.3:a:libexpat_project:libexpat:2.4.9
-
cpe:2.3:a:libexpat_project:libexpat:2.5.0
-
cpe:2.3:a:libexpat_project:libexpat:2.6.0
-
cpe:2.3:a:libexpat_project:libexpat:2.6.1
-
cpe:2.3:a:libexpat_project:libexpat:2.6.2
-
cpe:2.3:a:libexpat_project:libexpat:2.6.3
-
cpe:2.3:a:libexpat_project:libexpat:2.6.4
-
cpe:2.3:a:libexpat_project:libexpat:2.7.0
-
cpe:2.3:a:libexpat_project:libexpat:2.7.1
-
cpe:2.3:a:libexpat_project:libexpat:2.7.2
-
cpe:2.3:a:libexpat_project:libexpat:2.7.3
-
cpe:2.3:a:libexpat_project:libexpat:2.7.4
-
cpe:2.3:a:libexpat_project:libexpat:2.7.5
-
cpe:2.3:a:libexpat_project:libexpat:2.8.0
-
cpe:2.3:a:libexpat_project:libexpat:2.8.1
-
cpe:2.3:a:libexpat_project:libexpat:2.8.3