What’s Vulnerable › Vulnerabilities
CVE-2026-28351: Manipulated RunLengthDecode streams can exhaust RAM
- Severity: medium (CVSS 5.3 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.5% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2026-02-27 · updated 2026-06-17
- Weakness: CWE-400
Description
pypdf is a free and open-source pure-python PDF library. Prior to version 6.7.4, an attacker who uses this vulnerability can craft a PDF which leads to large memory usage. This requires parsing the content stream using the RunLengthDecode filter. This has been fixed in pypdf 6.7.4. As a workaround, consider applying the changes from PR #3664.
Affected products
- py-pdf pypdf: before 6.7.4 — fixed in 6.7.4
How to fix
Upgrade to a fixed version: py-pdf pypdf 6.7.4. Check the vendor advisory for mitigations.
References
- https://github.com/py-pdf/pypdf/commit/f309c6003746414dc7b5048c19e6d879ff2dc858
- https://github.com/py-pdf/pypdf/pull/3664
- https://github.com/py-pdf/pypdf/releases/tag/6.7.4
- https://github.com/py-pdf/pypdf/security/advisories/GHSA-f2v5-7jq9-h8cg
Get alerted when CVE-2026-28351 or the next vulnerability affects your stack