{"schemaVersion":3,"id":"CVE-2026-107215","aliases":["GHSA-x2q3-8cjh-766f"],"status":"published","duplicateOf":null,"title":null,"description":"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.","dates":{"published":"2026-10-07T17:48:03.233Z","modified":"2026-10-10T02:38:31.276Z","reserved":null,"kevAdded":[],"kevDue":[]},"cvss":{"headline":{"score":7.5,"severity":"high","version":"3.1","versionLabel":"v3.1","source":"CVE.org","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","computed":false,"selection":"backend-summary"},"metrics":[{"version":"3.1","versionLabel":"v3.1","source":"CVE.org","score":7.5,"severity":"high","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","exploitability":null,"impact":null,"computed":false},{"version":"3.1","versionLabel":"v3.1","source":"OSV · Go","score":7.5,"severity":"high","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","exploitability":10,"impact":6,"computed":true},{"version":"3.1","versionLabel":"v3.1","source":"NVD","score":7.5,"severity":"high","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","exploitability":null,"impact":null,"computed":false}]},"epss":{"probability":0.00228,"percentile":0.12673,"severity":"low","asOf":"2026-10-19T00:00:00.000Z","change":{"pp":null,"baselineDate":null,"baselineScore":null},"history":[{"date":"2026-10-08T00:00:00.000Z","score":0.00223,"percentile":null},{"date":"2026-10-09T00:00:00.000Z","score":0.00223,"percentile":null},{"date":"2026-10-10T00:00:00.000Z","score":0.00223,"percentile":null},{"date":"2026-10-11T00:00:00.000Z","score":0.00223,"percentile":null},{"date":"2026-10-12T00:00:00.000Z","score":0.00223,"percentile":null},{"date":"2026-10-13T00:00:00.000Z","score":0.00223,"percentile":null},{"date":"2026-10-14T00:00:00.000Z","score":0.00228,"percentile":null},{"date":"2026-10-15T00:00:00.000Z","score":0.00228,"percentile":null},{"date":"2026-10-16T00:00:00.000Z","score":0.00228,"percentile":null},{"date":"2026-10-17T00:00:00.000Z","score":0.00228,"percentile":null},{"date":"2026-10-18T00:00:00.000Z","score":0.00228,"percentile":null},{"date":"2026-10-19T00:00:00.000Z","score":0.00228,"percentile":0.12673}],"last30":[{"date":"2026-10-08T00:00:00.000Z","score":0.00223,"percentile":null},{"date":"2026-10-09T00:00:00.000Z","score":0.00223,"percentile":null},{"date":"2026-10-10T00:00:00.000Z","score":0.00223,"percentile":null},{"date":"2026-10-11T00:00:00.000Z","score":0.00223,"percentile":null},{"date":"2026-10-12T00:00:00.000Z","score":0.00223,"percentile":null},{"date":"2026-10-13T00:00:00.000Z","score":0.00223,"percentile":null},{"date":"2026-10-14T00:00:00.000Z","score":0.00228,"percentile":null},{"date":"2026-10-15T00:00:00.000Z","score":0.00228,"percentile":null},{"date":"2026-10-16T00:00:00.000Z","score":0.00228,"percentile":null},{"date":"2026-10-17T00:00:00.000Z","score":0.00228,"percentile":null},{"date":"2026-10-18T00:00:00.000Z","score":0.00228,"percentile":null},{"date":"2026-10-19T00:00:00.000Z","score":0.00228,"percentile":0.12673}]},"kev":{"state":"not-listed","entries":[],"listedCount":0,"totalCatalogs":3,"catalogs":[{"source":"cisa","label":"CISA","listed":false,"entry":null},{"source":"enisa","label":"ENISA","listed":false,"entry":null},{"source":"circl","label":"CIRCL","listed":false,"entry":null}]},"ransomware":{"state":"none-recorded","sources":[]},"exploits":[{"id":"GITHUB_QAX-OS_EXCELIZE","name":"Excelize","source":"github","url":"https://github.com/qax-os/excelize/security/advisories/GHSA-h69g-9hx6-f3v4","maturity":"poc","reliabilityScore":0.3,"verified":false,"type":null,"platforms":[],"requiresAuth":null,"exploitdb":null,"metasploit":null}],"exploitCount":1,"weaknesses":[{"id":"CWE-789","name":"Memory Allocation with Excessive Size Value","description":"The product allocates memory based on an untrusted, large size value, but it does not ensure that the size is within expected limits, allowing arbitrary amounts of memory to be allocated.","type":"weakness","status":"Draft","abstraction":"Variant","likelihoodOfExploit":null,"url":"https://cwe.mitre.org/data/definitions/789.html"}],"affected":[{"vendor":"excelize","product":"excelize","name":"excelize","label":"excelize","ecosystem":null,"cpePart":"a","purl":null,"purlType":null,"versions":[{"text":"≥ 2.3.1, ≤ 2.11.0","noFixRecorded":false,"fixedIn":null}],"versionsText":"≥ 2.3.1, ≤ 2.11.0","eol":null,"hubHref":"/vendor/excelize/excelize"},{"vendor":"github.com/xuri/excelize","product":"v2","name":"github.com/xuri/excelize/v2","label":"v2","ecosystem":"Go","cpePart":null,"purl":"pkg:golang/github.com/xuri/excelize/v2","purlType":"golang","versions":[{"text":"≥ 2.3.1, < 2.11.1-0.20260912113515-5f636f9dcde5","noFixRecorded":false,"fixedIn":null}],"versionsText":"≥ 2.3.1, < 2.11.1-0.20260912113515-5f636f9dcde5","eol":null,"hubHref":null},{"vendor":"qax-os","product":"excelize","name":"excelize","label":"excelize","ecosystem":null,"cpePart":"a","purl":null,"purlType":null,"versions":[{"text":"≥ 2.3.1, ≤ 2.11.0","noFixRecorded":false,"fixedIn":null}],"versionsText":"≥ 2.3.1, ≤ 2.11.0","eol":null,"hubHref":"/vendor/qax-os/excelize"}],"affectedCount":3,"eol":{"hasEol":false,"count":0},"references":[{"url":"https://github.com/qax-os/excelize/security/advisories/GHSA-x2q3-8cjh-766f","label":"github.com/qax-os/excelize/security/advisories/GHSA-x2q3-8cjh-766f","hostname":"github.com","tags":["X Refsource CONFIRM","WEB","Exploit","Vendor Advisory"]},{"url":"https://github.com/qax-os/excelize/pull/2396","label":"github.com/qax-os/excelize/pull/2396","hostname":"github.com","tags":["X Refsource MISC","WEB","Issue Tracking","Patch"]},{"url":"https://github.com/qax-os/excelize/commit/5f636f9dcde55911f14290060b017f0cc88cd694","label":"github.com/qax-os/excelize/commit/5f636f9dcde55911f14290060b017f0cc88cd694","hostname":"github.com","tags":["X Refsource MISC","WEB","Patch"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-107215","label":"nvd.nist.gov/vuln/detail/CVE-2026-107215","hostname":"nvd.nist.gov","tags":["Advisory"]},{"url":"https://github.com/qax-os/excelize","label":"github.com/qax-os/excelize","hostname":"github.com","tags":["PACKAGE"]}],"lineage":{"upstream":[],"downstream":[],"duplicates":[],"related":[]},"timeline":[{"kind":"published","date":"2026-10-07T17:48:03.233Z","label":"Published","detail":"Vulnerability first disclosed.","source":null},{"kind":"modified","date":"2026-10-10T02:38:31.276Z","label":"Last modified","detail":"Vulnerability information updated.","source":null}],"risk":{"score":40,"level":"medium","profile":"Default","thresholds":{"critical":75,"high":50,"medium":25,"low":10}},"meta":{"dataAsOf":"2026-10-19T18:19:50.037Z","stale":false,"partial":false}}