CVE-2026-22607
WysokieStreszczenie
Fickling w wersjach do 0.1.6 nie traktuje modułu cProfile Pythona jako niebezpiecznego. Złośliwy pickle wykorzystujący cProfile.run() jest klasyfikowany jako PODEJRZANY zamiast JAWNIE ZŁOŚLIWY, co może prowadzić do wykonania kodu atakującego.
Ocena ryzyka
Organizacje używające Fickling jako bramki bezpieczeństwa przed deserializacją pickle mogą zostać oszukane i wykonać złośliwy kod, co prowadzi do przejęcia systemu lub naruszenia danych.
Rekomendacja
Zaktualizuj Fickling do wersji 0.1.7 lub nowszej. Dodatkowo rozważ użycie dodatkowych mechanizmów bezpieczeństwa, takich jak sandboxing, przy deserializacji pickle.
Inne podatności w Fickling
Zobacz wszystkie- CVE-2026-22612Wysokie
Fickling, narzędzie do dekompilacji i analizy statycznej plików pickle w Pythonie, przed wersją 0.1.7 zawiera podatność umożliwiającą obejście wykrywania złośliwego kodu. Problem wynika z braku analizy obiektów typu 'builtins' i został naprawiony w wersji 0.1.7.
- CVE-2026-22609Wysokie
Fickling to dekompilator i statyczny analizator plików pickle w Pythonie. Przed wersją 0.1.7 metoda unsafe_imports() nie wykrywała kilku wysokiego ryzyka modułów Pythona, które mogą być użyte do wykonania dowolnego kodu. Złośliwe pliki pickle importujące te moduły nie były oznaczane jako niebezpieczne, co pozwalało atakującym ominąć główne statyczne kontrole bezpieczeństwa Ficklinga.
- CVE-2026-22608Wysokie
Fickling to dekompilator i statyczny analizator plików pickle w Pythonie. Przed wersją 0.1.7 nie blokował on jawnie modułów ctypes i pydoc, co w połączeniu z funkcją pydoc.locate umożliwia zdalne wykonanie kodu (RCE), podczas gdy skaner nadal raportuje plik jako LIKELY_SAFE. Problem został naprawiony w wersji 0.1.7.
- CVE-2026-22606Wysokie
Fickling w wersjach do 0.1.6 nie traktuje modułu runpy Pythona jako niebezpiecznego. Złośliwy pickle wykorzystujący runpy.run_path() lub runpy.run_module() jest klasyfikowany jako PODEJRZANY zamiast JAWNIE ZŁOŚLIWY. Może to prowadzić do wykonania kodu atakującego, jeśli użytkownik polega na wynikach Ficklinga przy deserializacji.
- CVE-2026-14535Wysokie
W bibliotece fickling do wersji 0.1.11 włącznie, analiza UnsafeImportsML rejestruje skrócony kod każdego importu w współdzielonym zbiorze, co powoduje, że następująca analiza MLAllowlist pomija wszystkie sprawdzenia, uznając je za już zgłoszone. W rezultacie MLAllowlist staje się martwym kodem, a importy modułów spoza listy dozwolonych (np. torch, numpy) mogą być pominięte, prowadząc do fałszywie pozytywnego wyniku LIKELY_SAFE.
- CVE-2026-14534Wysokie
Podatność w bibliotece fickling do wersji 0.1.10 włącznie polega na braku modułów standardowej biblioteki Pythona (_posixsubprocess, site, atexit) na liście UNSAFE_IMPORTS. Powoduje to, że funkcja check_safety() błędnie klasyfikuje złośliwe ładunki pickle jako LIKELY_SAFE, co umożliwia ich deserializację i wykonanie niebezpiecznych funkcji, takich jak fork_exec, execsitecustomize czy _run_exitfuncs.
- CVE-2025-67748Wysokie
Fickling to dekompilator i statyczny analizator pickle w Pythonie. Wersje przed 0.1.6 miały obejście spowodowane brakiem `pty` na liście blokowanych niebezpiecznych importów modułów. To prowadziło do niebezpiecznych pickle opartych na `pty.spawn()` błędnie oznaczanych jako `LIKELY_SAFE`, a naprawiono to w wersji 0.1.6. Wpływało to na każdego użytkownika lub system, który używał Fickling do weryfikacji plików pickle pod kątem problemów bezpieczeństwa.
- CVE-2025-67747Wysokie
Fickling to dekompilator i statyczny analizator pickle w Pythonie. Wersje przed 0.1.6 nie mają `marshal` i `types` na liście blokowanych niebezpiecznych importów modułów. Fickling zaczął blokować oba moduły, aby rozwiązać ten problem. Pozwala to atakującemu na stworzenie złośliwego pliku pickle, który może ominąć fickling, ponieważ brakuje detekcji dla `types.FunctionType` i `marshal.loads`. Użytkownik, który deserializuje taki plik, wierząc, że jest bezpieczny, przypadkowo wykona dowolny kod na swoim systemie. Wpływa to na każdego użytkownika lub system, który używa Fickling do weryfikacji plików pickle pod kątem problemów bezpieczeństwa. Problem został naprawiony w wersji 0.1.6.
Oryginalny opis (angielski, źródło NVD)
Fickling is a Python pickling decompiler and static analyzer. Fickling versions up to and including 0.1.6 do not treat Python's cProfile module as unsafe. Because of this, a malicious pickle that uses cProfile.run() is classified as SUSPICIOUS instead of OVERTLY_MALICIOUS. If a user relies on Fickling's output to decide whether a pickle is safe to deserialize, this misclassification can lead them to execute attacker-controlled code on their system. This affects any workflow or product that uses Fickling as a security gate for pickle deserialization. This issue has been patched in version 0.1.7.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

