Podatności pypdf
65 znanych podatności CVE w pypdf, przetłumaczonych i ocenionych.
- CVE-2026-119209Średnie
pypdf przed wersją 6.21.3 może zużywać nadmierną pamięć podczas otwierania spreparowanego pliku PDF zawierającego strumienie cross-reference deklarujące bardzo duże liczby wpisów. Wysoce kompresowalne strumienie i łańcuchy /Prev mogą zwielokrotnić liczbę parsowanych wpisów, a ujemne wartości /Index omijają istniejące ograniczenie.
- CVE-2026-119208Średnie
pypdf przed wersją 6.21.3 może zużywać nadmierny czas i pamięć, gdy aplikacja odczytuje liczbę stron spreparowanego zaszyfrowanego pliku PDF, którego drzewo stron deklaruje sfałszowaną wartość /Count. Nawet po odszyfrowaniu liczba stron jest brana z niezweryfikowanej deklaracji zamiast z przejścia drzewa stron.
- CVE-2026-119207Średnie
pypdf przed wersją 6.21.3 może zużywać nadmierną pamięć, gdy tryb strict ładuje spreparowany nieprawidłowy słownik PDF. Zagnieżdżone błędy parsowania dodają powtarzający się tekst wyjątków do nowych błędów, przez co mały złośliwy słownik może rozrosnąć się do bardzo dużych komunikatów.
- CVE-2026-119206Średnie
pypdf przed wersją 6.21.3 może potrzebować nadmiernego czasu na pobranie etykiet stron ze spreparowanego pliku PDF zawierającego płaskie drzewo numerów etykiet z wieloma zakresami. Właściwość page_labels przetwarza każdą stronę niezależnie i wielokrotnie skanuje tę samą tablicę /Nums od początku.
- CVE-2026-119205Średnie
pypdf przed wersją 6.21.4 może wejść w nieskończoną pętlę podczas klonowania lub duplikowania spreparowanego cyklicznego DictionaryObject. Przejście klonowania sprawdzało wygenerowane referencje docelowe zamiast oryginalnych referencji źródłowych, co pozwalało niektórym cyklom źródłowym ominąć kontrolę odwiedzonych obiektów.
- CVE-2026-119204Średnie
pypdf przed wersją 6.21.4 może zużywać nadmierną pamięć podczas parsowania spreparowanego drzewa stron PDF zawierającego wiele współdzielonych zasobów. Spłaszczanie drzewa stron kopiuje wpisy słownika stron i dziedziczonych zasobów bez ogólnego limitu wpisów, co powoduje nieproporcjonalne alokacje.
- CVE-2026-119203Średnie
Biblioteka pypdf przed wersją 6.21.4 może wejść w nieskończoną pętlę podczas otwierania spreparowanego, niekompletnego pliku PDF, którego tablica referencji krzyżowych sięga końca pliku bez sekcji trailer. Wyszukiwanie trailera może wielokrotnie przewijać do tej samej pozycji strumienia zamiast zakończyć się, blokując wątek przetwarzający.
- CVE-2026-115585Wysokie
W bibliotece pypdf przed wersją 6.21.2 niekompletne rozwiązanie problemu powtarzających się błędnych wpisów w tablicy referencji krzyżowych (GHSA-55h5-xmcq-c37v) mogło nadal powodować pełne przeładowanie strumienia PDF przy każdej próbie odzyskiwania, nawet gdy dostępny był cache odzyskiwania, co prowadziło do długiego czasu działania przy spreparowanych strumieniach referencji krzyżowych. Problem naprawiono w wersji 6.21.2.
- CVE-2026-115580Wysokie
W bibliotece pypdf przed wersją 6.21.2 atakujący może spreparować plik PDF ze standardową tablicą referencji krzyżowych, której zadeklarowana liczba wpisów przekracza to, co plik może zawierać, powodując nadmierne przetwarzanie i długi czas działania przy otwieraniu pliku. Problem naprawiono w wersji 6.21.2.
- CVE-2026-115572Wysokie
Biblioteka pypdf przed wersją 6.21.2 jest podatna na atak, w którym spreparowany plik PDF wielokrotnie odwołuje się do tego samego nieistniejącego obiektu pośredniego. Powoduje to powtarzające się pełne odzyskiwanie pliku i długi czas działania przy dostępie do takich elementów jak strony. Problem naprawiono w wersji 6.21.2.
- CVE-2026-113795Średnie
pypdf to darmowa biblioteka PDF w czystym Pythonie. Przed wersją 6.20.0 dostęp do spreparowanego strumienia PDF z dużą liczbą filtrów lub wieloma filtrami przekazującymi duże ilości danych może powodować duże zużycie pamięci. Problem naprawiono w wersji 6.20.0.
- CVE-2026-113794Średnie
pypdf to darmowa biblioteka PDF w czystym Pythonie. Przed wersją 6.20.0 atakujący może spreparować niekompletny plik PDF kończący się wewnątrz standardowej tabeli odwołań, powodując nieprawidłową obsługę nieoczekiwanego końca pliku i wejście w nieskończoną pętlę. Problem naprawiono w wersji 6.20.0.
- CVE-2026-113793Średnie
Biblioteka pypdf przed wersją 6.20.1 zawiera podatność polegającą na możliwości wejścia w nieskończoną pętlę podczas usuwania obiektu z przygotowanego cyklicznego drzewa PDF, np. elementu konspektu. Pętla blokuje bieżący proces.
- CVE-2026-113792Średnie
Biblioteka pypdf przed wersją 6.20.1 pozwala na wejście w nieskończoną pętlę przy wywołaniu PdfWriter.find_outline_item na spreparowanym pliku PDF z cykliczną hierarchią konspektu. Pętla blokuje bieżący proces.
- CVE-2026-113791Średnie
pypdf to darmowa biblioteka PDF w czystym Pythonie. Przed wersją 6.21.0 atakujący może spreparować plik PDF zawierający strumień treści z wieloma małymi operacjami, powodując zużycie dużej ilości pamięci podczas parsowania. Problem naprawiono w wersji 6.21.0.
- CVE-2026-113790Średnie
pypdf to darmowa biblioteka PDF w czystym Pythonie. Przed wersją 6.21.0 atakujący może spreparować plik PDF zawierający tablice lub słowniki z wieloma elementami, powodując zużycie dużej ilości pamięci podczas parsowania. Problem naprawiono w wersji 6.21.0.
- CVE-2026-113789Niskie
pypdf to darmowa biblioteka PDF w czystym Pythonie. Przed wersją 6.21.0 atakujący może spreparować plik PDF, który powoduje duże zużycie pamięci lub długi czas działania, gdy aplikacja pobiera pola formularza dokumentu. Problem naprawiono w wersji 6.21.0.
- CVE-2026-113786Niskie
W bibliotece pypdf przed wersją 6.21.1 atakujący może spreparować plik PDF z danymi obrazu oznaczonymi filtrem /DCTDecode, co powoduje, że Pillow wybiera i uruchamia niezamierzony parser obrazów podczas ładowania obrazu. Środowiska bez opcjonalnej zależności Pillow nie są podatne. Problem naprawiono w wersji 6.21.1.
- CVE-2026-103000Wysokie
pypdf to darmowa biblioteka PDF w czystym Pythonie. Przed wersją 6.19.0 spreparowany plik PDF może zawierać nietypowo duże wartości etykiet stron alfabetycznych, powodując generowanie ciągów znaków przekraczających rozsądną długość etykiety strony w pypdf/_page_labels.py, gdy aplikacja pobiera etykiety stron dokumentu, zużywając nadmierną pamięć i potencjalnie czyniąc aplikację niedostępną. Problem został naprawiony w wersji 6.19.0.
- CVE-2026-102999Wysokie
pypdf to darmowa biblioteka PDF w czystym Pythonie. Przed wersją 6.19.0 spreparowany plik PDF zawierający wiele osadzonych plików może powodować, że słownikowe API załączników w pypdf/_doc_common.py ponownie przetwarza pełną listę załączników przy każdym wyszukiwaniu zawartości, generując powtarzalną pracę i długie czasy działania, gdy aplikacja uzyskuje dostęp do mapowania osadzonych plików. Problem został naprawiony w wersji 6.19.0.
- CVE-2026-102998Wysokie
pypdf to darmowa biblioteka PDF w czystym Pythonie. Przed wersją 6.19.0 spreparowany plik PDF z wartościami pól formularza może powodować, że generowanie strumienia wyglądu w pypdf/generic/_appearance_stream.py powtarza niezmienną pracę związaną z danymi wyboru w pętli, gdy aplikacja aktualizuje pola z włączonym spłaszczaniem, co skutkuje nadmiernymi czasami działania i niedostępnością aplikacji. Problem został naprawiony w wersji 6.19.0.
- CVE-2026-102997Wysokie
pypdf to darmowa biblioteka PDF w czystym Pythonie. Przed wersją 6.18.1 spreparowany plik PDF zawierający częściowo uszkodzony strumień /FlateDecode z danymi wypełniającymi może wymusić na pypdf/filters.py nieefektywną dekompresję bajt po bajcie, podczas gdy wcześniejszy licznik odzyskiwania nie przesuwa się dla bajtów, które pomyślnie się zdekodowały, powodując długie czasy działania i niedostępność aplikacji. Jest to problem resztkowy po poprawce odzyskiwania uszkodzonego FlateDecode. Problem został naprawiony w wersji 6.18.1.
- CVE-2026-102996Wysokie
pypdf to darmowa biblioteka PDF w czystym Pythonie. Przed wersją 6.18.1 spreparowany plik PDF może zawierać prostą czcionkę TrueType lub Type1 z nietypowo dużą tablicą /Widths, powodując, że pypdf/_font.py Font._collect_tt_t1_character_widths przetwarza wpisy poza 256 kodami znaków istotnymi dla prostej czcionki i zużywa nadmierną pamięć podczas operacji takich jak ekstrakcja tekstu. Problem został naprawiony w wersji 6.18.1.
- CVE-2026-102995Wysokie
pypdf to darmowa biblioteka PDF w czystym Pythonie. Przed wersją 6.18.1, specjalnie spreparowany plik PDF może umieścić niezwykle duże tokeny w mapowaniu /ToUnicode czcionki, powodując, że funkcja parse_bfchar w pypdf/_cmap.py dekoduje i przechowuje zbyt duże wartości podczas operacji takich jak ekstrakcja tekstu, co prowadzi do nadmiernego zużycia pamięci. Jest to drugie uzupełnienie wcześniejszych poprawek dotyczących zużycia zasobów /ToUnicode i ogranicza się do pozostałej ścieżki długości tokenu. Problem został naprawiony w wersji 6.18.1.
- CVE-2026-102994Wysokie
pypdf to darmowa i otwartoźródłowa biblioteka PDF w czystym Pythonie. W wersjach przed 6.18.0 spreparowany plik PDF zawierający identyfikatory obiektów pośrednich lub tokeny numeru generacji, które ciągną się długo bez białych znaków, może spowodować, że pypdf/_reader.py i pypdf/generic/_base.py będą skanować nadmierne dane wejściowe przez read_until_whitespace, co prowadzi do długiego czasu działania i niedostępności aplikacji. Problem został naprawiony w wersji 6.18.0.
- CVE-2026-102993Wysokie
pypdf to darmowa i otwartoźródłowa biblioteka PDF w czystym Pythonie. W wersjach przed 6.17.0 spreparowany plik PDF może zawierać nietypowo duże wartości rzymskich etykiet stron, które powodują, że pypdf/_page_labels.py generuje nadmiernie duże ciągi liczbowe, gdy aplikacja pobiera etykiety stron dokumentu, zużywając duże ilości pamięci i potencjalnie czyniąc aplikację niedostępną. Problem został naprawiony w wersji 6.17.0.
- CVE-2026-84311Niskie
W pypdf (biblioteka PDF w Pythonie) przed wersją 6.16.1, atakujący może stworzyć plik PDF, który powoduje, że PageObject._extract_text i PageObject.extract_xform_text przechodzą przez skierowany graf acykliczny ponownie użytych form XObject, w którym każda forma wywołuje dziecko wielokrotnie, tworząc wykładniczo wiele ścieżek przejścia i powodując długie czasy działania oraz duże zużycie pamięci. Problem naprawiono w wersji 6.16.1.
- CVE-2026-84310Niskie
W pypdf (biblioteka PDF w Pythonie) przed wersją 6.16.1, atakujący może stworzyć plik PDF, który powoduje, że _get_outline w _doc_common.py zużywa długie czasy działania i duże ilości pamięci podczas pobierania konspektów dokumentów z dużą liczbą wpisów lub głęboko zagnieżdżonymi ponownie używanymi ścieżkami, ponieważ przejście nie miało globalnych limitów liczby wpisów i głębokości zagnieżdżenia. Problem naprawiono w wersji 6.16.1.
- CVE-2026-84309Średnie
pypdf to darmowa biblioteka PDF w czystym Pythonie. Przed wersją 6.16.0 atakujący może stworzyć plik PDF o cyklicznej strukturze drzewa, co powoduje, że funkcja TreeObject.insert_child w pypdf/generic/_data_structures.py podąża za linkami /Next w nieskończoność podczas zapisu, prowadząc do nieskończonej pętli. Problem naprawiono w wersji 6.16.0.
- CVE-2026-82398Średnie
pypdf przed wersją 6.15.0 ma podatność na długi czas działania, gdy funkcja read_until_whitespace w pypdf/_utils.py czyta strumień zawierający długi ciąg bajtów bez białych znaków. Funkcja wielokrotnie wykonuje niezmienne łączenie bajtów w pętli jeden-bajtowej, co powoduje kwadratowy koszt przetwarzania.
- CVE-2026-71870Niskie
pypdf przed wersją 6.15.0 jest podatny na nadmierne zużycie pamięci podczas przetwarzania specjalnie spreparowanych plików PDF, gdy funkcja parse_bfrange w pliku pypdf/_cmap.py parsuje niezwykle duże tokeny w mapie /ToUnicode CMap podczas ekstrakcji tekstu. Problem został naprawiony w wersji 6.15.0.
- CVE-2026-71852Niskie
Podatność w bibliotece pypdf przed wersją 6.15.0 pozwala na długotrwałe działanie i duże zużycie pamięci podczas ekstrakcji tekstu z odpowiednio spreparowanego pliku PDF. Funkcja Font._collect_cid_character_widths rozszerza niezwykle duże zakresy szerokości CID lub nadmierną liczbę wpisów szerokości. Problem został naprawiony w wersji 6.15.0.
- CVE-2026-59936Wysokie
W bibliotece pypdf przed wersją 6.14.1 wykryto podatność polegającą na nieskończonej pętli podczas przetwarzania obrazów wbudowanych w strumieniu treści strony PDF. Atakujący może stworzyć specjalnie spreparowany plik PDF z nieprawidłowo zakończonym obrazem wbudowanym, co prowadzi do zawieszenia procesu ekstrakcji tekstu.
- CVE-2026-59935Wysokie
Biblioteka pypdf przed wersją 6.14.2 zawiera podatność na atak DoS polegający na nieskończonej pętli podczas parsowania plików PDF. Atakujący może stworzyć specjalnie spreparowany dokument PDF z niezakończonym obrazem inline używającym filtrów ASCII85 lub ASCIIHex, co prowadzi do zawieszenia procesu.
- CVE-2026-59938Średnie
W bibliotece pypdf przed wersją 6.14.0 wykryto podatność polegającą na możliwości stworzenia pliku PDF z zawyżonymi deklarowanymi rozmiarami obrazów, co prowadzi do nadmiernego zużycia pamięci podczas parsowania obrazów. Atakujący może wykorzystać ten błąd do wywołania ataku typu odmowa usługi (DoS) poprzez przeciążenie pamięci.
- CVE-2026-59937Wysokie
W bibliotece pypdf przed wersją 6.14.0 wykryto podatność polegającą na możliwości stworzenia przez atakującego pliku PDF z wieloma uszkodzonymi strumieniami odnośników krzyżowych. Powoduje to długotrwałe odtwarzanie uszkodzonych wpisów tabeli odnośników, co prowadzi do nadmiernego obciążenia procesora i wydłużenia czasu przetwarzania.
- CVE-2026-57204Średnie
Biblioteka pypdf przed wersją 6.13.3 zawiera podatność na atak DoS. Specjalnie spreparowany plik PDF może spowodować nadmierne zużycie pamięci, ponieważ stała MAX_DECLARED_STREAM_LENGTH jest czasami ignorowana podczas parsowania strumienia treści bez wartości /Length.
- CVE-2026-54651Średnie
pypdf to darmowa i otwartoźródłowa biblioteka PDF napisana w czystym Pythonie. Przed wersją 6.13.1, atakujący mógł wykorzystać tę podatność do stworzenia pliku PDF, który prowadził do nieskończonej pętli.
- CVE-2026-54531Średnie
pypdf to darmowa i otwartoźródłowa biblioteka PDF napisana w czystym Pythonie. Przed wersją 6.13.0, atakujący mógł wykorzystać tę podatność do stworzenia pliku PDF, który prowadził do nieskończonej pętli.
- CVE-2026-54530Średnie
pypdf to darmowa i otwartoźródłowa biblioteka PDF napisana w czystym Pythonie. Przed wersją 6.13.0, atakujący mógł wykorzystać tę podatność do stworzenia pliku PDF, który prowadził do nieskończonej pętli podczas ekstrakcji tekstu w trybie układu.
- CVE-2026-49461Średnie
pypdf to darmowa i otwartoźródłowa biblioteka PDF napisana w czystym Pythonie. Przed wersją 6.12.2, atakujący mógł stworzyć PDF, który prowadził do dużego zużycia pamięci poprzez ekstrakcję tekstu z strony zawierającej obiekt formularza XObject z odniesieniami do samego siebie.
- CVE-2026-49460Niskie
Podatność w bibliotece pypdf przed wersją 6.12.2 pozwala atakującemu na stworzenie pliku PDF, który powoduje długi czas przetwarzania. Wymaga to dostępu do strumienia wykorzystującego filtr /FlateDecode z predyktorem PNG.
- CVE-2026-41314Średnie
W bibliotece pypdf w wersjach przed 6.10.2 atakujący może spreparować plik PDF powodujący wyczerpanie pamięci RAM. Wymaga to dostępu do obrazu z /FlateDecode o dużych wartościach rozmiaru. Podatność naprawiono w wersji 6.10.2.
- CVE-2026-41313Średnie
W bibliotece pypdf w wersjach przed 6.10.2 atakujący może spreparować plik PDF powodujący długi czas działania. Wymaga to wczytania pliku PDF z dużą wartością /Size w trailerze w trybie przyrostowym. Podatność naprawiono w wersji 6.10.2.
- CVE-2026-41312Średnie
W bibliotece pypdf w wersjach przed 6.10.2 atakujący może spreparować plik PDF powodujący wyczerpanie pamięci RAM. Wymaga to dostępu do strumienia skompresowanego /FlateDecode z /Predictor różnym od 1 i dużymi parametrami predyktora. Podatność naprawiono w wersji 6.10.2.
- CVE-2026-41168Średnie
W bibliotece pypdf w wersjach przed 6.10.1 atakujący może spreparować plik PDF powodujący długi czas działania. Wymaga to strumieni referencji krzyżowych z błędnymi dużymi wartościami /Size lub strumieni obiektów z błędnymi dużymi wartościami /N. Podatność naprawiono w wersji 6.10.1.
- CVE-2026-40260Średnie
W bibliotece pypdf w wersjach przed 6.10.0 zmanipulowane deklaracje encji w metadanych XMP mogą wyczerpać pamięć RAM. Atakujący może spreparować plik PDF, który podczas parsowania metadanych XMP powoduje nadmierne zużycie pamięci. Podatność naprawiono w wersji 6.10.0.
- CVE-2026-33123Średnie
W bibliotece pypdf w wersjach przed 6.9.1 atakujący może spreparować złośliwy plik PDF powodujący długi czas działania i/lub duże zużycie pamięci. Wykorzystanie wymaga dostępu do strumienia opartego na tablicy z wieloma wpisami. Podatność naprawiono w wersji 6.9.1.
- CVE-2026-31826Średnie
Biblioteka pypdf przed wersją 6.8.0 pozwala atakującemu na stworzenie pliku PDF, który powoduje nadmierne zużycie pamięci. Wystarczy spreparowany strumień treści z bardzo dużą wartością /Length, niezależnie od rzeczywistej długości danych.
- CVE-2026-28804Średnie
pypdf to darmowa biblioteka PDF w czystym Pythonie. W wersjach przed 6.7.5 atakujący może spreparować plik PDF powodujący długi czas działania podczas dostępu do strumienia z filtrem /ASCIIHexDecode. Podatność została naprawiona w wersji 6.7.5.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

