CVE-2026-70370
WysokieCVSS 8.8Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 46 - wyżej niż 46% wszystkich znanych CVE
Streszczenie
Podatność w Koha w skrypcie reports/catalogue_stats.pl, gdzie dynamiczne zapytanie SQL jest budowane przez interpolację kontrolowanych przez użytkownika parametrów Line i Column bezpośrednio w pozycjach identyfikatorów zapytania (SELECT DISTINCTROW, GROUP BY, ORDER BY) bez walidacji na białej liście.
Ocena ryzyka
Atakujący może manipulować zapytaniami SQL, co może prowadzić do nieautoryzowanego dostępu do danych lub naruszenia integralności bazy danych.
Rekomendacja
Należy natychmiast zaktualizować Koha do wersji zawierającej poprawkę oraz wdrożyć walidację parametrów wejściowych na białej liście.
Inne podatności w Koha
Zobacz wszystkie- CVE-2026-105107Wysokie
Koha jest podatna na wstrzyknięcie SQL w raporcie najczęściej wypożyczanych pozycji. Skrypt reports/cat_issues_top.pl wkleja kontrolowane przez użytkownika parametry Criteria, Filter i Limit bezpośrednio do dynamicznego SQL, a Criteria nie jest weryfikowane względem listy dozwolonych wartości. Uwierzytelniony pracownik z uprawnieniem do modułu raportów może wstrzyknąć dowolny SQL i odczytać dowolne tabele dostępne dla użytkownika bazy Koha, w tym dane wypożyczających, klucze API i sesje.
- CVE-2026-105106Wysokie
Koha jest podatna na wstrzyknięcie poleceń systemu operacyjnego w ścieżce usuwania zadań w Task Scheduler. Parametr jobid przekazywany do C4::Scheduler::remove_at_job nie jest walidowany, a Schedule::At::remove podstawia go do polecenia atrm bez cytowania i wykonuje przez system() z jednym argumentem, co uruchamia powłokę. Uwierzytelniony pracownik z uprawnieniem tools => schedule_tasks może wykonać dowolne polecenia systemowe jako użytkownik aplikacji Koha.
- CVE-2026-19780Wysokie
Podatność typu Remote Code Execution w Koha wynika z braku odpowiedniej walidacji ciągu znaków dostarczonego przez użytkownika przed przekazaniem go do funkcji eval w usłudze sieciowej nasłuchującej domyślnie na porcie TCP 8081. Uwierzytelniony atakujący może wykorzystać tę podatność do wykonania dowolnego kodu w kontekście konta usługi.
- CVE-2026-41921Średnie
Koha przed wersjami 26.05.02, 25.11.07 i 25.05.13 zawiera podatność na przechowywany XSS w obsłudze sugestii zakupu, która pozwala uwierzytelnionym pracownikom na wstrzykiwanie złośliwych skryptów poprzez przesłanie niesanityzowanych danych w operacji zapisu sugestii. Atakujący mogą dostarczyć spreparowane treści HTML lub skryptów w polach takich jak tytuł, autor, ISBN, kod wydawcy, miejsce, tytuł kolekcji, typ pozycji i notatka, które są przechowywane bez sanityzacji i później renderowane w szablonie listy sugestii, powodując wykonanie wstrzykniętych skryptów w przeglądarce każdego pracownika przeglądającego sugestie.
- CVE-2026-72610Średnie
Podatność na przechowywany SQL injection w Koha do wersji 24.11.17, 25.05.12, 25.11.06 i 26.05.01. Uwierzytelniony personel z uprawnieniem borrowers => edit_borrowers może spowodować czasową odmowę usługi, przechowując ładunek SQL w polu lang patrona, który jest wykonywany podczas drukowania slipu.
- CVE-2026-72609Wysokie
Podatność na wstrzykiwanie SQL w Koha (do wersji 24.11.17, 25.05.12, 25.11.06, 26.05.01) pozwala uwierzytelnionemu personelowi z uprawnieniem acquisition => order_receive na odczyt dowolnych danych z bazy przez parametr orderby w acqui/parcels.pl. Parametr jest przekazywany do C4::Acquisition::GetInvoices, gdzie kierunek sortowania jest konkatenowany do klauzuli ORDER BY bez walidacji. Atak jest ślepy (czasowy) i umożliwia wyodrębnienie danych osobowych czytelników, hashy haseł personelu i sekretów 2FA.
- CVE-2026-72608Średnie
Podatność na przechowywany SQL injection w Koha do wersji 24.11.17, 25.05.12, 25.11.06 i 26.05.01. Uwierzytelniony personel z uprawnieniem tools => label_creator może wykonać dowolny SQL przez pole image_name w układzie karty patrona, co pozwala na odczyt całej bazy danych, w tym danych osobowych i skrótów haseł.
- CVE-2026-72607Wysokie
Podatność na trwałe wstrzykiwanie SQL w Koha (do wersji 24.11.17, 25.05.12, 25.11.06, 26.05.01) pozwala uwierzytelnionemu personelowi z uprawnieniem tools => items_batchmod na odczyt dowolnych danych z bazy przez przechowywanie ładunku SQL w wartości agefield reguły automatycznej modyfikacji przedmiotów. Wartość jest przechowywana bez zmian i interpolowana do zapytania SQL w C4::Items::ToggleNewStatus podczas wykonywania zaplanowanego zadania cron. Atak umożliwia odczyt całej bazy Koha, w tym danych osobowych czytelników i hashy haseł personelu.
- CVE-2026-71288Wysokie
Kreator raportów w systemie Koha (reports/guided_reports.pl) odczytuje parametry CGI i bezpośrednio konkatenuje je do klauzuli SQL ORDER BY bez żadnej listy dozwolonych wartości ani walidacji. Ponieważ kolumny ORDER BY nie mogą być wiązane przez przygotowane zapytania, wymagana jest jawna lista dozwolonych, która nie istnieje.
- CVE-2026-70373Wysokie
Raport statystyk obiegu w Koha (reports/issues_stats.pl) buduje zapytanie obliczeniowe w podprogramie calculate, łącząc kilka kontrolowanych przez użytkownika parametrów żądania bezpośrednio w ciąg SQL. Parametry PeriodTypeSel, PeriodDaySel i PeriodMonthSel są interpolowane surowo do fragmentów równości w pojedynczych cudzysłowach i porównań funkcji, a sloty Filter oraz identyfikatory Line i Column są również interpolowane bez białej listy i bez wiązania parametrów.
Oryginalny opis (angielski, źródło NVD)
Koha's reports/catalogue_stats.pl builds dynamic SQL in sub calculate by interpolating the user-controlled Line and Column request parameters directly into identifier positions of the query (SELECT DISTINCTROW, GROUP BY, ORDER BY) with no whitelist validation.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

