Expat before 2.8.5 fails to validate that a high surrogate in UTF-16 input is followed by a low surrogate, allowing malformed UTF-16 sequences to be accepted. Attackers can supply UTF-16 encoded XML containing lone high surrogates that consume the following code unit, causing Expat to pass unpaired surrogates to applications built with XML_UNICODE and to silently replace input characters in other builds.
CVE-2026-93990
Score 7.5 from GitHub Security Advisory (severity: HIGH) published 2026-09-20. A secondary CVSS source baseline 7.5; sources differ by 0.0.
- High severity, but no confirmed exploitation yet
A fix is available — apply it.
- CVSS v3
- 7.5
- EG Score
- 7.5HIGHhigh confidence
- EG Risk
- 49EG Risk 49/100CISA SSVC
EG Risk is EchelonGraph's 0–100 priority score: it fuses intrinsic severity with real-world exploitation and automatability so you can rank equal-severity CVEs and fix the most dangerous first. Higher = act sooner. Distinct from the 0–10 EG Score (severity).
How it’s computedSeverity75% × 45%Exploitation0% × 40%Automatability100% × 15%CISA SSVC: Track at low or medium mission impact; Attend at high (mission-essential systems).Action: A fix is available. Apply it within your standard update timelines at low or medium mission impact and sooner than that at high. - EPSS PROB
- 0.4%
- EPSS %ILE
- 32nd
- KEV
- Not listed
CISA SSVCTrack at low or medium mission impact; Attend at high (mission-essential systems).
A fix is available. Apply it within your standard update timelines at low or medium mission impact and sooner than that at high.
Exploitation none (CISA Vulnrichment) · Automatable yes (CISA Vulnrichment) · Technical impact partial (CISA Vulnrichment). Mission impact is CISA's Mission & Well-being decision point, and only you can judge it: high means the affected system is essential to your organisation's mission, or its compromise could cause irreversible harm to people. CISA's decision table
Published
September 19, 2026
Last Modified
September 28, 2026
Advisory Details (3)
Auto-updated Sep 19, 2026GitHub - libexpat/libexpat: :herb: Fast streaming XML parser written in C99 with >90% test coverage; moved from SourceForge to GitHub · GitHub
https://github.com/libexpat/libexpatcommit ff6e1d7e750b (libexpat/libexpat)
Fix landed in libexpat/libexpat commit ff6e1d7e750b — awaiting tagged release
https://github.com/libexpat/libexpat/commit/ff6e1d7e750bbe245178f51a47a965dc8342861a[CVE-REQUESTED] lib: Reject UTF-16 high surrogate not followed by a low surrogate
Fix merged in libexpat/libexpat PR #1282 on 2026-09-18 — awaiting tagged release
https://github.com/libexpat/libexpat/pull/1282Vendor Advisories for CVE-2026-93990(5)
These vendors published their own advisory mentioning this CVE — often with vendor-specific remediation steps + affected product lists not in NVD.
- RHSA-2026:72663Red Hat Product SecurityHigh
Red Hat Security Advisory: expat security update
- RHSA-2026:72448Red Hat Product SecurityHigh
Red Hat Security Advisory: expat security update
- RHSA-2026:71655Red Hat Product SecurityHigh
Red Hat Security Advisory: Red Hat Hardened Images RPMs Security Update
- CVE-2026-93990Microsoft Security Response Center (MSRC)High
Expat through 2.8.4 Malformed UTF-16 Acceptance via Unchecked Surrogate
- GHSA-rfp9-ffqc-h4x8GitHub Security AdvisoriesHigh
Expat through 2.8.4 fails to validate low surrogates following high surrogates in UTF-16 input,...
Patch Availability(4)
| Vendor / Ecosystem | Fix (by version range) / Patch | Released | Source |
|---|---|---|---|
| redhat | expat-0:2.7.3-1.el10_2.5 | 2026-09-30 | redhat |
| redhat | expat-0:2.5.0-6.el9_8.5 | 2026-09-29 | redhat |
| redhat | expat-0:2.5.0-4.el8_10 | 2026-09-28 | redhat |
| redhat | expat-main-2.8.4-0.2.hum1 | 2026-09-24 | redhat |
Patches are aggregated from vendor advisories (Red Hat, Microsoft, Cisco, GitHub) and package ecosystems (OSV, GHSA). Multiple rows for the same upstream release have been deduplicated.
Affected Packages
(6 across 6 ecosystems)
Alpine:v3.22(1)
| Package | Vulnerable range | Fix by version range | Dependents |
|---|---|---|---|
| expat | — |
| — |
Alpine:v3.23(1)
| Package | Vulnerable range | Fix by version range | Dependents |
|---|---|---|---|
| expat | — |
| — |
Alpine:v3.24(1)
| Package | Vulnerable range | Fix by version range | Dependents |
|---|---|---|---|
| expat | — |
| — |
Debian:12(1)
| Package | Vulnerable range | Fix by version range | Dependents |
|---|---|---|---|
| expat | 2.5.0-1, 2.5.0-1+deb12u1, 2.5.0-1+deb12u2, 2.5.0-1+deb12u3 |
| — |
Debian:13(1)
| Package | Vulnerable range | Fix by version range | Dependents |
|---|---|---|---|
| expat | 2.7.1-2 ... 2.8.5-2 (17 versions) |
| — |
Debian:14(1)
| Package | Vulnerable range | Fix by version range | Dependents |
|---|---|---|---|
| expat | 2.7.1-2 ... 2.8.4-1 (14 versions) |
| — |
Weakness Classification(1)
MITRE Common Weakness Enumeration — the root-cause categories this CVE belongs to.
Additional Vendor Advisories
(1)
Vendors that published advisories for this CVE beyond the curated set above. Broader coverage but minimal per-row detail — click through for the original advisory.
Data Freshness Timeline
(refreshed 44× in last 7d / 95× in last 30d)
Each row is a source pipeline that fetched or updated this CVE on that date, with what changed. For example, "NVD update" means NVD published or revised its analysis for this CVE; "MITRE cvelistV5" means we ingested or refreshed it from the CNA feed. Most recent first.
- 2026-10-05 03:14 UTCEG score recompute
- 2026-10-05 03:14 UTCVendor advisory
- 2026-10-05 03:14 UTCGHSA enrichment
- 2026-10-04 23:23 UTCEPSS rescore
- 2026-10-04 14:28 UTCVendor advisory
- 2026-10-04 14:28 UTCGHSA enrichment
- 2026-10-04 01:41 UTCEG score recompute
- 2026-10-04 01:41 UTCVendor advisory
- 2026-10-04 01:41 UTCGHSA enrichment
- 2026-10-03 14:26 UTCEPSS rescore
- 2026-10-03 12:49 UTCVendor advisory
- 2026-10-03 12:49 UTCGHSA enrichment
- 2026-10-03 00:02 UTCEG score recompute
- 2026-10-03 00:02 UTCVendor advisory
- 2026-10-03 00:02 UTCGHSA enrichment
- 2026-10-02 17:57 UTCEPSS rescore
- 2026-10-02 11:15 UTCVendor advisory
- 2026-10-02 11:15 UTCGHSA enrichment
- 2026-10-01 22:27 UTCEG score recompute
- 2026-10-01 22:27 UTCVendor advisory
- 2026-10-01 22:27 UTCGHSA enrichment
- 2026-10-01 19:51 UTCEPSS rescore
- 2026-10-01 09:38 UTCVendor advisory
- 2026-10-01 09:38 UTCGHSA enrichment
- 2026-09-30 20:52 UTCEG score recompute
Show 70 moreShow fewer
- 2026-09-30 20:52 UTCVendor advisory
- 2026-09-30 20:52 UTCGHSA enrichment
- 2026-09-30 15:04 UTCEPSS rescore
- 2026-09-30 08:06 UTCVendor advisory
- 2026-09-30 08:06 UTCGHSA enrichment
- 2026-09-29 19:20 UTCEG score recompute
- 2026-09-29 19:20 UTCVendor advisory
- 2026-09-29 19:20 UTCGHSA enrichment
- 2026-09-29 06:31 UTCEG score recompute
- 2026-09-29 06:31 UTCVendor advisory
- 2026-09-29 06:31 UTCGHSA enrichment
- 2026-09-28 17:45 UTCEG score recompute
- 2026-09-28 17:45 UTCVendor advisory
- 2026-09-28 17:45 UTCGHSA enrichment
- 2026-09-28 16:35 UTCEG score recompute
- 2026-09-28 16:35 UTCVendor advisory
- 2026-09-28 16:35 UTCGHSA enrichment
- 2026-09-28 13:52 UTCEPSS rescore
- 2026-09-28 13:52 UTCEPSS rescore
- 2026-09-28 04:56 UTCVendor advisory
- 2026-09-28 04:56 UTCGHSA enrichment
- 2026-09-27 16:09 UTCEG score recompute
- 2026-09-27 16:09 UTCVendor advisory
- 2026-09-27 16:09 UTCGHSA enrichment
- 2026-09-27 13:49 UTCEPSS rescore
- 2026-09-27 03:23 UTCEG score recompute
- 2026-09-27 03:23 UTCVendor advisory
- 2026-09-27 03:23 UTCGHSA enrichment
- 2026-09-26 15:59 UTCEPSS rescore
- 2026-09-26 14:37 UTCVendor advisory
- 2026-09-26 14:37 UTCGHSA enrichment
- 2026-09-26 01:32 UTCEG score recompute
- 2026-09-26 01:32 UTCVendor advisory
- 2026-09-26 01:32 UTCGHSA enrichment
- 2026-09-25 12:43 UTCVendor advisory
- 2026-09-25 12:43 UTCGHSA enrichment
- 2026-09-24 23:57 UTCEG score recompute
- 2026-09-24 23:57 UTCVendor advisory
- 2026-09-24 23:57 UTCGHSA enrichment
- 2026-09-24 14:04 UTCEPSS rescore
- 2026-09-24 10:52 UTCVendor advisory
- 2026-09-24 10:52 UTCGHSA enrichment
- 2026-09-23 22:05 UTCEG score recompute
- 2026-09-23 22:05 UTCVendor advisory
- 2026-09-23 22:05 UTCGHSA enrichment
- 2026-09-23 17:54 UTCEPSS rescore
- 2026-09-23 09:19 UTCVendor advisory
- 2026-09-23 09:19 UTCGHSA enrichment
- 2026-09-22 20:32 UTCVendor advisory
- 2026-09-22 20:32 UTCGHSA enrichment
- 2026-09-22 17:00 UTCEG score recompute
- 2026-09-22 17:00 UTCVendor advisory
- 2026-09-22 16:59 UTCGHSA enrichment
- 2026-09-22 16:01 UTCEPSS rescore
- 2026-09-22 04:09 UTCEG score recompute
- 2026-09-22 04:09 UTCGHSA enrichment
- 2026-09-21 21:09 UTCEPSS rescore
- 2026-09-21 15:23 UTCEG score recompute
- 2026-09-21 15:23 UTCGHSA enrichment
- 2026-09-21 15:15 UTCEG score recompute
- 2026-09-21 15:15 UTCGHSA enrichment
- 2026-09-21 13:47 UTCGHSA enrichment
- 2026-09-21 01:01 UTCEG score recompute
- 2026-09-21 01:01 UTCGHSA enrichment
- 2026-09-20 20:16 UTCEPSS rescore
- 2026-09-20 12:15 UTCEG score recompute
- 2026-09-20 12:14 UTCGHSA enrichment
- 2026-09-19 23:27 UTCEG score recompute
- 2026-09-19 23:00 UTCEG score recompute
- 2026-09-19 23:00 UTCMITRE cvelistV5first tracked
Related CVEs(same product + same vendor + same CWE)
Same product
10 shownAlpine:v3.22:expat
- CVE-2024-45490EG 9.8CRITICAL
- CVE-2022-40674NVD 8.1EG 9.8CRITICAL
- CVE-2022-25315EG 9.8EPSS p92CRITICAL
- CVE-2022-25236EG 9.8EPSS p98CRITICAL
- CVE-2022-25235EG 9.8EPSS p92CRITICAL
- CVE-2022-23990NVD 7.5EG 9.8EPSS p90CRITICAL
- CVE-2022-23852EG 9.8EPSS p91CRITICAL
- CVE-2022-22824EG 9.8CRITICAL
- CVE-2022-22823EG 9.8CRITICAL
- CVE-2022-22822EG 9.8EPSS p92CRITICAL
Frequently asked(5)
What is CVE-2026-93990?
When was CVE-2026-93990 disclosed?
Is CVE-2026-93990 actively exploited?
What is the CVSS score of CVE-2026-93990?
How do I remediate CVE-2026-93990?
Dependency Blast Radius
See which npm, PyPI, Go, and Maven packages are affected by CVE-2026-93990
Is Your Infrastructure Affected by CVE-2026-93990?
EchelonGraph automatically scans your cloud infrastructure and maps CVE exposure using blast radius analysis.