In github.com/xuri/excelize/v2, parsing a spreadsheet cell with a negative shared-string index causes a runtime panic. The shared-string lookup in xlsxC.getValueFrom checks only the upper bound of the parsed index against the shared-string slice length, causing negative indices (such as -1) to bypass validation and trigger an out-of-bounds slice access when reading cells via APIs such as GetCellValue or GetRows.
{
"review_status": "REVIEWED",
"url": "https://pkg.go.dev/vuln/GO-2026-6452"
}{
"imports": [
{
"path": "github.com/xuri/excelize/v2",
"symbols": [
"Cols.Rows",
"File.AddPicture",
"File.AddPictureFromBytes",
"File.AddPivotTable",
"File.AddSlicer",
"File.AddTable",
"File.CalcCellValue",
"File.DuplicateRow",
"File.DuplicateRowTo",
"File.GetCellFormula",
"File.GetCellType",
"File.GetCellValue",
"File.GetCols",
"File.GetMergeCells",
"File.GetPictureCells",
"File.GetPictures",
"File.GetRows",
"File.InsertCols",
"File.InsertRows",
"File.RemoveCol",
"File.RemoveRow",
"File.SearchSheet",
"Rows.Columns",
"StreamWriter.AddTable",
"formulaFuncs.ANCHORARRAY",
"formulaFuncs.FORMULATEXT",
"formulaFuncs.INDIRECT",
"formulaFuncs.ISFORMULA",
"xlsxC.getValueFrom"
]
}
]
}