Bug 2563716 (CVE-2026-115943)

Summary: CVE-2026-115943 perl-spreadsheet-xlsx: Spreadsheet::XLSX: Arbitrary code execution via crafted number format conditions
Product: [Other] Security Response Reporter: OSIDB Bzimport <bzimport>
Component: vulnerabilityAssignee: Product Security DevOps Team <prodsec-dev>
Status: NEW --- QA Contact:
Severity: high Docs Contact:
Priority: high    
Version: unspecifiedKeywords: Security
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: ---
Doc Text:
A flaw was found in Spreadsheet::XLSX. This vulnerability can lead to arbitrary code execution when the library processes a spreadsheet containing crafted number format conditions. The module improperly evaluates workbook-supplied formatting conditions as code during file parsing. An attacker can exploit this flaw by providing a malicious spreadsheet file, potentially executing arbitrary commands with the privileges of the application processing the file.
Story Points: ---
Clone Of: Environment:
Last Closed: Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 2565569, 2565570, 2565571, 2565572, 2565573, 2565574    
Bug Blocks:    

Description OSIDB Bzimport 2026-10-29 22:11:32 UTC
Spreadsheet::XLSX versions before 0.19 for Perl allow code execution via string eval of number format conditions in ExcelFmt.

When a number format has a condition such as [>100], ExcelFmt chooses the format section by passing the condition and the cell value to a string eval. Both come from the workbook, and the eval runs while Spreadsheet::XLSX->new parses it.

An attacker who supplies an XLSX file can run arbitrary Perl code.