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.
Advisories
Source ID Title
EUVD EUVD EUVD-2019-0763 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.
Github GHSA Github GHSA GHSA-vvwv-h69m-wg6f XXE in PHPSpreadsheet due to incomplete fix for previous encoding issue
Fixes

Solution

No solution given by the vendor.


Workaround

No workaround given by the vendor.

History

Wed, 04 Sep 2024 18:15:00 +0000

Type Values Removed Values Added
First Time appeared Phpoffice
Phpoffice phpspreadsheet
CPEs cpe:2.3:a:phpspreadsheet_project:phpspreadsheet:*:*:*:*:*:*:*:* cpe:2.3:a:phpoffice:phpspreadsheet:*:*:*:*:*:*:*:*
Vendors & Products Phpspreadsheet Project
Phpspreadsheet Project phpspreadsheet
Phpoffice
Phpoffice phpspreadsheet

cve-icon MITRE

Status: PUBLISHED

Assigner: mitre

Published:

Updated: 2024-08-04T23:17:39.846Z

Reserved: 2019-05-27T00:00:00

Link: CVE-2019-12331

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Modified

Published: 2019-11-07T15:15:10.697

Modified: 2024-11-21T04:22:37.817

Link: CVE-2019-12331

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

No data.