CVE Catalog

CVE-2023-46250

MediumCVSS 5.1
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Low risk
0.25%

17th percentile - higher than 17% of all known CVEs

Summary

In pypdf versions 3.7.0 through 3.16.4, an attacker can craft a PDF that causes an infinite loop. The loop blocks the current process and can utilize a single CPU core at 100%, without affecting memory usage. This is fixed in version 3.17.0.

Risk Assessment

A malicious PDF can hang the processing process and exhaust CPU resources, leading to denial of service. The risk occurs e.g. when merging or annotating untrusted PDF files.

Recommendation

Update pypdf to version 3.17.0 or later. As a workaround, manually apply the patch in pypdf/generic/_data_structures.py.

Other vulnerabilities in pypdf

See all
Original NVD description (English source)

pypdf 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`.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS