CVE-2026-22608
WysokieStreszczenie
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.
Ocena ryzyka
Organizacja używająca Fickling do skanowania plików pickle może zostać zaatakowana przez złośliwy plik, który zostanie uznany za bezpieczny, co prowadzi do zdalnego wykonania kodu w środowisku, gdzie plik jest przetwarzany.
Rekomendacja
Zaleca się natychmiastową aktualizację Fickling do wersji 0.1.7 lub nowszej. Dodatkowo, należy rozważyć użycie dodatkowych narzędzi bezpieczeństwa i ręczną weryfikację plików pickle, zwłaszcza pochodzących z niezaufanych źródeł.
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-22607Wysokie
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.
- 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.
Oryginalny opis (angielski, źródło NVD)
Fickling is a Python pickling decompiler and static analyzer. Prior to version 0.1.7, both ctypes and pydoc modules aren't explicitly blocked. Even other existing pickle scanning tools (like picklescan) do not block pydoc.locate. Chaining these two together can achieve RCE while the scanner still reports the file as LIKELY_SAFE. This issue has been patched in version 0.1.7.

