CVE-2019-15903: libexpat · Out-of-bounds Read
Source CVE Database V5
Not known to be exploited · CVSS 6.5 Medium · fixed in 2.2.8 : update affected systems when convenient.
Data as of 26 Oct 2026, 14:05 UTC
- EPSS
- 6.6% chance of exploitation in 30 days – higher than 93% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
- Patch
- Available – fixed in 2.2.8
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:HExploitation evidence
Disclosed: evidence found.
CVE published 4 Sep 2019
Detectable: no evidence on record.
No public nuclei template indexed
Weaponised: no evidence on record.
No public exploit code indexed in Metasploit or Exploit-DB
Exploited in the wildExploited: no evidence on record.
Not in CISA KEV and no source reports exploitation
Observed by OffSeq MirageSeen by Mirage: no evidence on record.
No attack traffic recorded by OffSeq Mirage sensors
A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 26 Oct 2026.
What to do
Affected software
| Product | Affected | Fixed in |
|---|---|---|
| n/a n/a | Affected
| Fixed in
|
AI-suggested
Organizations should identify all software and systems that incorporate libexpat and verify the version in use. Immediate mitigation involves upgrading libexpat to version 2.2.8 or later, where this vulnerability is fixed. If upgrading is not immediately feasible, organizations should implement input validation and sanitization to block or reject suspicious or untrusted XML inputs, particularly those containing complex DTDs or unusual structures that could trigger the parser flaw. Employing runtime application self-protection (RASP) or web application firewalls (WAFs) with XML anomaly detection can help detect and block exploitation attempts. Additionally, monitoring application logs for crashes or unusual XML parsing errors can provide early warning signs. Developers should review code paths invoking XML_GetCurrentLineNumber or XML_GetCurrentColumnNumber to ensure safe usage and consider applying patches or workarounds provided by software vendors embedding libexpat. Regular vulnerability scanning and patch management processes should include checks for libexpat versions.
Description
In libexpat before 2.2.8, crafted XML input could fool the parser into changing from DTD parsing to document parsing too early; a consecutive call to XML_GetCurrentLineNumber (or XML_GetCurrentColumnNumber) then resulted in a heap-based buffer over-read.
References
- usn.ubuntu.com/4132-1/ (opens in a new tab)
- seclists.org/bugtraq/2019/Sep/30 (opens in a new tab)
- usn.ubuntu.com/4132-2/ (opens in a new tab)
- lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/BDUTI5TVQWIGGQXPEVI4T2ENHFSBMIBP/ (opens in a new tab)
- debian.org/security/2019/dsa-4530 (opens in a new tab)
- seclists.org/bugtraq/2019/Sep/37 (opens in a new tab)
- lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/A4TZKPJFTURRLXIGLB34WVKQ5HGY6JJA/ (opens in a new tab)
- lists.opensuse.org/opensuse-security-announce/2019-09/msg00081.html (opens in a new tab)
- lists.opensuse.org/opensuse-security-announce/2019-09/msg00080.html (opens in a new tab)
- lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/S26LGXXQ7YF2BP3RGOWELBFKM6BHF6UG/ (opens in a new tab)
- seclists.org/bugtraq/2019/Oct/29 (opens in a new tab)
- usn.ubuntu.com/4165-1/ (opens in a new tab)
- debian.org/security/2019/dsa-4549 (opens in a new tab)
- access.redhat.com/errata/RHSA-2019:3210 (opens in a new tab)
- access.redhat.com/errata/RHSA-2019:3237 (opens in a new tab)
- seclists.org/bugtraq/2019/Nov/1 (opens in a new tab)
- lists.opensuse.org/opensuse-security-announce/2019-11/msg00000.html (opens in a new tab)
- lists.opensuse.org/opensuse-security-announce/2019-11/msg00002.html (opens in a new tab)
- lists.opensuse.org/opensuse-security-announce/2019-11/msg00003.html (opens in a new tab)
- access.redhat.com/errata/RHSA-2019:3756 (opens in a new tab)
- lists.opensuse.org/opensuse-security-announce/2019-11/msg00013.html (opens in a new tab)
- lists.opensuse.org/opensuse-security-announce/2019-11/msg00016.html (opens in a new tab)
- lists.opensuse.org/opensuse-security-announce/2019-11/msg00018.html (opens in a new tab)
- lists.opensuse.org/opensuse-security-announce/2019-11/msg00017.html (opens in a new tab)
- lists.opensuse.org/opensuse-security-announce/2019-11/msg00019.html (opens in a new tab)
- lists.debian.org/debian-lts-announce/2019/11/msg00006.html (opens in a new tab)
- seclists.org/bugtraq/2019/Nov/24 (opens in a new tab)
- debian.org/security/2019/dsa-4571 (opens in a new tab)
- lists.debian.org/debian-lts-announce/2019/11/msg00017.html (opens in a new tab)
- security.gentoo.org/glsa/201911-08 (opens in a new tab)
- usn.ubuntu.com/4202-1/ (opens in a new tab)
- seclists.org/bugtraq/2019/Dec/17 (opens in a new tab)
- seclists.org/bugtraq/2019/Dec/21 (opens in a new tab)
- seclists.org/bugtraq/2019/Dec/23 (opens in a new tab)
- seclists.org/fulldisclosure/2019/Dec/23 (opens in a new tab)
- seclists.org/fulldisclosure/2019/Dec/26 (opens in a new tab)
- seclists.org/fulldisclosure/2019/Dec/30 (opens in a new tab)
- seclists.org/fulldisclosure/2019/Dec/27 (opens in a new tab)
- lists.opensuse.org/opensuse-security-announce/2020-01/msg00008.html (opens in a new tab)
- lists.opensuse.org/opensuse-security-announce/2020-01/msg00040.html (opens in a new tab)
- usn.ubuntu.com/4335-1/ (opens in a new tab)
- oracle.com/security-alerts/cpuapr2020.html (opens in a new tab)
- oracle.com/security-alerts/cpuoct2020.html (opens in a new tab)
- github.com/libexpat/libexpat/issues/317 (opens in a new tab)
- github.com/libexpat/libexpat/pull/318 (opens in a new tab)
- github.com/libexpat/libexpat/commit/c20b758c332d9a13afbbb276d30db1d183a85d43 (opens in a new tab)
- github.com/libexpat/libexpat/issues/342 (opens in a new tab)
- packetstormsecurity.com/files/154503/Slackware-Security-Advisory-expat-Updates.html (opens in a new tab)
- security.netapp.com/advisory/ntap-20190926-0004/ (opens in a new tab)
- packetstormsecurity.com/files/154927/Slackware-Security-Advisory-python-Updates.html (opens in a new tab)
- packetstormsecurity.com/files/154947/Slackware-Security-Advisory-mozilla-firefox-Updates.html (opens in a new tab)
- support.apple.com/kb/HT210788 (opens in a new tab)
- support.apple.com/kb/HT210790 (opens in a new tab)
- support.apple.com/kb/HT210785 (opens in a new tab)
- support.apple.com/kb/HT210789 (opens in a new tab)
- support.apple.com/kb/HT210793 (opens in a new tab)
- support.apple.com/kb/HT210795 (opens in a new tab)
- support.apple.com/kb/HT210794 (opens in a new tab)
- tenable.com/security/tns-2021-11 (opens in a new tab)