Name | CVE-2023-36464 |
Description | pypdf is an open source, pure-python PDF library. In affected versions an attacker may craft a PDF which leads to an infinite loop if `__parse_content_stream` is executed. That is, for example, the case if the user extracted text from such a PDF. This issue was introduced in pull request #969 and resolved in pull request #1828. Users are advised to upgrade. Users unable to upgrade may modify the line `while peek not in (b"\r", b"\n")` in `pypdf/generic/_data_structures.py` to `while peek not in (b"\r", b"\n", b"")`. |
Source | CVE (at NVD; CERT, LWN, oss-sec, fulldisc, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, GitHub advisories/code/issues, web search, more) |
Debian Bugs | 1040338, 1040339 |
The table below lists information on source packages.
Source Package | Release | Version | Status |
---|---|---|---|
pypdf (PTS) | bookworm | 3.4.1-1+deb12u1 | fixed |
sid, trixie | 4.3.1-1 | fixed | |
pypdf2 (PTS) | bullseye | 1.26.0-4+deb11u1 | fixed |
bookworm | 2.12.1-3+deb12u1 | fixed | |
sid | 2.12.1-4 | fixed |
The information below is based on the following data on fixed versions.
Package | Type | Release | Fixed Version | Urgency | Origin | Debian Bugs |
---|---|---|---|---|---|---|
pypdf | source | bookworm | 3.4.1-1+deb12u1 | |||
pypdf | source | (unstable) | 3.17.4-1 | 1040338 | ||
pypdf2 | source | buster | (not affected) | |||
pypdf2 | source | bullseye | (not affected) | |||
pypdf2 | source | bookworm | 2.12.1-3+deb12u1 | |||
pypdf2 | source | (unstable) | 2.12.1-4 | 1040339 |
[bullseye] - pypdf2 <not-affected> (Vulnerable code not present)
[buster] - pypdf2 <not-affected> (Vulnerable code not present)
https://github.com/py-pdf/pypdf/security/advisories/GHSA-4vvm-4w3v-6mr8
Introduced with: https://github.com/py-pdf/pypdf/pull/969 (2.2.0)
Fixed with: https://github.com/py-pdf/pypdf/pull/1828
Fixed by: https://github.com/py-pdf/pypdf/commit/b0e5c689df689ab173df84dacd77b6fc3c161932 (3.9.0)