Vulnerability · CVE-2026-40296
PhpSpreadsheet is a pure PHP library for reading and writing spreadsheet files.
Published May 6, 2026 · catalog updated Jun 17, 2026 · PhpSpreadsheet is a pure
Check if you run it
No confirmed exploitation is on record for CVE-2026-40296. EPSS is 0.25%. Act only if a listed version of PhpSpreadsheet is a pure is installed.
Gaps on this record
- The stored product name is a package slug. The name on this page is taken from the title (PhpSpreadsheet is a pure).
- No version range is stored. A customer cannot check an installed version against this record.
- No vendor fix or required action is stored. Compare the linked advisory before you change production.
- Severity
- Medium5.4
- Known exploitation
- Not in CISA/VulnCheck KEV
- EPSS
- 0.25%
- Remediation
- Advisory link
- Affected products
- cpe phpoffice/phpspreadsheet
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.
Are you affected?
Enter the version you run. The result uses only the ranges stored on this record.
The check returns affected, not affected, or incomplete. It does not guess a version that is missing from the record.
- cpe phpoffice/phpspreadsheetversion unspecified
How to fix CVE-2026-40296
Recommended remediation
A patch or advisory reference is linked. Open the original publisher for availability by product version.
Official advisories
What to do
Three questions, each answered from this record only. Confirm the vendor advisory before you patch.
Should you patch?
No confirmed exploitation is on record for CVE-2026-40296. EPSS is 0.25%. Act only if a listed version of PhpSpreadsheet is a pure is installed.
Which versions are affected?
Affected version ranges are not on this record. Compare the installed version with the linked vendor advisory before you change production.
What should an analyst verify?
CWE-79: Cross-site Scripting (XSS). EPSS 0.25%. There is no CISA KEV listing. No Exploit-DB or Metasploit reference is linked. Use the source links for the original advisory.
Code
The project this record applies to. Exploit listings stay in References.
No public source repository is identified for this product.
Timeline
Detection, updates, and resolution for this record.
May 6, 2026 · NIST NVD
Detected
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 t
Jun 17, 2026 · NIST NVD
Updated
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 t
Sources
- CVE.orgVulnerability recordCVE-2026-40296
Official CVE identifier
cve.org - FIRST EPSSExploitation probabilityCVE-2026-40296
30-day exploitation probability 0.2%
first.org - NIST NVDVulnerability recordCVE-2026-40296
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 a
nvd.nist.gov
References
Freshness
Last verified in this catalog Oct 18, 2026. Significant claims (KEV, EPSS, CVSS, affected ranges) come from the source rows above — open the original publisher for the authoritative advisory.