CVE-2023-36810

NameCVE-2023-36810
Descriptionpypdf is a pure-python PDF library capable of splitting, merging, cropping, and transforming the pages of PDF files. An attacker who uses this vulnerability can craft a PDF which leads to unexpected long runtime. This quadratic runtime blocks the current process and can utilize a single core of the CPU by 100%. It does not affect memory usage. This issue has been addressed in PR 808 and versions from 1.27.9 include this fix. Users are advised to upgrade. There are no known workarounds for this vulnerability.
SourceCVE (at NVD; CERT, LWN, oss-sec, fulldisc, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, GitHub advisories/code/issues, web search, more)
ReferencesDLA-3497-1, ELA-893-1

Vulnerable and fixed packages

The table below lists information on source packages.

Source PackageReleaseVersionStatus
pypdf2 (PTS)jessie1.23+git20141008-1+deb8u1vulnerable
stretch (security)1.26.0-2+deb9u1vulnerable
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
pypdf2sourcejessie(unfixed)end-of-life
pypdf2sourcestretch1.26.0-2+deb9u2ELA-893-1
pypdf2sourcebuster1.26.0-2+deb10u2DLA-3497-1
pypdf2sourcebullseye1.26.0-4+deb11u1
pypdf2source(unstable)1.27.9-1

Notes

https://github.com/py-pdf/pypdf/security/advisories/GHSA-jrm6-h9cq-8gqw
https://github.com/py-pdf/pypdf/issues/582
https://github.com/py-pdf/pypdf/pull/808
Fixed by: https://github.com/py-pdf/pypdf/commit/c6c56f550bb384e05f0139c796ba1308837d6373 (1.27.9)

Search for package or bug name: Reporting problems