CVE-2026-118986
Niskie ryzyko· EPSS 5%Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 5 - wyżej niż 5% wszystkich znanych CVE
Streszczenie
CallBackery w wersjach przed 0.62.0 dla Perla umożliwia fałszowanie sesyjnych ciasteczek z powodu sekretu podpisującego generowanego za pomocą rand(). Sekret jest tworzony z dwóch wywołań wbudowanej funkcji rand(), która jest inicjowana 32-bitowym ziarnem, więc ma co najwyżej 2^32 możliwych wartości, a jedno podpisane ciasteczko wystarcza do przetestowania każdego kandydata offline.
Ocena ryzyka
Atakujący, który zdobędzie jedno sesyjne ciasteczko, może odzyskać sekret i podpisywać ciasteczka dla dowolnego użytkownika, w tym administratora. Prowadzi to do pełnego przejęcia kont i eskalacji uprawnień.
Rekomendacja
Zaktualizuj CallBackery do wersji 0.62.0 lub nowszej, która używa kryptograficznie bezpiecznego generatora losowego do tworzenia sekretu podpisującego.
Inne podatności w CallBackery
Zobacz wszystkie- CVE-2026-118987Niskie ryzyko· EPSS 5%
CallBackery w wersjach przed 0.62.0 dla Perla akceptuje sesyjne ciasteczka o dowolnym wieku wysłane w nagłówku X-Session-Cookie. Funkcja cookieConf() odrzuca ciasteczko starsze niż 300 sekund tylko wtedy, gdy przychodzi ono w parametrze zapytania xsc; to samo ciasteczko w nagłówku X-Session-Cookie jest akceptowane niezależnie od wieku.
- CVE-2026-13576Niskie ryzyko· EPSS 1%
CallBackery w wersjach przed 0.62.0 dla Perla przechowuje hasła użytkowników jako niesolone skróty HMAC-SHA1. Hasła są hashowane funkcją hmac_sha1_sum() z Mojo::Util bez klucza, bez soli i bez współczynnika pracy, więc identyczne hasła dają identyczne skróty, a odgadywanie jest szybkie.
- CVE-2026-118996Niskie ryzyko· EPSS 5%
CallBackery w wersjach przed 0.62.0 dla Perla wysyła użytkownikom ich własny skrót hasła oraz notatkę administracyjną przez getUserConfig. getUserConfig() zwraca cały wiersz cbuser, a getTableData() i getAllFieldValues() zwracają notatkę użytkownikom bez uprawnień administratora.
- CVE-2026-118995Niskie ryzyko· EPSS 25%
CallBackery w wersjach przed 0.62.0 dla Perla akceptuje nieoczekiwane wartości w polach formularzy sprawdzanych przez createRxValidator. Funkcja buduje /^${rx}$/ bez grupowania wzorca, więc alternatywa taka jak yes|no akceptuje wartości zaczynające się od yes lub kończące na no, a $ akceptuje wartość z końcowym znakiem nowej linii.
- CVE-2026-118994Niskie ryzyko· EPSS 11%
CallBackery w wersjach przed 0.62.0 dla Perla pozwala na wstrzyknięcie do logów przez znaki nowej linii w nazwie logowania. login() zapisuje nazwę logowania do logu aplikacji bez ucieczki znaków kontrolnych, a metoda RPC logowania nie wymaga uwierzytelnienia.
- CVE-2026-118993Niskie ryzyko· EPSS 5%
CallBackery w wersjach przed 0.62.0 dla Perla pozwala na atak odmowy usługi przez interpolację ścieżki żądania jako wyrażenia regularnego w CGI, FastCGI i PSGI. Hook before_dispatch usuwa PATH_INFO z końca URI podstawieniem, które interpoluje PATH_INFO bez cytowania, więc klient wybiera zarówno wzorzec, jak i dopasowywany ciąg.
- CVE-2026-118992Wysokie
CallBackery w wersjach przed 0.62.0 dla Perla pozwala na wykonanie poleceń systemowych przez polecenia powłoki sqlite3 w przywracanej kopii konfiguracji. restoreConfigBlob() przekazuje zrzut bazy do powłoki sqlite3, która wykonuje linie zaczynające się od kropki jako własne polecenia, więc .shell lub .system uruchamia polecenie systemowe, a .load ładuje kod natywny.
- CVE-2026-118991Niskie ryzyko· EPSS 1%
W CallBackery w wersjach przed 0.62.0 dla Perla kopie zapasowe konfiguracji są szyfrowane kluczem AES utworzonym przez dopełnienie hasła znakami "x" i przycięcie do 32 bajtów, bez soli i bez derywacji klucza. Pierwszy blok kopii zawiera 16-znakowe pole długości w formacie hex, więc odszyfrowanie jednego bloku potwierdza zgadywane hasło z pełną prędkością AES.
- CVE-2026-118990Niskie ryzyko· EPSS 5%
W CallBackery w wersjach przed 0.62.0 dla Perla podczas tworzenia kopii zapasowej konfiguracji pozostawiany jest w /tmp zrzut bazy danych konfiguracji z uprawnieniami do odczytu dla wszystkich. Funkcja getConfigBlob() zleca powłoce sqlite3 zapis zrzutu do /tmp/cbdump<pid> i nigdy go nie usuwa; plik dziedziczy umask procesu, a podłożony w tej przewidywalnej nazwie dowiązanie symboliczne jest podążane.
- CVE-2026-118988Niskie ryzyko· EPSS 15%
W CallBackery w wersjach przed 0.60.1 dla Perla nieuwierzytelnieni klienci mogą odczytać POD dowolnego pliku poprzez path traversal w trasie /doc. Trasa przekazuje żądaną nazwę do Pod::Simple::Search->find bez walidacji, a find dzieli nazwę po "::" i łączy części w ścieżkę pliku, więc nazwa taka jak "..::..::..::etc::motd" wychodzi poza @INC.
Oryginalny opis (angielski, źródło NVD)
CallBackery versions before 0.62.0 for Perl allow session cookie forgery via a signing secret generated with rand(). The secret that signs session cookies is built from two calls to the built-in rand(), which is seeded with 32 bits. The secret therefore has at most 2**32 possible values, and one signed cookie is enough to test each candidate offline. An attacker who obtains a single session cookie can recover the secret and sign cookies for any user, including an administrator.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

