CVE-2026-107225
Description
Excelize is a Go language library for reading and writing Microsoft Excel spreadsheets. From 2.8.0 to 2.11.0, GetStyle's fill, border, and font extraction predicates check only upper bounds for attacker-controlled style-table indices. File.GetStyle relies on extractStyleCondFuncs predicates that allow negative FillID, BorderID, and FontID values to reach slice indexing. When a crafted styles.xml supplies a negative fillId, borderId, or fontId and the application reads the style, a negative identifier passes the upper-bound-only predicate and becomes a negative slice index, allowing an attacker to panic while reading cell styling. No fixed version is available as of this review.
How to fix
- github.com/xuri/excelize/v22.11.1-0.20260731010303-ae2113b410e5 or later
Affected products
| Product | Affected versions | Fixed in |
|---|---|---|
| excelize excelize | 2.8.0 ≤ v ≤ 2.11.0 | — |
| github.com/xuri/excelize/v2Go | 2.8.0 ≤ v < 2.11.1-0.20260731010303-ae2113b410e5 | 2.11.1-0.20260731010303-ae2113b410e5 |
Check your version
Choose the product and enter the version you run to see whether it falls in the affected range.
Attack Surface Management
See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.