Read the docs

Large memory usage in pypdf when parsing content streams

Priority LOW 27CWE-400Published · Updated

Key facts

Attack vector
Network
Privileges required
None
User interaction
Passive
Attack complexity
Low
Attack requirements
Present
Impact type
Denial of service
Confidentiality · integrity · availability
None · None · High
Fix status
Partial Red Hat: 7 without a fix

Attack profile from CVSS 4.0 · CNA. Fix status from CNA, GitHub and Red Hat. Impact type from CWE-400.

Summary

Versions of pypdf before 6.21.0 are affected. Parsing a content stream that contains many small operations consumes large amounts of memory (CWE-400). An unauthenticated remote attacker who supplies a crafted PDF can exhaust memory during parsing, causing a denial of service.

Written with Claude Haiku 5.5 from the sources below · 2026-10-30

Description from the CNA

pypdf is a free and open-source pure-python PDF library. Prior to 6.21.0, an attacker can craft a PDF containing a content stream with many small operations, causing parsing to consume large amounts of memory. This issue is fixed in version 6.21.0.

Why it matters now

Exploitation None reported CISA SSVC · not in CISA KEV
EPSS 0.00321 25th percentileScored 2026-11-07
Fix Partial pypdf (py-pdf): 6.21.0pypdf (PyPI): 6.21.0Red Hat: 7 without a fix

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
None
Automatable
No
Technical impact
Partial

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
py-pdfpypdfbefore 6.21.06.21.0Patch availableCNA
—pypdf (PyPI)before 6.21.06.21.0Patch availableGHSA-cgf9-327m-v77c
  • pypdf Vendorpy-pdf Affected before 6.21.0 Fixed in 6.21.0 Patch available CNA
  • pypdf (PyPI) Vendor— Affected before 6.21.0 Fixed in 6.21.0 Patch available GHSA-cgf9-327m-v77c

CPE configurations NVD · 1

CPEVersionsRoleVendor
cpe:2.3:a:py-pdf:pypdf:*:*:*:*:*:python:*:*before 6.21.0Vulnerablepy-pdf
  • cpe:2.3:a:py-pdf:pypdf:*:*:*:*:*:python:*:* Versions before 6.21.0 Vulnerable ·py-pdf

Remediation

The PyPI pypdf package is fixed in version 6.21.0. Red Hat lists Red Hat Ansible Automation Platform 2 and Red Hat Quay 3 as affected with no fix planned, and Ansible Automation Orchestrator 2026, Lightspeed Core, OpenShift Lightspeed, Red Hat Enterprise Linux AI (RHEL AI) 3 and Red Hat OpenShift AI (RHOAI) as affected with no plan available.

Written with Claude Haiku 5.5 from the sources below · 2026-10-30

  • Fix · CNA pypdf (py-pdf) Fixed in 6.21.0
  • Fix · GHSA-cgf9-327m-v77c pypdf (PyPI) Fixed in 6.21.0 Advisory →

Vendor assessments

Red Hat

Red Hat rating: Moderate. Red Hat's page for this CVE →

ProductStatusPlan or fix
Ansible Automation Orchestrator 2026AffectedNo fix yet: Fix deferred
Lightspeed CoreAffectedNo fix yet: Fix deferred
OpenShift LightspeedAffectedNo fix yet: Fix deferred
Red Hat Ansible Automation Platform 2AffectedNo fix planned: Out of support scope
Red Hat Enterprise Linux AI (RHEL AI) 3AffectedNo fix yet: Fix deferred
Red Hat OpenShift AI (RHOAI)AffectedNo fix yet: Fix deferred
Red Hat Quay 3AffectedNo fix planned: Out of support scope

Timeline

  1. 2026-10-21 Threatist record created from CVE-2026-113791
  2. 2026-10-22 Affected versions changed · Red Hat
  3. 2026-10-22 CVSS score added · Red Hat
  4. 2026-10-22 Alias added: GHSA-cgf9-327m-v77c
  5. 2026-10-22 Fix available: PyPI/[email protected] · GHSA-cgf9-327m-v77c
  6. 2026-10-22 CVSS score added · GHSA-cgf9-327m-v77c
  7. 2026-10-22 Weakness changed · GHSA-cgf9-327m-v77c
  8. 2026-10-22 6 new references · GHSA-cgf9-327m-v77c
  9. 2026-10-23 Priority changed: MEDIUM → LOW
  10. 2026-10-30 CISA SSVC decision points changed
  11. 2026-11-05 CVSS score added · NVD

References

  • TI-2023-18601 Infinite Loop when reading malformed objects in pypdf CVSS 3.1MEDIUM 6.5
  • TI-2023-18305 Infinite Loop when a comment isn't followed by a character in pypdf CVSS 3.1MEDIUM 6.2
  • TI-2026-42743 pypdf: Possible infinite loop for not terminated inline images CVSS 4.0HIGH 8.7
  • TI-2026-42742 pypdf: Possible infinite loop for not terminated inline images (ASCII85 and ASCIIHex filter) CVSS 4.0HIGH 8.7
  • TI-2026-65557 pypdf: Possible large memory usage when retrieving alphabetical page labels CVSS 4.0HIGH 8.7
  • TI-2026-65556 pypdf: Possible long runtimes with large amount of embedded files CVSS 4.0HIGH 8.7
See all 65 →

Sources