Description
pypdf is a free and open-source pure-python PDF library. Prior to 6.20.1, calling PdfWriter.find_outline_item on a crafted PDF with a cyclic outline hierarchy can enter an infinite loop and block the current process. This issue is fixed in version 6.20.1.
Published: 2026-10-21
Score: 6 Medium
EPSS: n/a
KEV: No
Impact: Denial of Service
Action: Patch
AI Analysis

Impact

Calling PdfWriter.find_outline_item on a PDF that contains a cyclic outline hierarchy can cause an infinite loop, blocking the process that is attempting the operation. This results in a denial of service, as the process becomes unresponsive and may exhaust system resources. The weakness is characterized as an infinite loop (CWE-835), which does not enable code execution or privilege escalation, but can compromise availability. The likely way an attacker would trigger this is by delivering a crafted PDF to any system that automatically processes PDFs using pypdf. The impact is limited to the application or service handling the PDF, but if critical services depend on this library, availability could be severely disrupted.

Affected Systems

The vendor is py-pdf, product pypdf. Versions prior to 6.20.1 are vulnerable. The fix was introduced in release 6.20.1; later releases are not affected.

Risk and Exploitability

The CVSS score of 6.0 marks the problem as moderately severe, though the lack of an EPSS score indicates that actual exploitation data is not publicly documented. Because the attack requires a crafted PDF to be processed, the threat is primarily relevant to services that accept or parse PDFs from untrusted sources. No entry in the CISA KEV catalog means no known widespread exploitation, yet the function’s infinite loop can still cause significant downtime if the vulnerable library is in use.

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

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade the pypdf package to version 6.20.1 or later.
  • Ensure that all dependent applications and services are updated to use the patched library.
  • If upgrading immediately is not feasible, disable automatic PDF processing or restrict it to trusted sources until a patch is applied.

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

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-qfv9-64jg-mh7p pypdf: Possible infinite loop in PdfWriter.find_outline_item
History

Wed, 21 Oct 2026 17:15:00 +0000

Type Values Removed Values Added
Description pypdf is a free and open-source pure-python PDF library. Prior to 6.20.1, calling PdfWriter.find_outline_item on a crafted PDF with a cyclic outline hierarchy can enter an infinite loop and block the current process. This issue is fixed in version 6.20.1.
Title pypdf: Possible infinite loop in PdfWriter.find_outline_item
Weaknesses CWE-835
References
Metrics cvssV4_0

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


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-10-21T15:55:55.976Z

Reserved: 2026-10-20T17:39:41.373Z

Link: CVE-2026-113792

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-10-21T16:17:27.173

Modified: 2026-10-21T16:17:27.173

Link: CVE-2026-113792

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-21T20:15:06Z

Weaknesses
  • CWE-835

    Loop with Unreachable Exit Condition ('Infinite Loop')