Katalog CVE

CVE-2026-107221

ŚrednieCVSS 6.5
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.30%

Percentyl 21 - wyżej niż 21% wszystkich znanych CVE

Streszczenie

Excelize to biblioteka języka Go do odczytu i zapisu arkuszy kalkulacyjnych Microsoft Excel. W wersjach od 2.0.0 do 2.11.0 funkcja checkRow ustala rozmiar docelowego slice komórek na podstawie ostatniej komórki w kolejności dokumentu XML, a następnie rozrzuca każdą komórkę według jej jawnego odwołania do kolumny. GetCellValue osiąga workSheetReader i checkRow, gdzie targetList jest zbyt krótka dla wcześniejszej komórki poza kolejnością. Gdy spreparowany wiersz umieszcza komórkę o wyższym numerze kolumny przed końcową komórką o niższym numerze, a API arkusza niebędące strumieniowym odczytuje arkusz, indeks kolumny wcześniejszej komórki przekracza długość slice wynikającą z końcowej komórki, co pozwala atakującemu wywołać nieodwracalny panic i zakończyć proces. Brak dostępnej poprawionej wersji na dzień przeglądu.

Ocena ryzyka

Atakujący może dostarczyć spreparowany plik XLSX, który po otwarciu przez aplikację korzystającą z Excelize spowoduje panic i zakończenie procesu, prowadząc do odmowy usługi. Ryzyko dotyczy aplikacji przetwarzających niezaufane pliki Excel.

Rekomendacja

Brak dostępnej poprawki. Monitoruj wydania biblioteki Excelize i zaktualizuj do wersji zawierającej poprawkę, gdy tylko będzie dostępna. Rozważ walidację wejściowych plików XLSX przed przetwarzaniem.

Inne podatności w Excelize

Zobacz wszystkie
Oryginalny opis (angielski, źródło NVD)

Excelize is a Go language library for reading and writing Microsoft Excel spreadsheets. From 2.0.0 to 2.11.0, checkRow sizes its target cell slice from the last cell in XML document order and then re-scatters every cell by its explicit column reference. GetCellValue reaches workSheetReader and checkRow, where targetList is too short for an earlier out-of-order cell. When a crafted row places a higher-column cell before a lower-column final cell and a non-streaming worksheet API reads the sheet, the earlier cell's column index exceeds the slice length derived from the final cell, allowing an attacker to cause an unrecovered panic and terminate the process. No fixed version is available as of this review.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS