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.
{
"license": "CC-BY-4.0",
"sources": [
{
"database_specific": {
"status": "Modified"
},
"id": "CVE-2019-15903",
"modified": "2026-06-17T02:21:18.093Z",
"url": "https://services.nvd.nist.gov/rest/json/cves/2.0?cveId=CVE-2019-15903",
"published": "2019-09-04T06:15:10.877Z",
"html_url": "https://nvd.nist.gov/vuln/detail/CVE-2019-15903",
"imported": "2026-07-17T21:01:47.716Z"
}
]
}