Read the docs
TI-2019-09194 Aliases CVE-2019-12331GHSA-vvwv-h69m-wg6f

PHPOffice PhpSpreadsheet before 1.8.0 has an XXE issue.

Priority MEDIUM 41CWE-611Published · Updated

Key facts

Attack vector
Network
Privileges required
None
User interaction
Required
Attack complexity
Low
Impact type
—
Confidentiality · integrity · availability
High · High · High
Fix status
Fixed

Attack profile from CVSS 3.1 · NVD. Fix status from CNA and GitHub.

Summary

PHPOffice PhpSpreadsheet before 1.8.0 has an XXE issue. The XmlScanner decodes the sheet1.xml from an .xlsx to utf-8 if something else than UTF-8 is declared in the header. This was a security measurement to prevent CVE-2018-19277 but the fix is not sufficient. By double-encoding the the xml payload to utf-7 it is possible to bypass the check for the string ‚<!ENTITY‘ and thus allowing for an xml external entity processing (XXE) attack.

Why it matters now

EPSS 0.0135 71st percentileScored 2026-11-07
Public exploit Yes 1 exploit referenceTagged by NVD
Fix Fixed phpoffice/phpspreadsheet (Packagist): 1.8.0

SSVC decision points

Not available: CISA has not published SSVC decision points for this record.

Affected products

VendorProductAffected versionsFixed inStatusSource
——all versions—No fix listedCNA
—phpoffice/phpspreadsheet (Packagist)before 1.8.01.8.0Patch availableGHSA-vvwv-h69m-wg6f
—phpoffice/phpexcel (Packagist)up to 1.8.2—No fix listedGHSA-vvwv-h69m-wg6f
  • — Vendor— Affected all versions Fixed in — No fix listed CNA
  • phpoffice/phpspreadsheet (Packagist) Vendor— Affected before 1.8.0 Fixed in 1.8.0 Patch available GHSA-vvwv-h69m-wg6f
  • phpoffice/phpexcel (Packagist) Vendor— Affected up to 1.8.2 Fixed in — No fix listed GHSA-vvwv-h69m-wg6f

CPE configurations NVD · 1

CPEVersionsRoleVendor
cpe:2.3:a:phpoffice:phpspreadsheet:*:*:*:*:*:*:*:*before 1.8.0VulnerablePHPOffice
  • cpe:2.3:a:phpoffice:phpspreadsheet:*:*:*:*:*:*:*:* Versions before 1.8.0 Vulnerable ·PHPOffice

Remediation

  • Fix · GHSA-vvwv-h69m-wg6f phpoffice/phpspreadsheet (Packagist) Fixed in 1.8.0 Advisory →

Timeline

  1. 2026-10-02 Threatist record created from CVE-2019-12331
  2. 2026-10-03 Alias added: GHSA-vvwv-h69m-wg6f

References

  • TI-2026-26406 PhpSpreadsheet SSRF and RCE via PHP stream wrappers in IOFactory::load CVSS 4.0CRITICAL 9.2
  • TI-2024-37339 PhpSpreadsheet vulnerable to unauthorized reflected XSS in Currency.php file CVSS 4.0HIGH 8.3
  • TI-2024-37338 PhpSpreadsheet allows unauthorized reflected XSS in `Convert-Online.php` file CVSS 4.0HIGH 8.3
  • TI-2024-37325 PhpSpreadsheet vulnerable to unauthorized reflected XSS in the Accounting.php file CVSS 4.0HIGH 8.3
  • TI-2024-37324 PhpSpreadsheet vulnerable to unauthorized reflected XSS in the constructor of the Downloader class CVSS 4.0HIGH 8.3
  • TI-2024-30160 XML External Entity Reference (XXE) in PHPSpreadsheet CVSS 3.1HIGH 8.8
See all 24 →

Sources