Description
pypdf is a free and open-source pure-python PDF library. Prior to 6.21.4, pypdf can enter an infinite loop when cloning or duplicating a crafted cyclic DictionaryObject. Clone traversal checked generated destination references rather than the original source references, allowing some source cycles to evade the visited-object check. This issue is fixed in version 6.21.4.
Published: 2026-10-29
Score: 7.1 High
EPSS: n/a
KEV: No
Impact: Denial of Service
Action: Patch Now
AI Analysis

Impact

pypdf contains a flaw that allows an attacker to trigger an infinite loop by cloning a specially crafted cyclic DictionaryObject. The loop consumes CPU resources and can stall the process handling the clone, resulting in denial of service. The weakness is identified as CWE-835 (Infinite Loop).

Affected Systems

The vulnerable vendor is py-pdf and product pypdf. All releases prior to version 6.21.4 are affected; the issue was fixed in 6.21.4 and later releases.

Risk and Exploitability

The CVSS score of 7.1 classifies this issue as high severity. EPSS data is unavailable, so the current exploitation probability is not quantified; the absence from the KEV catalog suggests no documented exploits yet. The likely attack vector is input-based: an attacker supplies a malicious PDF containing a cyclic dictionary that the application processes, forcing the clone operation and causing the loop. This can be remotely achieved if the application accepts PDFs from untrusted sources, otherwise it may remain a local risk.

Generated by OpenCVE AI on October 29, 2026 at 21:29 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade pypdf to version 6.21.4 or later
  • Validate or sanitize PDFs to reject cyclic DictionaryObjects before cloning
  • Monitor the application for abnormal CPU usage or hangs that may indicate exploitation

Generated by OpenCVE AI on October 29, 2026 at 21:29 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Thu, 29 Oct 2026 21:45:00 +0000

Type Values Removed Values Added
First Time appeared Py-pdf
Py-pdf pypdf
Vendors & Products Py-pdf
Py-pdf pypdf

Thu, 29 Oct 2026 20:45:00 +0000

Type Values Removed Values Added
Description pypdf is a free and open-source pure-python PDF library. Prior to 6.21.4, pypdf can enter an infinite loop when cloning or duplicating a crafted cyclic DictionaryObject. Clone traversal checked generated destination references rather than the original source references, allowing some source cycles to evade the visited-object check. This issue is fixed in version 6.21.4.
Title pypdf: Possible infinite loop when cloning dictionaries
Weaknesses CWE-835
References
Metrics cvssV4_0

{'score': 7.1, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N'}


cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-10-29T20:35:33.902Z

Reserved: 2026-10-29T16:04:48.729Z

Link: CVE-2026-119205

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-10-29T21:17:19.677

Modified: 2026-10-29T21:17:19.677

Link: CVE-2026-119205

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-29T21:30:15Z

Weaknesses
  • CWE-835

    Loop with Unreachable Exit Condition ('Infinite Loop')