Vulnerability · Published Aug 28, 2024 · Assigned by GitHub_M

CVE-2024-45046PhpSpreadsheet HTML writer is vulnerable to Cross-Site Scripting via style information

Medium 5.4

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 36% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.

Severity (CVSS 3.1)5.4Medium
Exploit odds (30 days)0.4%top 63.7% of all CVEs
Exploited in the wildNo reportsCISA SSVC: poc
Attack toolingNoneno public tooling known

Official description

PHPSpreadsheet is a pure PHP library for reading and writing spreadsheet files. In affected versions `\PhpOffice\PhpSpreadsheet\Writer\Html` doesn't sanitize spreadsheet styling information such as font names, allowing an attacker to inject arbitrary JavaScript on the page. As a result an attacker may used a crafted spreadsheet to fully takeover a session of a user viewing spreadsheet files as HTML. This issue has been addressed in release version 2.1.0. All users are advised to upgrade. There are no known workarounds for this vulnerability.

Affected packages & fixed versions

EcosystemPackageFixed inAdvisory
Packagistphpoffice/phpexcelno fix listedGHSA-wgmf-q9vr-vww6
Packagistphpoffice/phpspreadsheet2.1.0GHSA-wgmf-q9vr-vww6
Packagistphpoffice/phpspreadsheet1.29.1GHSA-wgmf-q9vr-vww6

Affected products (as reported)

VendorProductVersions
PHPOffice PhpSpreadsheet < 2.1.0

Weakness: CWE-79 · Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N

References