Vulnerability · Published Jan 3, 2025 · Assigned by GitHub_M
CVE-2024-56412PhpSpreadsheet vulnerable to bypass of the XSS sanitizer using the javascript protocol and special characters
Medium 4.8
In plain English
A medium-severity cross-site scripting in PhpSpreadsheet from PHPOffice. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 0.4% (higher than 33% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
Official description
PhpSpreadsheet is a PHP library for reading and writing spreadsheet files. Versions prior to 3.7.0, 2.3.5, 2.1.6, and 1.29.7 are vulnerable to bypass of the cross-site scripting sanitizer using the javascript protocol and special characters. An attacker can use special characters, so that the library processes the javascript protocol with special characters and generates an HTML link. Versions 3.7.0, 2.3.5, 2.1.6, and 1.29.7 contain a patch for the issue.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| Packagist | phpoffice/phpexcel | no fix listed | GHSA-q9jv-mm3r-j47r |
| Packagist | phpoffice/phpspreadsheet | 3.7.0 | GHSA-q9jv-mm3r-j47r |
| Packagist | phpoffice/phpspreadsheet | 1.29.7 | GHSA-q9jv-mm3r-j47r |
| Packagist | phpoffice/phpspreadsheet | 2.1.6 | GHSA-q9jv-mm3r-j47r |
| Packagist | phpoffice/phpspreadsheet | 2.3.5 | GHSA-q9jv-mm3r-j47r |
Affected products (as reported)
| Vendor | Product | Versions |
|---|---|---|
| PHPOffice | PhpSpreadsheet | >= 3.0.0, < 3.7.0< 1.29.7>= 2.0.0, < 2.1.6>= 2.2.0, < 2.3.5 |
Weakness: CWE-79 · Vector: CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:A/VC:L/VI:L/VA:N/SC:L/SI:L/SA:N