{"schemaVersion":3,"id":"CVE-2026-107217","aliases":["GHSA-c85p-xxjj-2r75"],"status":"published","duplicateOf":null,"title":null,"description":"Excelize is a Go language library for reading and writing Microsoft Excel spreadsheets. From 2.0.0 to 2.11.0 in github.com/xuri/excelize/v2 and from 1.1.0 to 1.4.1 in github.com/xuri/excelize, ColumnNameToNumber accumulates a bijective base-26 value in int64 without detecting overflow, allowing an invalid long column name to wrap to zero with no error. ColumnNameToNumber accepts the overflowing name VGWQHXLSDVIKWV, after which checkSheetR0 and xlsxWorksheet.checkRow use the wrapped column value as an index. When a crafted worksheet uses an overflowing column name in a row normalized by checkSheetR0 or checkRow, the wrapped zero column becomes a negative slice index during worksheet normalization, allowing an attacker to panic and terminate the calling process. No fixed version is available as of this review.","dates":{"published":"2026-10-07T18:26:55.998Z","modified":"2026-10-08T16:10:25.237Z","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.00338,"percentile":0.25802,"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.00335,"percentile":null},{"date":"2026-10-09T00:00:00.000Z","score":0.00335,"percentile":null},{"date":"2026-10-10T00:00:00.000Z","score":0.00335,"percentile":null},{"date":"2026-10-11T00:00:00.000Z","score":0.00335,"percentile":null},{"date":"2026-10-12T00:00:00.000Z","score":0.00335,"percentile":null},{"date":"2026-10-13T00:00:00.000Z","score":0.00335,"percentile":null},{"date":"2026-10-14T00:00:00.000Z","score":0.00338,"percentile":null},{"date":"2026-10-15T00:00:00.000Z","score":0.00338,"percentile":null},{"date":"2026-10-16T00:00:00.000Z","score":0.00338,"percentile":null},{"date":"2026-10-17T00:00:00.000Z","score":0.00338,"percentile":null},{"date":"2026-10-18T00:00:00.000Z","score":0.00338,"percentile":null},{"date":"2026-10-19T00:00:00.000Z","score":0.00338,"percentile":0.25802}],"last30":[{"date":"2026-10-08T00:00:00.000Z","score":0.00335,"percentile":null},{"date":"2026-10-09T00:00:00.000Z","score":0.00335,"percentile":null},{"date":"2026-10-10T00:00:00.000Z","score":0.00335,"percentile":null},{"date":"2026-10-11T00:00:00.000Z","score":0.00335,"percentile":null},{"date":"2026-10-12T00:00:00.000Z","score":0.00335,"percentile":null},{"date":"2026-10-13T00:00:00.000Z","score":0.00335,"percentile":null},{"date":"2026-10-14T00:00:00.000Z","score":0.00338,"percentile":null},{"date":"2026-10-15T00:00:00.000Z","score":0.00338,"percentile":null},{"date":"2026-10-16T00:00:00.000Z","score":0.00338,"percentile":null},{"date":"2026-10-17T00:00:00.000Z","score":0.00338,"percentile":null},{"date":"2026-10-18T00:00:00.000Z","score":0.00338,"percentile":null},{"date":"2026-10-19T00:00:00.000Z","score":0.00338,"percentile":0.25802}]},"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-129","name":"Improper Validation of Array Index","description":"The product uses untrusted input when calculating or using an array index, but the product does not validate or incorrectly validates the index to ensure the index references a valid position within the array.","type":"weakness","status":"Draft","abstraction":"Variant","likelihoodOfExploit":"High","url":"https://cwe.mitre.org/data/definitions/129.html"},{"id":"CWE-190","name":"Integer Overflow or Wraparound","description":"The product performs a calculation that can\n         produce an integer overflow or wraparound when the logic\n         assumes that the resulting value will always be larger than\n         the original value. This occurs when an integer value is\n         incremented to a value that is too large to store in the\n         associated representation. When this occurs, the value may\n         become a very small or negative number.","type":"weakness","status":"Stable","abstraction":"Base","likelihoodOfExploit":"Medium","url":"https://cwe.mitre.org/data/definitions/190.html"}],"affected":[{"vendor":"excelize","product":"excelize","name":"excelize","label":"excelize","ecosystem":null,"cpePart":"a","purl":null,"purlType":null,"versions":[{"text":"≥ 1.1.0, ≤ 1.4.1","noFixRecorded":false,"fixedIn":null},{"text":"≥ 2.0.0, ≤ 2.11.0","noFixRecorded":false,"fixedIn":null}],"versionsText":"≥ 1.1.0, ≤ 1.4.1 | ≥ 2.0.0, ≤ 2.11.0","eol":null,"hubHref":"/vendor/excelize/excelize"},{"vendor":"github.com/xuri","product":"excelize","name":"github.com/xuri/excelize","label":"excelize","ecosystem":"Go","cpePart":null,"purl":"pkg:golang/github.com/xuri/excelize","purlType":"golang","versions":[{"text":"≥ 1.1.0, ≤ 1.4.1","noFixRecorded":false,"fixedIn":null}],"versionsText":"≥ 1.1.0, ≤ 1.4.1","eol":null,"hubHref":null},{"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.0.0, < 2.11.1-0.20260910071107-696050fbf14e","noFixRecorded":false,"fixedIn":null}],"versionsText":"≥ 2.0.0, < 2.11.1-0.20260910071107-696050fbf14e","eol":null,"hubHref":null},{"vendor":"qax-os","product":"excelize","name":"excelize","label":"excelize","ecosystem":null,"cpePart":"a","purl":null,"purlType":null,"versions":[{"text":"≥ 2.0.0, ≤ 2.11.0","noFixRecorded":false,"fixedIn":null},{"text":"≥ 1.1.0, ≤ 1.4.1","noFixRecorded":false,"fixedIn":null}],"versionsText":"≥ 2.0.0, ≤ 2.11.0 | ≥ 1.1.0, ≤ 1.4.1","eol":null,"hubHref":"/vendor/qax-os/excelize"}],"affectedCount":4,"eol":{"hasEol":false,"count":0},"references":[{"url":"https://github.com/qax-os/excelize/security/advisories/GHSA-c85p-xxjj-2r75","label":"github.com/qax-os/excelize/security/advisories/GHSA-c85p-xxjj-2r75","hostname":"github.com","tags":["X Refsource CONFIRM","WEB","Exploit","Vendor Advisory"]},{"url":"https://github.com/qax-os/excelize/pull/2394","label":"github.com/qax-os/excelize/pull/2394","hostname":"github.com","tags":["X Refsource MISC","WEB","Issue Tracking","Patch"]},{"url":"https://github.com/qax-os/excelize/commit/696050fbf14e74e96a58eef2b16aaf72f381a6a8","label":"github.com/qax-os/excelize/commit/696050fbf14e74e96a58eef2b16aaf72f381a6a8","hostname":"github.com","tags":["X Refsource MISC","WEB","Patch"]},{"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-07T18:26:55.998Z","label":"Published","detail":"Vulnerability first disclosed.","source":null},{"kind":"modified","date":"2026-10-08T16:10:25.237Z","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:36.915Z","stale":false,"partial":false}}