[ CVE-2026-107211 · Published 7 Oct 2026 ]
Excelize: Unchecked pivot-cache field index in extractPivotTableFields causes unrecoverable panic
CVSS 5.5
EPSS <1%Fix available
[ Description ]Official description
Excelize is a Go language library for reading and writing Microsoft Excel spreadsheets. From 2.8.1 to 2.11.0, separately parsed pivot-table field indices are used to index the pivot-cache field-name slice without bounds checks. extractPivotTableFields uses getPivotCacheFieldsName output while processing GetPivotTables and trusts the dataField fld attribute as an index. When a crafted workbook supplies a pivot-field count mismatch or an out-of-range dataField fld value before GetPivotTables is called, the unchecked index causes a Go slice-bounds panic that escapes the library, allowing an attacker to crash the process or request worker. No fixed version is available as of this review.
[ Fixes ]Fixes and patches
- github.com/xuri/excelize/v2 2.11.1-0.20261003002531-6258dcebc4e2Fixed version · GitHub Advisories · go package github.com/xuri/excelize/v2: upgrade to 2.11.1-0.20261003002531-6258dcebc4e2 or later (affected >= 2.8.1, < 2.11.1-0.20261003002531-6258dcebc4e2)
- Patch on github.comVendor patch or bulletin · NVD · Reference tagged 'Patch' by NVD
- Patch on github.comVendor patch or bulletin · NVD · Reference tagged 'Patch' by NVD
[ Packages ]Affected open-source packages
- github.com/xuri/excelize/v2 goAffected >= 2.8.1, < 2.11.1-0.20261003002531-6258dcebc4e2 · fixed in 2.11.1-0.20261003002531-6258dcebc4e2 · GHSA-mx22-3794-2vpv
[ References ]References
- github.com/qax-os/excelize/commit/6258dcebc4e2a2aed985c38a08098dfd908521d1Patch
- github.com/qax-os/excelize/pull/2435Issue TrackingPatch
- github.com/qax-os/excelize/security/advisories/GHSA-mx22-3794-2vpvExploitVendor Advisory