| Name | CVE-2026-24688 |
| Description | pypdf is a free and open-source pure-python PDF library. An attacker who uses an infinite loop vulnerability that is present in versions prior to 6.6.2 can craft a PDF which leads to an infinite loop. This requires accessing the outlines/bookmarks. This has been fixed in pypdf 6.6.2. If projects cannot upgrade yet, consider applying the changes from PR #3610 manually. |
| 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 | 1126575 |
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 |
| forky, sid, trixie | 5.4.0-1 | vulnerable |
| pypdf2 (PTS) | bullseye | 1.26.0-4+deb11u1 | vulnerable |
| 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) | | | 1126575 |
| pypdf2 | source | (unstable) | (unfixed) | | | |
Notes
[trixie] - pypdf <no-dsa> (Minor issue)
[bookworm] - pypdf <no-dsa> (Minor issue)
[bookworm] - pypdf2 <no-dsa> (Minor issue)
[bullseye] - pypdf2 <postponed> (Minor issue, DoS)
https://github.com/py-pdf/pypdf/security/advisories/GHSA-2q4j-m29v-hq73
https://github.com/py-pdf/pypdf/pull/3610
Fixed by: https://github.com/py-pdf/pypdf/commit/b1282f8dcdc1a7b41ceab6740ffddfdf31b1fec1 (6.6.2)
Very similar code in getOutlines/pdf.py:getOutlines in pypdf2-1.26.0-2