---
id: CVE-2026-25940
title: jsPDF is a library to generate PDFs in JavaScript
summary: >-
  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 u…
severity: high
cvss: 8.1
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:N'
cwe:
  - CWE-116
  - CWE-116
vendor: parall
product: jspdf
affected:
  - jspdf < 4.2.0
patched:
  - jspdf 4.2.0
published: '2026-02-19'
updated: '2026-06-30'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-25940'
references:
  - url: >-
      https://github.com/parallax/jsPDF/commit/71ad2dbfa6c7c189ab42b855b782620fa8a38375
    label: security-advisories@github.com
  - url: 'https://github.com/parallax/jsPDF/releases/tag/v4.2.0'
    label: security-advisories@github.com
  - url: 'https://github.com/parallax/jsPDF/security/advisories/GHSA-p5xg-68wr-hm3m'
    label: security-advisories@github.com
  - url: 'https://access.redhat.com/errata/RHSA-2026:7110'
    label: 0b0ca135-0b70-47e7-9f44-1890c2a1c46c
  - url: 'https://access.redhat.com/errata/RHSA-2026:7128'
    label: 0b0ca135-0b70-47e7-9f44-1890c2a1c46c
  - url: 'https://access.redhat.com/security/cve/CVE-2026-25940'
    label: 0b0ca135-0b70-47e7-9f44-1890c2a1c46c
  - url: 'https://bugzilla.redhat.com/show_bug.cgi?id=2441016'
    label: 0b0ca135-0b70-47e7-9f44-1890c2a1c46c
  - url: >-
      https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-25940.json
    label: 0b0ca135-0b70-47e7-9f44-1890c2a1c46c
tags:
  - nvd
  - exploit-available
epss: 0.00432
epssPercentile: 0.37033
ingestedAt: '2026-07-03T18:53:52.441Z'
exploits:
  github: 1
  githubRepos:
    - 'https://github.com/open-flaw/CVE-2026-25940'
  checkedAt: '2026-09-24T07:53:01.263Z'
exploitAvailable: true
---

## Overview

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 jsPDF@4.2.0. As a workaround, sanitize user input before passing it to the vulnerable API members.

## Affected

- `jspdf < 4.2.0`

## Remediation

Upgrade past the affected range:

- `jspdf 4.2.0`
