VYPR
Medium severity5.4GHSA Advisory· Published May 6, 2026· Updated May 11, 2026

CVE-2026-40296

CVE-2026-40296

Description

PhpSpreadsheet is a pure PHP library for reading and writing spreadsheet files. The HTML writer skips htmlspecialchars escaping when a cell's formatted value differs from the original value. When a cell has a custom number format containing the text placeholder @ along with any additional literal characters (for example ". @", "@ ", or "x@"), the formatter replaces @ with the cell value and adds the extra characters, causing the formatted value to differ from the original and bypassing HTML escaping entirely. An attacker who can control the cell value and number format of an uploaded spreadsheet that is later converted to HTML and displayed to other users can achieve stored cross-site scripting. This issue is fixed in versions 5.7.0, 3.10.5, 2.4.5, 2.1.16, and 1.30.4.

Affected packages

Versions sourced from the GitHub Security Advisory.

PackageAffected versionsPatched versions
phpoffice/phpspreadsheetPackagist
>= 4.0.0, < 5.7.05.7.0
phpoffice/phpspreadsheetPackagist
>= 3.3.0, < 3.10.53.10.5
phpoffice/phpspreadsheetPackagist
>= 2.2.0, < 2.4.52.4.5
phpoffice/phpspreadsheetPackagist
>= 2.0.0, < 2.1.162.1.16
phpoffice/phpspreadsheetPackagist
< 1.30.41.30.4

Affected products

2
  • <= 1.30.3+ 1 more
    • (no CPE)range: <= 1.30.3
    • cpe:2.3:a:phpoffice:phpspreadsheet:*:*:*:*:*:*:*:*range: <1.30.4

Patches

0

No patches discovered yet.

Vulnerability mechanics

AI mechanics synthesis has not run for this CVE yet.

References

3

News mentions

0

No linked articles in our index yet.