Impact
XmlScanner::scan in PhpSpreadsheet fails to detect DOCTYPE declarations when ISO‑2022 escape sequences are present in XLSX XML parts. The scan bypass allows XML entities to be expanded, triggering denial of service attacks, and when PHP versions before 8.0 run or when LIBXML_NOENT is enabled, it can also enable local file inclusion or server‑side request forgery via entity references. This flaw is a classic XML External Entity vulnerability (CWE‑611) exacerbated by improper handling of escape sequences (CWE‑776).
Affected Systems
The vulnerability affects the PHPOffice PhpSpreadsheet library in versions older than 1.30.7, 2.1.19, 2.4.8, 3.10.8, and 5.10.0. Only releases equal to or newer than these addresses the issue.
Risk and Exploitability
With a CVSS score of 8.8 the flaw is considered high severity. The EPSS score is not available, so the exact likelihood of exploitation cannot be quantified, but the flaw is not listed in CISA KEV, indicating no confirmed widespread exploitation. Attackers can trigger the vulnerability by supplying a crafted XLSX file to any application that imports spreadsheets using the affected PhpSpreadsheet library. Successful exploitation could lead to service disruption through excessive memory consumption or, on vulnerable PHP configurations, unauthorized file access or external resource requests.
OpenCVE Enrichment
Github GHSA