CVE-2026-24737 jsPDF has a PDF Injection in AcroFormChoiceField which allows Arbitrary JavaScript Execution

High 8.1 Published Updated

Attackers can inject arbitrary JavaScript into PDFs via unsanitized input in jsPDF, leading to code execution when victims open the document.

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-24737?

CVE-2026-24737 is a high-severity code injection vulnerability in parallax jsPDF, published on 2 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.1.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 methods or properties, a user can inject arbitrary PDF objects, such as JavaScript actions, which are executed when the victim opens the document. The vulnerable API members are AcroformChoiceField.addOption, AcroformChoiceField.setOptions, AcroFormCheckBox.appearanceState, and AcroFormRadioButton.appearanceState. The vulnerability has been fixed in [email protected].

Weakness: CWE-917, CWE-116

Which versions are affected by CVE-2026-24737?

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

PackageAffectedFixed in
jspdf npmAll versions4.1.0
jspdf npmAll versions4.1.0

Products include Parall Jspdf.

How do I fix CVE-2026-24737?

Upgrade jspdf to 4.1.0 or later.

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

Is CVE-2026-24737 being exploited?

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

Sources

Also known as GHSA-pqxr-3g65-p328, ROOT-APP-NPM-CVE-2026-24737.

Is CVE-2026-24737 in your software?

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

Check your SBOMs for free