CVE-2016-4991 json
Input passed to the Pdf() function is shell escaped and passed to child_process.exec() during PDF rendering.
published 2022-07-28 4 y ago modified 2026-06-17 4 mo ago also EUVD-2016-5957
- cvss
- 9.8
- version 3.1, NVD
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 1.8%
- EPSS 1.8% chance of exploitation in 30 days, percentile 79%
- public exploits
- 0
- none known
Summary
Input passed to the Pdf() function is shell escaped and passed to child_process.exec() during PDF rendering. However, the shell escape does not properly encode all special characters, namely, semicolon and curly braces. This can be abused to achieve command execution. This problem affects nodepdf 1.3.0.
Exploit prediction
1.84% chance of exploitation in the next 30 days, higher than 79% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- lf.lc https://lf.lc/cve/cve-2016-4991/ referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| NVD | 3.1 | 9.8 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
Affected products
- n/a nodepdf
Classification
- Weakness
-
- CWE-77 Improper Neutralization of Special Elements used in a Command
References
-
lf.lc
/cve/cve-2016-4991/
exploit, third-party-advisory
Sources
- CVE List CVE-2016-4991
- NVD CVE-2016-4991
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.