---
id: CVE-2026-27024
aliases:
  - GHSA-996q-pr4m-cvgq
  - PYSEC-2026-3013
title: pypdf has a possible infinite loop when processing TreeObject
summary: pypdf has a possible infinite loop when processing TreeObject
severity: medium
vendor: pypdf
product: pypdf
ecosystem: pip
affected:
  - pypdf < 6.7.1
patched:
  - pypdf 6.7.1
published: '2026-02-18'
updated: '2026-09-10'
sourceUpdated: '2026-09-10T03:50:34.616221084Z'
source: OSV
sourceUrl: 'https://osv.dev/vulnerability/GHSA-996q-pr4m-cvgq'
references:
  - url: 'https://github.com/py-pdf/pypdf/security/advisories/GHSA-996q-pr4m-cvgq'
  - url: 'https://nvd.nist.gov/vuln/detail/CVE-2026-27024'
  - url: 'https://github.com/py-pdf/pypdf/pull/3645'
  - url: >-
      https://github.com/py-pdf/pypdf/commit/bd2f6d052fe5941e85e37082c2a43453d48d1295
  - url: 'https://github.com/py-pdf/pypdf'
  - url: 'https://github.com/py-pdf/pypdf/releases/tag/6.7.1'
tags:
  - osv
  - pip
epss: 0.00184
epssPercentile: 0.07167
ingestedAt: '2026-07-13T18:57:55.828Z'
---

## Overview

### Impact

An attacker who uses this vulnerability can craft a PDF which leads to an infinite loop. This requires accessing the children of a `TreeObject`, for example as part of outlines.

### Patches

This has been fixed in [pypdf==6.7.1](https://github.com/py-pdf/pypdf/releases/tag/6.7.1).

### Workarounds

If you cannot upgrade yet, consider applying the changes from PR [#3645](https://github.com/py-pdf/pypdf/pull/3645).

## Affected packages

- `pypdf < 6.7.1`

## Remediation

Upgrade to a patched release:

- `pypdf 6.7.1`
