CVE-2026-49489
WysokieCVSS 8.5Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 18 - wyżej niż 18% wszystkich znanych CVE
Streszczenie
OpenCATS do wersji 0.9.7.4 zawiera podatność na wstrzykiwanie SQL w parametrze sortDirection komponentu DataGrid. Uwierzytelnieni użytkownicy mogą wstrzykiwać złośliwy kod SQL przez parametr sortDirection w pliku ajax/getDataGridPager.php, przeprowadzając ataki typu time-based blind injection i odczytując wrażliwe dane z bazy.
Ocena ryzyka
Atakujący może wyodrębnić całą zawartość bazy danych, w tym dane uwierzytelniające i poufne informacje, co prowadzi do naruszenia poufności i integralności systemu.
Rekomendacja
Należy natychmiast zaktualizować OpenCATS do najnowszej dostępnej wersji, która usuwa tę podatność, oraz zastosować parametryzację zapytań SQL w kodzie.
Inne podatności w OpenCATS
Zobacz wszystkie- CVE-2026-112787Średnie
OpenCATS w wersjach przed 0.10.0 zawiera podatność braku autoryzacji w ReportsUI::handleRequest(). Uwierzytelnieni użytkownicy mogą przeglądać raporty demograficzne EEO bez uprawnienia canSeeEEOInfo, wywołując akcje customizeEEOReport i generateEEOReportPreview w celu uzyskania zagregowanych statystyk dotyczących pochodzenia etnicznego, statusu weterana, płci i niepełnosprawności.
- CVE-2026-112786Średnie
OpenCATS w wersjach przed 0.10.0 zawiera podatność braku autoryzacji w ImportUI::handleRequest(). Użytkownicy z niskimi uprawnieniami (poziom READ) mogą wycofać import danych, żądając akcji revert z importID, co powoduje masowe usunięcie zaimportowanych rekordów kandydatów, firm i kontaktów.
- CVE-2026-112785Średnie
OpenCATS w wersjach przed 0.10.0 zawiera podatność braku autoryzacji, która pozwala użytkownikom z poziomem READ tworzyć, zmieniać nazwy, usuwać i wypełniać zapisane listy poprzez endpointy AJAX. Uwierzytelnieni atakujący mogą wysyłać żądania do newList.php, editListName.php, deleteList.php lub addToLists.php z dowolnym savedListID, aby zmieniać lub usuwać dowolne zapisane listy w całym serwisie.
- CVE-2026-112784Średnie
OpenCATS w wersjach przed 0.10.0 zawiera podatność braku autoryzacji w ajax/testEmailSettings.php, która pozwala każdemu uwierzytelnionemu użytkownikowi wysyłać pocztę przez skonfigurowany relay SMTP. Użytkownicy z poziomem READ mogą podać parametry testEmailAddress i fromAddress, aby wysłać stałą wiadomość testową do dowolnego odbiorcy ze sfałszowanym adresem nadawcy.
- CVE-2026-54454Krytyczne
OpenCATS przed wersją 0.10.0 w module importu (modules/import/ImportUI.php) może zachować oryginalną nazwę przesłanego pliku dla jednego typu importu i umieścić plik w publicznie dostępnym katalogu tymczasowym. Uwierzytelniony użytkownik z uprawnieniami do importu może wybrać tę ścieżkę i przesłać plik PHP, który pozostaje pod kontrolowaną przez atakującego nazwą wykonywalną, a błąd importu może pozostawić plik na dysku. Jeśli katalog tymczasowy jest serwowany z włączonym wykonywaniem PHP, żądanie tego pliku może wykonać dowolny kod PHP z uprawnieniami procesu serwera WWW. Problem naprawiono w wersji 0.10.0.
- CVE-2021-47936Krytyczne
OpenCATS 0.9.4 zawiera podatność na zdalne wykonanie kodu, która pozwala nieuwierzytelnionym atakującym na wykonanie dowolnych poleceń poprzez przesyłanie złośliwych plików PHP udających załączniki CV.
- CVE-2026-27760Wysokie
OpenCATS przed commit 3002a29 zawiera podatność na wstrzykiwanie kodu PHP w punkcie końcowym AJAX instalatora, umożliwiającą nieuwierzytelnionym atakującym wykonanie dowolnego kodu poprzez wstrzyknięcie instrukcji PHP do parametru akcji databaseConnectivity. Atakujący mogą wyłamać się z kontekstu stringa define() w config.php za pomocą pojedynczego cudzysłowu i separatora instrukcji, aby wstrzyknąć złośliwy kod PHP, który utrzymuje się i wykonuje przy każdym kolejnym ładowaniu strony, gdy kreator instalacji pozostaje nieukończony.
- CVE-2026-54455Wysokie
OpenCATS przed wersją 0.10.0 zawiera lukę SQL injection w filtrowaniu dat DataGrid aktywności w `home:CallsDataGrid` i `activity:ActivityDataGrid`, gdzie parametry `period`, `startDate` i `endDate` są używane bez wystarczającej walidacji lub escapowania. Uwierzytelniony użytkownik z dostępem do dotkniętych endpointów DataGrid może zmienić zamierzone zapytanie, aby uzyskać dostęp do poufnych danych bazy, w tym kont użytkowników, rekordów kandydatów, danych kontaktowych, informacji o firmach, zleceń pracy i historii aktywności. Wymagane jest ważne logowanie do OpenCATS. Luka jest naprawiona w wersji 0.10.0.
- CVE-2026-54453Wysokie
W OpenCATS przed wersją 0.10.0 funkcja konfiguracji licencji profesjonalnej w SettingsUI przyjmuje klucz licencji kontrolowany przez administratora, który jest wstawiany do instrukcji PHP define() w config.php bez bezpiecznego escapowania. Poprzez spreparowane dane wejściowe można zmienić składnię PHP pliku i uzyskać trwałe wykonanie dowolnego kodu PHP z uprawnieniami procesu serwera WWW.
- CVE-2026-115513Wysokie
OpenCATS w wersjach przed 0.12.0 zawiera podatność typu stored XSS, która pozwala zalogowanemu użytkownikowi o niskich uprawnieniach wstrzyknąć ładunek HTML/JavaScript poprzez pole nazwy/tytułu Kandydata, Firmy, Kontaktu, Zlecenia pracy lub Listy. Wartość jest przechowywana bez sanityzacji i później renderowana bez escapowania w panelu nawigacji 'Recent' (MRU) wyświetlanym na niemal każdej stronie przez funkcję getFormatted() w lib/MRU.php. Atakujący może wykonać dowolny JavaScript w sesji innego użytkownika, w tym administratora witryny, co umożliwia kradzież sesji/cookies i eskalację do pełnej kontroli administracyjnej.
Oryginalny opis (angielski, źródło NVD)
OpenCATS through 0.9.7.4 contains a sql injection vulnerability in the sortDirection parameter of the DataGrid component that allows authenticated users to extract database contents. Attackers can inject malicious SQL via the sortDirection parameter in ajax/getDataGridPager.php to perform time-based blind injection attacks and read sensitive data.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

