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, np. ciasteczek sesyjnych, tokenów uwierzytelniających lub innych informacji dostępnych w domenie, w której otwarto plik PDF.
Rekomendacja
Należy niezwłocznie zaktualizować bibliotekę jsPDF do wersji 4.2.1 lub nowszej. Jeśli aktualizacja nie jest możliwa, należy bezwzględnie oczyścić (sanityzować) dane wejściowe użytkownika przed przekazaniem ich do funkcji `output`.
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.

