CVE Catalog

CVE-2026-107212

HighCVSS 7.5
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Low risk
0.34%

25th percentile - higher than 25% of all known CVEs

Summary

Excelize versions 2.1.0 to 2.11.0 in Rows.Columns accepts a look-ahead row number above TotalRows without applying the limit enforced by Rows.Next. A crafted worksheet with an oversized row number causes iteration through all missing rows, consuming CPU.

Risk Assessment

An attacker can supply a crafted Excel file that causes prolonged CPU consumption in the application processing documents, leading to denial of service.

Recommendation

No fixed version is available. Restrict processing of untrusted Excel files and consider validating row numbers before iteration.

Other vulnerabilities in Excelize

See all
Original NVD description (English source)

Excelize is a Go language library for reading and writing Microsoft Excel spreadsheets. From 2.1.0 to 2.11.0, Rows.Columns accepts a look-ahead row number above TotalRows without applying the limit enforced by Rows.Next. File.GetRows relies on Rows.Next and Rows.Columns, but Rows.Columns consumes the row r attribute without the limit check in Rows.Next. When a crafted worksheet places an oversized row number after an ordinary valid row and the application calls GetRows or iterates Rows, the iterator advances through every missing row number instead of rejecting the workbook, allowing an attacker to consume a CPU core for an attacker-controlled duration. No fixed version is available as of this review.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS