CVE-2026-118370 json
libexpat through 2.9.0 Integer Overflow in storeAtts via attIndex and nPrefixes
published 13d ago modified 7d ago also EUVD-2026-111546
- cvss
- 5.9
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.4%
- EPSS 0.4% chance of exploitation in 30 days, percentile 33%
- public exploits
- 0
- none known
Summary
libexpat through 2.9.0 contains a signed integer overflow vulnerability in storeAtts() in lib/xmlparse.c that allows attackers to trigger out-of-bounds writes via oversized attribute counts. Attackers can supply a multi-gigabyte document with a start tag carrying over 2^30 attributes to overflow attIndex and nPrefixes, crashing applications or corrupting heap memory.
Patch / fix
- libexpat_project libexpat 2.10.0
- expat Debian 14 2.10.0-1
debian advisories DEBIAN-CVE-2026-118370
- expat openSUSE Tumbleweed 2.10.0-1.1
opensuse advisories openSUSE-SU-2026:12396-1
- expat Alpine 3.24, Alpine 3.23, Alpine 3.22 +1 more 2.10.0-r0
alpine advisories ALPINE-CVE-2026-118370
Alpine secdb © Alpine Linux, from https://secdb.alpinelinux.org via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
Is CVE-2026-118370 in your stack? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerVendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2026-118370 updated cvss 5.9
expat: expat: Denial of Service via integer overflow during XML attribute parsing
-
Red Hat Enterprise Linux 6 expat, compat-expat1, expat 2.7.3-1.el10_2.7affected: workaround, no fix planned “Out of support scope”
-
Red Hat Enterprise Linux 7 expat, firefox, expat 2.7.3-1.el10_2.7, firefox 140.17.0-1.el10_2 Red Hat Enterprise Linux 8 expat, firefox, xmlrpc-c, mingw-expat, thunderbird, xmlrpc-c-c++, +7 more Red Hat Enterprise Linux 9 expat, firefox, firefox-x11, thunderbird, expat 2.7.3-1.el10_2.7, firefox 140.17.0-1.el10_2, +1 more Red Hat Enterprise Linux 10 expat 2.7.3-1.el10_2.7, firefox 140.17.0-1.el10_2, thunderbird 140.17.0-1.el10_2 Red Hat Hardened Images expat 2.7.3-1.el10_2.7 Red Hat OpenShift Container Platform 4 openshift/ose-rhel-coreos-8, openshift/ose-rhel-coreos-9affected: workaround, no fix available
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- none
- Automatable
- no
- Technical impact
- partial
- Assessed
- 7d ago
Exploit prediction
0.39% chance of exploitation in the next 30 days, higher than 33% of all scored CVEs (FIRST EPSS, 2026-11-09).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 4.0 | 8.2 | CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N |
| CNA | 3.1 | 5.9 | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H |
| CNA | 4.0 | 8.2 | CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X |
| NVD | 3.1 | 8.2 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:H |
Affected products
- libexpat libexpat
Classification
- Weakness
-
- CWE-190 Integer Overflow or Wraparound
References
-
github.com
/libexpat/libexpat/pull/1450
patch, issue-tracking
-
github.com
/libexpat/libexpat/commit/1bac53c4fc460a03cd9860f39501c7979f6750ae
patch
-
github.com
/libexpat/libexpat/commit/621cb2c78b253ee023a86bc91d6ddb048481c04c
patch
-
vulncheck.com
/advisories/libexpat-through-2.9.0-integer-overflow-in-storeatts-via-attindex-and-nprefixes
third-party-advisory, patch
-
github.com
/libexpat/libexpat/blob/a76b1174c1ea52abb639a4c69d52b630a8a106a2/expat/lib/xmlparse.c#L4138-L4140
technical-description, product
-
github.com
/libexpat/libexpat
product
Sources
- CVE List CVE-2026-118370
- NVD CVE-2026-118370
Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.