Katalog CVE

CVE-2025-9906

WysokieCVSS 7.3
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.20%

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

Streszczenie

Metoda Keras Model.load_model może zostać wykorzystana do wykonania dowolnego kodu, nawet przy safe_mode=True. Spreparowany plik config.json w archiwum .keras może wywołać keras.config.enable_unsafe_deserialization() i wyłączyć tryb bezpieczny, po czym warstwa Lambda z kodem pickle wykonuje dowolny kod Pythona.

Ocena ryzyka

Wczytanie złośliwego modelu .keras może doprowadzić do wykonania dowolnego kodu w kontekście aplikacji ładującej model, grożąc kompromitacją systemu. Ryzyko dotyczy środowisk wczytujących niezaufane modele ML.

Rekomendacja

Nie wczytuj modeli .keras z niezaufanych źródeł i weryfikuj zawartość archiwum (config.json) przed wczytaniem. Zaktualizuj Keras do wersji zawierającej poprawkę.

Inne podatności w Keras

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

The Keras Model.load_model method can be exploited to achieve arbitrary code execution, even with safe_mode=True. One can create a specially crafted .keras model archive that, when loaded via Model.load_model, will trigger arbitrary code to be executed. This is achieved by crafting a special config.json (a file within the .keras archive) that will invoke keras.config.enable_unsafe_deserialization() to disable safe mode. Once safe mode is disable, one can use the Lambda layer feature of keras, which allows arbitrary Python code in the form of pickled code. Both can appear in the same archive. Simply the keras.config.enable_unsafe_deserialization() needs to appear first in the archive and the Lambda with arbitrary code needs to be second.

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