CVE-2026-25940 jsPDF has a PDF Injection in AcroForm module allows Arbitrary JavaScript Execution (RadioButton.createOption and "AS" property)

High 8.1 Published Updated

Attackers can inject arbitrary JavaScript into PDFs via unsanitized input in jsPDF's AcroForm module, executing code when victims interact with radio options.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
A user has to click or open something
Fix
Available

What is CVE-2026-25940?

CVE-2026-25940 is a high-severity code injection vulnerability in parallax jsPDF, published on 19 Feb 2026. An attacker can exploit it over the internet without logging in, and only if a user opens a file or follows a link.

Official description

jsPDF is a library to generate PDFs in JavaScript. Prior to 4.2.0, user control of properties and methods of the Acroform module allows users to inject arbitrary PDF objects, such as JavaScript actions. If given the possibility to pass unsanitized input to one of the following property, a user can inject arbitrary PDF objects, such as JavaScript actions, which are executed when the victim hovers over the radio option. The vulnerability has been fixed in [email protected]. As a workaround, sanitize user input before passing it to the vulnerable API members.

Weakness: CWE-116

Which versions are affected by CVE-2026-25940?

2 open source packages ship an affected version, including jspdf. It affects 1 product.

PackageAffectedFixed in
jspdf npmAll versions4.2.0
jspdf npmAll versions4.2.0

Products include Parall Jspdf.

How do I fix CVE-2026-25940?

Upgrade jspdf to 4.2.0 or later.

Upgrade, and never evaluate templates, expressions or code built from user input. More about Code injection.

Is CVE-2026-25940 being exploited?

There is no known exploitation of CVE-2026-25940 in the wild and no public exploit code.

Public exploit code: 1 proofs of concept on GitHub.

Sources

Also known as GHSA-p5xg-68wr-hm3m, ROOT-APP-NPM-CVE-2026-25940.

Is CVE-2026-25940 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free