---
id: CVE-2026-115585
aliases:
  - GHSA-jr96-gvgh-j3r4
title: >-
  pypdf: Possible long runtimes for repeated malformed cross-reference entries
  (Follow-up)
summary: >-
  pypdf: Possible long runtimes for repeated malformed cross-reference entries
  (Follow-up)
severity: high
cvss: 7.1
cwe:
  - CWE-400
  - CWE-407
vendor: pypdf
product: pypdf
ecosystem: pip
affected:
  - pypdf < 6.21.2
patched:
  - pypdf 6.21.2
published: '2026-10-23'
updated: '2026-10-23'
sourceUpdated: '2026-10-23T20:54:28Z'
source: GHSA
sourceUrl: 'https://github.com/advisories/GHSA-jr96-gvgh-j3r4'
references:
  - url: 'https://github.com/py-pdf/pypdf/security/advisories/GHSA-jr96-gvgh-j3r4'
  - url: 'https://github.com/py-pdf/pypdf/pull/4240'
  - url: >-
      https://github.com/py-pdf/pypdf/commit/68a0e5046cc9e14a6c24a21a713f3c7fbde18b4b
  - url: 'https://github.com/py-pdf/pypdf/releases/tag/6.21.2'
  - url: 'https://github.com/advisories/GHSA-jr96-gvgh-j3r4'
tags:
  - ghsa
  - pip
  - cve.org
cvssVector: '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'
cvssSource: cna
ingestedAt: '2026-10-23T20:36:51.540Z'
---

## Overview

### Impact

An attacker who uses this vulnerability can craft a PDF which leads to long runtimes. This requires cross-reference streams with repeated malformed cross-reference streams.

### Patches

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

### Workarounds

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

### Notes

This is a follow-up to https://github.com/py-pdf/pypdf/security/advisories/GHSA-55h5-xmcq-c37v, which had the side-effect of still loading the whole stream again despite the cache being present.

## Affected packages

- `pypdf < 6.21.2`

## Remediation

Upgrade to a patched release:

- `pypdf 6.21.2`
