Critical severity · published May 5, 2026
CVE-2026-34084
PhpSpreadsheet SSRF and RCE via PHP stream wrappers in IOFactory::load
9.8
CVSS
0.7%
EPSS
No
On KEV
Description
PhpSpreadsheet is a library for reading and writing spreadsheet files. In versions 1.30.2 and earlier, 2.0.0 through 2.1.14, 2.2.0 through 2.4.3, 3.3.0 through 3.10.3, and 4.0.0 through 5.5.0, when the filename argument to IOFactory::load() is user-controlled, an attacker can supply a PHP stream wrapper path (such as phar://, ftp://, or ssh2.sftp://) that passes the is_file() check in File::assertFile(). The phar:// wrapper triggers deserialization of the PHAR metadata, which can lead to remote code execution if a suitable gadget chain is available in the application. The ftp:// and ssh2.sftp:// wrappers can be used for server-side request forgery. This issue has been fixed in versions 1.30.3, 2.1.15, 2.4.4, 3.10.4, and 5.6.0.
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Attack vector
Network
Complexity
Low
Privileges
None
User interaction
None
Confidentiality
High
Integrity
High
Availability
High
Scope
Unchanged
Exploitation
Is it being used?
Exploit prediction (EPSS)0.7% · higher than 53% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
PH
PhpSpreadsheet · PHPOffice
>= 4.0.0, <= 5.5.0; >= 3.3.0, <= 3.10.3; >= 2.2.0, <= 2.4.3; >= 2.0.0, <= 2.1.14; <= 1.30.2 · source: vendor, NVD
Affected product
PH
PhpSpreadsheet
PHPOffice
More from PhpSpreadsheet
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
8.8
CVE-2019-12331
PHPOffice PhpSpreadsheet before 1.8.0 has an XXE issue