CVE-2026-53875
WysokieCVSS 7.1Streszczenie
Picklescan przed wersją 1.0.3 zawiera lukę w funkcji scan_pytorch, która pozwala atakującym na obejście skanowania. Dzięki wykorzystaniu dynamicznego eval i triku __reduce__, mogą oni osadzić złośliwe numery magiczne w ładunkach PyTorch, które omijają detekcję picklescan.
Ocena ryzyka
Luka ta umożliwia wykonanie dowolnego kodu, co stanowi poważne zagrożenie dla bezpieczeństwa aplikacji korzystających z PyTorch. Atakujący mogą wykorzystać tę podatność do wprowadzenia złośliwego kodu w systemie.
Rekomendacja
Zaleca się aktualizację picklescan do wersji 1.0.3 lub nowszej, aby usunąć tę lukę. Dodatkowo, należy monitorować i weryfikować ładunki PyTorch przed ich załadowaniem.
Inne podatności w picklescan
Zobacz wszystkie- CVE-2025-71376Wysokie
Picklescan w wersjach przed 0.0.29 nie wykrywa złośliwych plików pickle, co pozwala atakującym na osadzenie niewykrytego kodu w tych plikach. Kod ten może wykonywać dowolne polecenia po załadowaniu przez ofiary.
- CVE-2025-71370Wysokie
Picklescan w wersjach przed 0.0.28 nie wykrywa złośliwych wywołań funkcji torch.jit.unsupported_tensor_ops.execWrapper osadzonych w plikach pickle. Atakujący mogą stworzyć złośliwe pliki pickle, które omijają detekcję picklescan i wykonują dowolny kod po załadowaniu przez pickle.load().
- CVE-2025-71365Wysokie
Picklescan w wersjach przed 0.0.33 nie wykrywa złośliwych plików pickle, które wywołują funkcję numpy.f2py.crackfortran.myeval za pomocą metody reduce. Atakujący mogą stworzyć złośliwe pliki pickle, które zawierają dowolny kod, omijają detekcję picklescan i wykonują zdalny kod po załadowaniu.
- CVE-2025-71341Wysokie
Picklescan w wersjach przed 0.0.29 nie wykrywa funkcji profile.Profile.runctx podczas analizy plików pickle, co pozwala atakującym na osadzenie niezauważonego złośliwego kodu. Zdalni atakujący mogą stworzyć złośliwe pliki pickle wykorzystujące profile.Profile.runctx w metodzie reduce, co prowadzi do zdalnego wykonania kodu po załadowaniu pliku pickle.
- CVE-2026-53872Wysokie
Picklescan w wersjach przed 0.0.35 zawiera podatność na niebezpieczną deserializację pickle, która pozwala nieautoryzowanym atakującym na odczyt dowolnych plików serwera poprzez łańczenie io.FileIO i urllib.request.urlopen.
- CVE-2026-56315Krytyczne
Picklescan przed wersją 1.0.4 nie blokuje przynajmniej siedmiu modułów standardowej biblioteki Pythona, co umożliwia zdalne wykonanie kodu. Atakujący mogą stworzyć złośliwe pliki pickle, które importują te nieblokowane moduły, omijając walidację bezpieczeństwa picklescan.
- CVE-2026-53874Krytyczne
Picklescan przed wersją 1.0.1 zawiera podatność na niebezpieczną deserializację, która pozwala nieautoryzowanym użytkownikom na wykonanie dowolnego kodu poprzez ukrywanie wywołań eval w obiektach wywoływalnych za pomocą getattr. Atakujący mogą osadzić złośliwy kod w plikach pickle, który unika wykrycia, ale wykonuje się po załadowaniu pickle z nieufnych źródeł.
- CVE-2026-53873Krytyczne
Picklescan w wersjach przed 1.0.4 zawiera niekompletną listę blokowania dla modułu profilu, co pozwala na wykonanie dowolnego kodu przez atakujących za pomocą funkcji exec(). Atakujący mogą stworzyć złośliwe pliki pickle, które wywołują profile.run(statement), co prowadzi do wykonania dowolnego kodu Pythona.
- CVE-2026-3490Krytyczne
Picklescan w wersjach przed 1.0.4 nie blokuje pkgutil.resolve_name, co pozwala atakującym na obejście całej listy blokad poprzez pośrednie wywołania REDUCE. Atakujący mogą wywołać dowolną zablokowaną funkcję, co prowadzi do zdalnego wykonania kodu.
- CVE-2025-71325Krytyczne
Picklescan przed wersją 0.0.27 zawiera błąd w logice analizy w funkcji _list_globals, który występuje podczas obsługi opcode'ów STACK_GLOBAL. Błąd ten pozwala złośliwym plikom pickle na ominięcie detekcji, co może prowadzić do nieoczekiwanych wyjątków.
Oryginalny opis (angielski, źródło NVD)
picklescan before 1.0.3 contains a scanning bypass vulnerability in the scan_pytorch function that allows attackers to embed malicious magic numbers via dynamic eval using the __reduce__ trick. Attackers can craft malicious PyTorch payloads that evade picklescan detection while remaining executable, enabling arbitrary code execution when loaded with torch.load().

