| Name | CVE-2026-84310 |
| Description | pypdf is a free and open-source pure-python PDF library. Prior to 6.16.1, an attacker can craft a PDF that causes pypdf/_doc_common.py _get_outline to consume long runtimes and large amounts of memory when retrieving document outlines with large numbers of entries or deeply nested reused paths because the traversal lacked global entry-count and nesting-depth limits. This issue is fixed in version 6.16.1. |
| Source | CVE (at NVD; CERT, ENISA, LWN, oss-sec, fulldisc, Debian ELTS, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, GitHub advisories/code/issues, web search, more) |
| Debian Bugs | 1146476 |
Vulnerable and fixed packages
The table below lists information on source packages.
| Source Package | Release | Version | Status |
|---|
| pypdf (PTS) | bookworm | 3.4.1-1+deb12u1 | vulnerable |
| trixie | 5.4.0-1 | vulnerable |
| forky, sid | 6.9.2-2 | vulnerable |
| pypdf2 (PTS) | bookworm | 2.12.1-3+deb12u1 | vulnerable |
The information below is based on the following data on fixed versions.
| Package | Type | Release | Fixed Version | Urgency | Origin | Debian Bugs |
|---|
| pypdf | source | (unstable) | (unfixed) | | | 1146476 |
| pypdf2 | source | (unstable) | (unfixed) | | | |
Notes
[trixie] - pypdf <no-dsa> (Minor issue)
[bookworm] - pypdf <postponed> (Minor issue)
[bookworm] - pypdf2 <postponed> (Minor issue, DoS)
https://github.com/py-pdf/pypdf/security/advisories/GHSA-23w6-3w8w-8484
https://github.com/py-pdf/pypdf/pull/3966
https://github.com/py-pdf/pypdf/commit/d91ab705fd81ed1a9cec175c6958600dea1a4942 (6.16.1)