CVE-2023-46250

NameCVE-2023-46250
Descriptionpypdf is a free and open-source pure-python PDF library. An attacker who uses a vulnerability present in versions 3.7.0 through 3.16.4 can craft a PDF which leads to an infinite loop. This infinite loop blocks the current process and can utilize a single core of the CPU by 100%. It does not affect memory usage. That is, for example, the case when the pypdf-user manipulates an incoming malicious PDF e.g. by merging it with another PDF or by adding annotations. The issue was fixed in version 3.17.0. As a workaround, apply the patch manually by modifying `pypdf/generic/_data_structures.py`.
SourceCVE (at NVD; CERT, LWN, oss-sec, fulldisc, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, GitHub advisories/code/issues, web search, more)

Vulnerable and fixed packages

The table below lists information on source packages.

Source PackageReleaseVersionStatus
pypdf (PTS)bookworm3.4.1-1+deb12u1fixed
sid, trixie4.3.1-1fixed
pypdf2 (PTS)jessie1.23+git20141008-1+deb8u1fixed
stretch (security)1.26.0-2+deb9u1fixed
stretch (lts), stretch1.26.0-2+deb9u2fixed
buster (security), buster, buster (lts)1.26.0-2+deb10u2fixed
bullseye1.26.0-4+deb11u1fixed
bookworm2.12.1-3+deb12u1fixed
sid2.12.1-4fixed

The information below is based on the following data on fixed versions.

PackageTypeReleaseFixed VersionUrgencyOriginDebian Bugs
pypdfsource(unstable)(not affected)
pypdf2source(unstable)(not affected)

Notes

- pypdf <not-affected> (Vulnerable code not yet present)
- pypdf2 <not-affected> (Vulnerable code not yet present)
https://github.com/py-pdf/pypdf/security/advisories/GHSA-wjcc-cq79-p63f
https://github.com/py-pdf/pypdf/pull/2264
https://github.com/py-pdf/pypdf/commit/9b23ac3c9619492570011d551d521690de9a3e2d (3.17.0)

Search for package or bug name: Reporting problems