High severity · published Nov 18, 2024
CVE-2024-47873
PhpSpreadsheet is a PHP library for reading and writing spreadsheet files
7.5
CVSS
0.8%
EPSS
No
On KEV
Description
PhpSpreadsheet is a PHP library for reading and writing spreadsheet files. The XmlScanner class has a scan method which should prevent XXE attacks. However, prior to versions 1.9.4, 2.1.3, 2.3.2, and 3.4.0, the regexes used in the `scan` method and the findCharSet method can be bypassed by using UCS-4 and encoding guessing. An attacker can bypass the sanitizer and achieve an XML external entity attack. Versions 1.9.4, 2.1.3, 2.3.2, and 3.4.0 fix the issue.
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Attack vector
Network
Complexity
Low
Privileges
None
User interaction
None
Confidentiality
High
Integrity
None
Availability
None
Scope
Unchanged
Exploitation
Is it being used?
Exploit prediction (EPSS)0.8% · higher than 55% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
PH
Phpspreadsheet · Phpoffice
before 1.29.4; 2.0.0 before 2.1.3; 2.2.0 before 2.3.2; 3.3.0 before 3.4.0 · source: NVD
Affected product
PH
Phpspreadsheet
Phpoffice
More from Phpspreadsheet
9.8
CVE-2026-34084
PhpSpreadsheet SSRF and RCE via PHP stream wrappers in IOFactory::load
9.2
CVE-2026-45034
PhpSpreadsheet: File::prohibitWrappers bypass
8.8
CVE-2026-108357
PhpSpreadsheet: XmlScanner Bypass via Double-Encoded unentity() TOCTOU Allows XXE and Denial of Service
8.8
CVE-2026-108358
PhpSpreadsheet: XmlScanner Bypass via ISO-2022 Escape Sequences Allows XXE and Denial of Service
8.8
CVE-2024-45291
PHPSpreadsheet is a pure PHP library for reading and writing spreadsheet files