Libexpat Project: community verdicts
14 notable / known-exploited Libexpat Project CVEs the community has triaged.
- CVE-2009-3720MED 5EPSS 28%
The updatePosition function in lib/xmltok_impl.c in libexpat in Expat 2.0.1, as used in Python, PyXML, w3c-libwww, and other software, allows context-dependent attackers to cause a denial of service (application crash) via an XML document with crafted UTF-8 sequences that trigger a buffer over-read, a different vulnerability than CVE-2009-2625.
- CVE-2013-0340MED 6.8DisputedEPSS 20%
expat before version 2.4.0 does not properly handle entities expansion unless an application developer uses the XML_SetEntityDeclHandler function, which allows remote attackers to cause a denial of service (resource consumption), send HTTP requests to intranet servers, or read arbitrary files via a crafted XML document, aka an XML External Entity (XXE) issue. NOTE: it could be argued that because expat already provides the ability to disable external entity expansion, the responsibility for resolving this issue lies with application developers; according to this argument, this entry should be REJECTed, and each affected application would need its own CVE.
- CVE-2024-28757HIGH 7.5Real · low riskEPSS 2%
libexpat through 2.6.1 allows an XML Entity Expansion attack when there is isolated use of external parsers (created via XML_ExternalEntityParserCreate).
- CVE-2024-50602MED 5.9EPSS 1%
An issue was discovered in libexpat before 2.6.4. There is a crash within the XML_ResumeParser function because XML_StopParser can stop/suspend an unstarted parser.
- CVE-2026-45186LOW 2.9EPSS 0%
In libexpat before 2.8.1, the computational complexity of attribute name collision checks allows a denial of service via moderately sized crafted XML input.
- CVE-2026-41080LOW 2.9EPSS 0%
libexpat before 2.8.0 uses insufficient entropy, and thus hash flooding can occur via a crafted XML document.
- CVE-2023-52426MED 5.5EPSS 0%
libexpat through 2.5.0 allows recursive XML Entity Expansion if XML_DTD is undefined at compile time.
- CVE-2026-50219MED 4.9EPSS 0%
libexpat before 2.8.2 lacks handler call depth tracking for calls to XML_GetBuffer, XML_Parse, XML_ParseBuffer, XML_ParserFree, or XML_ParserReset from within handlers in cases of a policy violation. Thus, a use-after-free can occur,
- CVE-2026-32777MED 4EPSS 0%
libexpat before 2.7.5 allows an infinite loop while parsing DTD content.
- CVE-2025-66382LOW 2.9EPSS 0%
In libexpat through 2.7.3, a crafted file with an approximate size of 2 MiB can lead to dozens of seconds of processing time.
- CVE-2026-25210MED 6.9EPSS 0%
In libexpat before 2.7.4, the doContent function does not properly determine the buffer size bufSize because there is no integer overflow check for tag buffer reallocation.
- CVE-2026-32778LOW 2.9EPSS 0%
libexpat before 2.7.5 allows a NULL pointer dereference in the function setContext on retry after an earlier ouf-of-memory condition.
- CVE-2026-24515LOW 2.9EPSS 0%
In libexpat before 2.7.4, XML_ExternalEntityParserCreate does not copy unknown encoding handler user data.
- CVE-2026-32776MED 4EPSS 0%
libexpat before 2.7.5 allows a NULL pointer dereference with empty external parameter entity content.