Skip to main content
← All vulnerabilities
CVE-2024-45060GHSA-V66G-P9X6-V98P

Unauthenticated Cross-Site-Scripting (XSS) in sample file in PHPSpreadsheet

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 1.29.2, 2.1.1, 2.3.0
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: poc
  • Automatable: no
  • Technical impact: partial

Summary

PHPSpreadsheet is a pure PHP library for reading and writing spreadsheet files. One of the sample scripts in PhpSpreadsheet is susceptible to a cross-site scripting (XSS) vulnerability due to improper handling of input where a number is expected leading to formula injection. The code in in `45_Quadratic_equation_solver.php` concatenates the user supplied parameters directly into spreadsheet formulas. This allows an attacker to take control over the formula and output unsanitized data into the page, resulting in JavaScript execution. This issue has been addressed in release versions 1.29.2, 2.1.1, and 2.3.0. All users are advised to upgrade. There are no known workarounds for this vulnerability.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: poc · Automatable: no · Technical impact: partial

  3. Record last updated

Affected versions

  • PHPOffice PhpSpreadsheet

    fixed in 1.29.2; From 2.0.0 · fixed in 2.1.1; From 2.2.0 · fixed in 2.3.0

  • phpoffice/phpspreadsheetPackagist

    From 2.2.0 · fixed in 2.3.0

  • phpoffice/phpspreadsheetPackagist

    fixed in 1.29.2

  • phpoffice/phpspreadsheetPackagist

    From 2.0.0 · fixed in 2.1.1

  • phpoffice/phpexcelPackagist

    through 1.8.2

References 2

GitHub · PHPOffice/PhpSpreadsheet