CVE Vulnerabilities

CVE-2023-46250

Loop with Unreachable Exit Condition ('Infinite Loop')

Published: Oct 31, 2023 | Modified: Nov 08, 2023
CVSS 3.x
5.5
MEDIUM
Source:
NVD
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H
CVSS 2.x
RedHat/V2
RedHat/V3
Ubuntu
MEDIUM

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.

Weakness

The product contains an iteration or loop with an exit condition that cannot be reached, i.e., an infinite loop.

Affected Software

Name Vendor Start Version End Version
Pypdf Pypdf_project 3.7.0 (including) 3.17.0 (excluding)
Pypdf Ubuntu bionic *
Pypdf Ubuntu lunar *
Pypdf Ubuntu mantic *
Pypdf Ubuntu trusty *
Pypdf Ubuntu xenial *
Pypdf2 Ubuntu bionic *
Pypdf2 Ubuntu lunar *
Pypdf2 Ubuntu mantic *
Pypdf2 Ubuntu trusty *
Pypdf2 Ubuntu xenial *

References