CVE-2026-106441
WysokieCVSS 7.8Streszczenie
Hydra przed wersjami 1.3.6 i 1.4.0.dev9 przekazuje konfigurację logowania Pythona do logging.config.dictConfig() bez stosowania polityki celów Hydra do wartości klas handlerów oraz fabryk formatterów, filtrów, handlerów, kolejek i listenerów. Atakujący kontrolujący konfigurację logowania Hydra może wybrać importowalną klasę lub fabrykę i wywołać ją z uprawnieniami aplikacji.
Ocena ryzyka
Atakujący może wykorzystać konfigurację logowania do wykonania kodu z uprawnieniami aplikacji, co może prowadzić do przejęcia aplikacji lub systemu.
Rekomendacja
Zaktualizuj Hydra do wersji 1.3.6 lub 1.4.0.dev9 (lub nowszej) i nie akceptuj niezaufanych konfiguracji logowania.
Inne podatności w Hydra
Zobacz wszystkie- CVE-2026-106442Wysokie
Hydra w wersjach od 1.3.4 do 1.3.6 oraz 1.4.0.dev9 ma niekompletną czarną listę celów dla instantiate(), która nie sprawdza w pełni efektywnego wywoływanego obiektu. Obejścia takie jak timeit.timeit, deserializacja pickle.loads, aliasy, pomocnicy zwracający callable, ogólne dispatch i odroczone wywołania mogą ukryć lub opóźnić efektywny cel i obejść autoryzację opartą na nazwie.
- CVE-2026-106440Wysokie
Hydra od wersji 1.2.0 do 1.3.0 i 1.4.0.dev10 w pakiecie hydra-optuna-sweeper akceptuje sterowaną konfiguracją ścieżkę kropkową w hydra.sweeper.custom_search_space, rozwiązuje ją za pomocą hydra.utils.get_method() i później wywołuje zwrócony callable w procesie kontrolera Hydra. Ponieważ get_method() nie stosuje polityki wykonawczej używanej przez instantiate(), atakujący kontrolujący konfigurację Optuna lub nadpisania wiersza poleceń może wybrać importowalny kod Pythona do wykonania z uprawnieniami aplikacji.
- CVE-2026-106439Wysokie
Hydra od wersji 1.3.4 do 1.3.7 i 1.4.0.dev10 przechowuje listy blokowane celów instantiate i powiązane kolekcje polityki wykonawczej w mutowalnym stanie na poziomie modułu. Atakujący kontrolujący wiele wpisów docelowych może rozwiązać hydra._internal.target_policy.UNCONTROLLED_EXECUTION_TARGETS.discard przez instantiate(), usunąć zabroniony cel, a następnie wywołać ten cel, ponieważ węzły rodzeństwa są przetwarzane w kolejności wstawiania względem tej samej zmodyfikowanej polityki.
- CVE-2026-68508Wysokie
Hydra przed wersją 1.3.4 ma podatność umożliwiającą wykonanie dowolnego kodu. Funkcja hydra.utils.instantiate() rozwiązuje i wywołuje obiekty Pythona wybrane przez konfigurację, co pozwala atakującemu na wywołanie niebezpiecznych funkcji.
- CVE-2026-56766Wysokie
Podatność w Hydra do wersji 9.7 (załatana w commicie 9cc84c2) powoduje przepełnienie bufora stosu w modułach NTLM dla SMTP, POP3, IMAP, NNTP, HTTP, HTTP-Proxy i HTTP-Proxy-Urlenum podczas przetwarzania złośliwych wyzwań NTLM Type-2. Zdalny serwer może wysłać spreparowane wyzwanie z nadmiernie długim ciągiem domeny, powodując przepełnienie 500-bajtowego bufora stosu o 18 do 330 bajtów, co umożliwia zdalne wykonanie kodu na systemach bez ochrony stosu.
Oryginalny opis (angielski, źródło NVD)
Hydra is a framework for elegantly configuring complex applications. Prior to 1.3.6 and 1.4.0.dev9, Hydra passes Python logging configuration to logging.config.dictConfig() without applying Hydra's target policy to handler class values or formatter, filter, handler, queue, and listener factories. An attacker who controls Hydra logging configuration can therefore select an importable class or factory and cause it to be invoked with the application's privileges, even in versions where instantiate() is protected because the logging path does not use instantiate(). This issue is fixed in versions 1.3.6 and 1.4.0.dev9.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

