jsPDF Vulnerable to Denial of Service (DoS) via Unvalidated BMP Dimensions in BMPDecoder
### Impact User control of the first argument of the `addImage` method results in Denial of Service. If given the possibility to pass unsanitized image data or URLs to the `addImage` method, a user can provide a harmful BMP file that results in out of memory errors and denial of service. Harmful BMP files have large width and/or height entries in their headers, wich lead to excessive memory allocation. Other affected methods are: `html`. Example attack vector: ```js import { jsPDF } from "jspdf" // malicious BMP image data with large width/height headers const payload = ... const doc = new jsPDF(); doc.addImage(payload, "BMP", 0, 0, 100, 100); ``` ### Patches The vulnerability has been fixed in jsPDF 4.1.0. Upgrade to jspdf@>=4.1.0. ### Workarounds Sanitize image data or URLs before passing it to the addImage method or one of the other affected methods.
describes (1)
Related CVEs.
| ID | severity | exploitable | ||
|---|---|---|---|---|
| CVE-2026-24133US | medium6.5 | — | ||
jsPDF is a library to generate PDFs in JavaScript. Prior to 4.1.0, user control of the first argument of the addImage method results in denial of service. If given the possibility… | ||||
references
External citations — patches, advisories, analysis.
- https://github.com/parallax/jsPDFPACKAGE
- https://github.com/parallax/jsPDF/commit/ae4b93f76d8fc1baa5614bd5fdb5d174c3b85f0dWEB
- https://github.com/parallax/jsPDF/releases/tag/v4.1.0WEB
- https://github.com/parallax/jsPDF/security/advisories/GHSA-95fx-jjr5-f39cWEB
- https://nvd.nist.gov/vuln/detail/CVE-2026-24133ADVISORY
Advisories like this name the exposed products attackers go after on your perimeter. See what is exposed on your perimeter with a free passive scan.
Free scan