CVE-2026-25755 json
jsPDF has PDF Object Injection via Unsanitized Input in addJS Method
published 2026-02-19 8 mo ago modified 2026-09-10 1 mo ago also EUVD-2026-8109 , GHSA-9vjf-qc39-jprp
- cvss
- 9.6
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 1.0%
- EPSS 1.0% chance of exploitation in 30 days, percentile 61%
- public exploits
- 0
- none known
Summary
jsPDF is a library to generate PDFs in JavaScript. Prior to 4.2.0, user control of the argument of the `addJS` method allows an attacker to inject arbitrary PDF objects into the generated document. By crafting a payload that escapes the JavaScript string delimiter, an attacker can execute malicious actions or alter the document structure, impacting any user who opens the generated PDF. The vulnerability has been fixed in jspdf@4.2.0. As a workaround, escape parentheses in user-provided JavaScript code before passing them to the `addJS` method.
Patch / fix
- npm jspdf 4.2.0
- Red Hat Red Hat Advanced Cluster Security 4.8 1775594119
- Red Hat Red Hat Advanced Cluster Security 4.9 1775594284
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2026-25755 updated cvss 9.6
jsPDF: PDF object injection via unsanitized input in addJS method
-
Red Hat Advanced Cluster Security 4.8 advanced-cluster-security 1775594119fixed: vendor fix RHSA-2026:7110
-
Red Hat Advanced Cluster Security 4.9 advanced-cluster-security 1775594284fixed: vendor fix RHSA-2026:7128
-
Red Hat Advanced Cluster Security 4.8 advanced-cluster-security 1774163438, advanced-cluster-security 1774294180, advanced-cluster-security 1775594119 Red Hat Advanced Cluster Security 4.9 advanced-cluster-security 1774260292, advanced-cluster-security 1774294136, advanced-cluster-security 1775594284not affected: vulnerable code not present
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- none
- Automatable
- no
- Technical impact
- total
- Assessed
- 8 mo ago
Exploit prediction
0.95% chance of exploitation in the next 30 days, higher than 61% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- github.com https://github.com/ZeroXJacks/CVEs/blob/main/2026/CVE-2026-25755.md referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 8.1 | CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:N |
| CISA ADP | 3.1 | 9.6 | CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H |
| GitHub | 3.1 | 8.1 | CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:N |
| NVD | 3.1 | 8.8 | CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H |
| CNA | 3.1 | 9.6 | CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| npm | jspdf | <4.2.0 |
4.2.0 |
Affected products
- parallax jsPDF
- Red Hat Red Hat Advanced Cluster Security 4.8
- Red Hat Red Hat Advanced Cluster Security 4.9
Classification
References
-
github.com
/parallax/jsPDF/commit/56b46d45b052346f5995b005a34af5dcdddd5437
web, patch
-
github.com
/ZeroXJacks/CVEs/blob/main/2026/CVE-2026-25755.md
web, exploit, mitigation, third-party-advisory
-
access.redhat.com
/errata/RHSA-2026:7110
vendor-advisory
-
access.redhat.com
/errata/RHSA-2026:7128
vendor-advisory
-
github.com
/parallax/jsPDF/security/advisories/GHSA-9vjf-qc39-jprp
web, vendor-advisory
-
github.com
/parallax/jsPDF/releases/tag/v4.2.0
web, release-notes
-
access.redhat.com
/security/cve/CVE-2026-25755
vdb-entry
-
bugzilla.redhat.com
/show_bug.cgi?id=2440993
issue-tracking
- security.access.redhat.com /data/csaf/v2/vex/2026/cve-2026-25755.json
-
nvd.nist.gov
/vuln/detail/CVE-2026-25755
advisory
-
github.com
/parallax/jsPDF
package
Sources
- CVE List CVE-2026-25755
- GitHub Advisory GHSA-9vjf-qc39-jprp
- NVD CVE-2026-25755
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.