CVE-2026-31938
KrytyczneCVSS 9.6Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 18 - wyżej niż 18% wszystkich znanych CVE
Streszczenie
Biblioteka jsPDF w wersji przed 4.2.1 zawiera podatność na wstrzykiwanie kodu HTML (w tym skryptów) poprzez kontrolę argumentu `options` funkcji `output`. Atakujący może przekazać złośliwe wartości, które po wygenerowaniu i otwarciu pliku PDF w przeglądarce ofiary wykonują się w jej kontekście.
Ocena ryzyka
Ryzyko polega na możliwości kradzieży lub modyfikacji poufnych danych z kontekstu przeglądarki ofiary, co może prowadzić do naruszenia bezpieczeństwa sesji, wycieku danych uwierzytelniających lub przejęcia konta.
Rekomendacja
Należy niezwłocznie zaktualizować bibliotekę jsPDF do wersji 4.2.1 lub nowszej. Jeśli aktualizacja nie jest możliwa, należy dokładnie oczyścić dane wejściowe użytkownika przed przekazaniem ich do metody `output`.
Inne podatności w jsPDF
Zobacz wszystkie- CVE-2026-31898Wysokie
Biblioteka jsPDF w wersji przed 4.2.1 zawiera podatność na wstrzykiwanie dowolnych obiektów PDF, w tym akcji JavaScript, poprzez parametr `color` metody `createAnnotation`. Atakujący może wykorzystać to do wykonania złośliwego kodu po otwarciu pliku PDF.
- CVE-2026-25940Wysokie
Biblioteka jsPDF przed wersją 4.2.0 zawiera podatność umożliwiającą wstrzyknięcie dowolnych obiektów PDF, w tym akcji JavaScript, poprzez kontrolę właściwości i metod modułu Acroform. Atak może zostać wykonany, gdy ofiara najedzie kursorem na opcję radio.
- CVE-2026-25755Wysokie
Biblioteka jsPDF przed wersją 4.2.0 zawiera podatność polegającą na możliwości wstrzyknięcia dowolnych obiektów PDF do generowanego dokumentu poprzez kontrolę argumentu metody `addJS`. Atakujący może ominąć ograniczniki ciągów JavaScript i zmienić strukturę dokumentu lub wykonać złośliwe działania.
- CVE-2026-25535Wysokie
Biblioteka jsPDF przed wersją 4.2.0 zawiera podatność na atak DoS poprzez kontrolę pierwszego argumentu metody `addImage`. Przekazanie złośliwego pliku GIF z dużymi wymiarami w nagłówku prowadzi do nadmiernego przydziału pamięci i odmowy usługi. Podobny problem dotyczy metody `html`.
- CVE-2026-24737Wysokie
Biblioteka jsPDF przed wersją 4.1.0 zawiera podatność umożliwiającą wstrzyknięcie dowolnych obiektów PDF, w tym akcji JavaScript, poprzez kontrolę nad właściwościami i metodami modułu Acroform. Atakujący może wykorzystać nieoczyszczone dane wejściowe w metodach takich jak AcroformChoiceField.addOption, AcroformChoiceField.setOptions, AcroFormCheckBox.appearanceState i AcroFormRadioButton.appearanceState.
- CVE-2025-68428Wysokie
Biblioteka jsPDF w wersji przed 4.0.0 zawiera podatność na lokalne dołączanie plików i przechodzenie po ścieżkach. Atakujący może wykorzystać metodę loadFile, a także addImage, html i addFont, aby odczytać dowolne pliki z systemu plików serwera. Treść plików jest następnie umieszczana w generowanych dokumentach PDF.
Oryginalny opis (angielski, źródło NVD)
jsPDF is a library to generate PDFs in JavaScript. Prior to version 4.2.1, user control of the `options` argument of the `output` function allows attackers to inject arbitrary HTML (such as scripts) into the browser context the created PDF is opened in. The vulnerability can be exploited in the following scenario: the attacker provides values for the output options, for example via a web interface. These values are then passed unsanitized (automatically or semi-automatically) to the attack victim. The victim creates and opens a PDF with the attack vector using one of the vulnerable method overloads inside their browser. The attacker can thus inject scripts that run in the victims browser context and can extract or modify secrets from this context. The vulnerability has been fixed in [email protected]. As a workaround, sanitize user input before passing it to the output method.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

