Skip to main content
← All vulnerabilities
CVE-2026-107215GHSA-X2Q3-8CJH-766FGO-2026-6689

Excelize: extractPart allocates attacker-controlled, unbounded and negative-sized buffers from CFB directory entries: remote panic / OOM DoS

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 2.11.1-0.20260912113515-5f636f9dcde5
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: poc
  • Automatable: yes
  • Technical impact: partial

Summary

Excelize is a Go language library for reading and writing Microsoft Excel spreadsheets. From 2.3.1 to 2.11.0, extractPart allocates a byte slice directly from an attacker-controlled CFB directory-entry size before validating the sector chain or size domain. extractPart trusts the CFB directory entry streamSize for EncryptionInfo and EncryptedPackage allocations before validating the stream. When a crafted OLE compound file declares a negative or extremely large EncryptionInfo or EncryptedPackage stream size, the declared size reaches make with a negative length or forces a multi-gigabyte allocation, allowing an attacker to panic or exhaust process memory. No fixed version is available as of this review.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: poc · Automatable: yes · Technical impact: partial

  3. Record last updated

Affected versions

  • qax-os excelize

    From 2.3.1 · through 2.11.0

  • github.com/xuri/excelize/v2Go

    From 2.3.1 · fixed in 2.11.1-0.20260912113515-5f636f9dcde5

  • github.com/360EntSecGroup-Skylar/excelize/v2Go

    From 2.3.1

  • github.com/xuri/excelize/v2Go

    fixed in 2.11.1-0.20260912113515-5f636f9dcde5

References 3

GitHub · qax-os/excelize