Vulnerability · Published Jan 27, 2026 · Assigned by GitHub_M
CVE-2026-24688pypdf has possible Infinite Loop when processing outlines/bookmarks
Medium 5.1
In plain English
A medium-severity infinite loop in pypdf from py-pdf. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.4% (higher than 39% of all known vulnerabilities). Ready-made attack tooling exists: public proof-of-concept code. Fixed versions are available - upgrade the affected package.
Official 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.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian:12 | pypdf | no fix listed | DEBIAN-CVE-2026-24688 |
| Debian:13 | pypdf | no fix listed | DEBIAN-CVE-2026-24688 |
| Debian:14 | pypdf | 6.9.0-1 | DEBIAN-CVE-2026-24688 |
| Debian:12 | pypdf2 | no fix listed | DEBIAN-CVE-2026-24688 |
| PyPI | pypdf | 6.6.2 | GHSA-2q4j-m29v-hq73 |
| PyPI | pypdf | 6.6.2 | PYSEC-2026-1827 |
| Ubuntu:24.04:LTS | pypdf | no fix listed | UBUNTU-CVE-2026-24688 |
| Ubuntu:25.10 | pypdf | no fix listed | UBUNTU-CVE-2026-24688 |
| Ubuntu:26.04:LTS | pypdf | no fix listed | UBUNTU-CVE-2026-24688 |
| Ubuntu:26.10 | pypdf | no fix listed | UBUNTU-CVE-2026-24688 |
| Ubuntu:22.04:LTS | pypdf2 | no fix listed | UBUNTU-CVE-2026-24688 |
| Ubuntu:24.04:LTS | pypdf2 | no fix listed | UBUNTU-CVE-2026-24688 |
Affected products (as reported)
Weakness: CWE-835 · Vector: CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N
References
- https://github.com/py-pdf/pypdf/security/advisories/GHSA-2q4j-m29v-hq73 x_refsource_CONFIRM
- https://github.com/py-pdf/pypdf/pull/3610 x_refsource_MISC
- https://github.com/py-pdf/pypdf/commit/b1282f8dcdc1a7b41ceab6740ffddfdf31b1fec1 x_refsource_MISC
- https://github.com/py-pdf/pypdf/releases/tag/6.6.2 x_refsource_MISC