CVE-2025-54370 json
PhpSpreadsheet vulnerable to SSRF when reading and displaying a processed HTML document in the browser
published last yr. modified 4mo ago also EUVD-2025-25699 , GHSA-rx7m-68vc-ppxh
- cvss
- 8.7
- version 4.0, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.8%
- EPSS 0.8% chance of exploitation in 30 days, percentile 57%
- public exploits
- 0
- none known
Summary
PhpOffice/PhpSpreadsheet is a pure PHP library for reading and writing spreadsheet files. Prior to versions 1.30.0, 2.1.12, 2.4.0, 3.10.0, and 5.0.0, SSRF can occur when a processed HTML document is read and displayed in the browser. The vulnerability lies in the setPath method of the PhpOffice\PhpSpreadsheet\Worksheet\Drawing class, where a crafted string from the user is passed to the HTML reader. This issue has been patched in versions 1.30.0, 2.1.12, 2.4.0, 3.10.0, and 5.0.0.
Patch / fix
- packagist phpoffice/phpspreadsheet 1.30.0, 2.1.12, 2.4.0, 3.10.0, 5.0.0
- phpoffice phpspreadsheet 1.30.0, 2.1.12, 2.4.0, 3.10.0, 5.0.0
- phpspreadsheet_project phpspreadsheet 1.30.0, 2.1.12, 2.4.0, 3.10.0, 5.0.0
Is CVE-2025-54370 in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerCISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- yes
- Technical impact
- partial
- Assessed
- last yr.
Exploit prediction
0.82% chance of exploitation in the next 30 days, higher than 57% of all scored CVEs (FIRST EPSS, 2026-11-09).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 4.0 | 8.7 | CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N |
| CNA | 4.0 | 8.7 | CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| packagist | phpoffice/phpspreadsheet | <1.30.0 >=2.0.0, <2.1.12 >=2.2.0, <2.4.0 >=3.0.0, <3.10.0 >=4.0.0, <5.0.0 |
1.30.0 2.1.12 2.4.0 3.10.0 5.0.0 |
Affected products
- PHPOffice PhpSpreadsheet
Classification
- Weakness
-
- CWE-918 Server-Side Request Forgery
References
-
github.com
/PHPOffice/PhpSpreadsheet/commit/334a67797ace574d1d37c0992ffe283b7415471a
web
-
github.com
/PHPOffice/PhpSpreadsheet/commit/4050f14521d70634c3320b170236574a6106eb39
web
-
github.com
/PHPOffice/PhpSpreadsheet/commit/81a0de2261f698404587a6421a5c6eb263c40b31
web
-
github.com
/PHPOffice/PhpSpreadsheet/commit/ac4befd2f7ccc21a59daef606a02a3d1828ade09
web
-
github.com
/PHPOffice/PhpSpreadsheet/commit/c2cd0e64392438e4c6af082796eb65c1d629a266
web
-
github.com
/PHPOffice/PhpSpreadsheet/security/advisories/GHSA-rx7m-68vc-ppxh
web
-
nvd.nist.gov
/vuln/detail/CVE-2025-54370
advisory
-
github.com
/FriendsOfPHP/security-advisories/blob/master/phpoffice/phpspreadsheet/CVE-2025-54370.yaml
web
-
github.com
/PHPOffice/PhpSpreadsheet
package
Sources
- CVE List CVE-2025-54370
- GitHub Advisory GHSA-rx7m-68vc-ppxh
- NVD CVE-2025-54370
Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.