CVE-2026-87910
ŚrednieCVSS 5.7Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 42 - wyżej niż 42% wszystkich znanych CVE
Streszczenie
W module tarfile języka Python, gdy rozpakowywany jest link w systemie, który nie obsługuje linków, następuje fallback do rozpakowania elementu z archiwum. W takim przypadku funkcja filtra jest uruchamiana dwukrotnie, a dla jednego z wywołań wartość zwracana jest ignorowana, co może prowadzić do nieprawidłowego rozpakowania elementu.
Ocena ryzyka
Może dojść do rozpakowania niechcianych lub niebezpiecznych elementów archiwum, co potencjalnie prowadzi do nadpisania plików lub innych skutków naruszenia bezpieczeństwa.
Rekomendacja
Zaktualizuj Pythona do wersji zawierającej poprawkę, w której element jest pomijany, jeśli którekolwiek z wywołań funkcji filtra zwróci None.
Inne podatności w Python tarfile
Zobacz wszystkie- CVE-2026-114583Średnie
Filtr tarfile.tar_filter można obejść za pomocą spreparowanych wpisów linków, w tym dowiązań symbolicznych o pustych lub przypominających katalogi nazwach, aby przekierować późniejsze elementy archiwum poza zamierzony katalog rozpakowania. Złośliwe archiwum tar może spowodować, że tarfile.extractall() z filter="tar" zapisze pliki poza katalogiem docelowym, z uprawnieniami procesu rozpakowującego.
- CVE-2026-19672Średnie
Moduł tarfile w Pythonie ma podatność w filtrach ekstrakcji danych, która pozwala na tworzenie katalogów poza docelowym katalogiem dla członków archiwum, których nazwa wychodzi poza katalog docelowy i do niego wraca (np. ../evil/../dest/sub/file). Problem dotyczy tylko platform POSIX i tworzy tylko puste katalogi poza docelowym.
- CVE-2026-11940Wysokie
Funkcja tarfile.extractall() z filtrem 'data' lub 'tar' może zostać ominięta przez spreparowane archiwum, w którym dowiązanie twarde odwołuje się do dowiązania symbolicznego przechowywanego głębiej niż samo dowiązanie twarde. Pozwala to na utworzenie dowiązania symbolicznego wskazującego poza katalog docelowy, umożliwiając odczyt lub zapis plików poza nim. Jest to niekompletna poprawka CVE-2025-4330.
- CVE-2025-8194Wysokie
W module tarfile języka Python występuje wada w API ekstrakcji i wyliczania wpisów TarFile. Archiwa tar z ujemnymi offsetami powodują nieskończoną pętlę i zakleszczenie podczas parsowania złośliwych archiwów.
- CVE-2025-4330Wysokie
Podatność w module tarfile języka Python umożliwia pominięcie filtra ekstrakcji, co pozwala dowiązaniom symbolicznym wskazywać poza katalog docelowy oraz modyfikować metadane plików. Dotyczy to użycia TarFile.extractall() lub TarFile.extract() z parametrem filter='data' lub 'tar'.
Oryginalny opis (angielski, źródło NVD)
When tarfile extracts a link on a system that doesn't support links, it falls back to extracting a member from the archive. In this case, the filter function is run twice: once for the extracted member, and once with name set to the location of the link. For one of the calls, the return value was ignored. Instead, the member should be skipped if either call returns None.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

