CVE-2024-56410: PhpSpreadsheet has a Cross-Site Scripting (XSS) vulnerability in custom properties
5.4
CVSS Score
3.1
Basic Information
CVE ID
GHSA ID
EPSS Score
0.11567%
CWE
Published
1/3/2025
Updated
3/6/2025
KEV Status
No
Technology
PHP
Technical Details
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N
| Package Name | Ecosystem | Vulnerable Versions | First Patched Version |
|---|---|---|---|
| phpoffice/phpspreadsheet | composer | >= 3.0.0, < 3.7.0 | 3.7.0 |
| phpoffice/phpspreadsheet | composer | <= 1.29.6 | 1.29.7 |
| phpoffice/phpspreadsheet | composer | >= 2.0.0, <= 2.1.5 | 2.1.6 |
| phpoffice/phpspreadsheet | composer | >= 2.2.0, <= 2.3.4 | 2.3.5 |
| phpoffice/phpexcel | composer | <= 1.8.2 |
Vulnerability Intelligence
Miggo AI
Root Cause Analysis
The primary vulnerability occurs in generateHTMLHeader, where custom property names (used in meta tags) and hyperlink base values (in base href) were not sanitized, as shown in the commit diff adding htmlspecialchars. The generateRow method's hyperlink handling also had insufficient sanitization, though it was a secondary vector. The CVE description explicitly identifies generateMeta as the vulnerable component, but analysis shows the root cause is in how generateHTMLHeader calls generateMeta with unsanitized input.