Skip to main content
VulnerabilityPublished Updated

CVE-2026-22690: py-pdf pypdf · Uncontrolled Resource Consumption

Affects py-pdf pypdfSource CVE Database V5

0

Not known to be exploited · CVSS 2.7 Low : upgrade to 6.6.0 when convenient.

Data as of 26 Oct 2026, 11:07 UTC

CVSS 4.0 base score
2.7Low
How severe the flaw is on the 0–10 CVSS scale.
EPSS
0.4% chance of exploitation in 30 days – higher than 37% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
Patch
Available – fixed in 6.6.0
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N/E:U

Exploitation evidence

  1. Disclosed: evidence found.

    CVE published 10 Jan 2026

  2. Detectable: no evidence on record.

    No public nuclei template indexed

  3. Weaponised: no evidence on record.

    No public exploit code indexed in Metasploit or Exploit-DB

  4. Exploited in the wild: no evidence on record.

    Not in CISA KEV and no source reports exploitation

  5. Observed by OffSeq Mirage: no evidence on record.

    No attack traffic recorded by OffSeq Mirage sensors

A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 26 Oct 2026.

What to do

Upgrade py-pdf pypdf to 6.6.0.

Affected software

ProductAffectedFixed in
py-pdfpypdfAffected
  • <6.6.0
Fixed in
  • 6.6.0
PyPIpypdfpkg:pypi/pypdfOther threatsAffected
  • <6.6.0
Fixed in
  • 6.6.0

Check your own hosts for these packages with threat-finder (opens in a new tab), our free open-source scanner.

AI-suggested

To mitigate this vulnerability, European organizations should immediately upgrade all instances of pypdf to version 6.6.0 or later, where the issue is patched. Additionally, implement strict input validation and sanitization for all PDF files before processing, including rejecting PDFs missing mandatory structural elements like the /Root object. Employ resource usage monitoring and limits on PDF parsing operations to detect and prevent excessive CPU or memory consumption. Consider running PDF processing tasks in isolated environments or containers with resource constraints to limit the impact of potential abuse. For web-facing services, apply rate limiting and file size restrictions on PDF uploads to reduce attack surface. Regularly audit and update dependencies to ensure all libraries are current and vulnerabilities are addressed promptly. Finally, educate developers and system administrators about this vulnerability to ensure awareness and proactive defense.

Description

### Impact An attacker who exploits this vulnerability can craft a PDF which leads to possibly long runtimes for actually invalid files. This can be achieved by omitting the `/Root` entry in the trailer, while using a rather large `/Size` value. Only the non-strict reading mode is affected. ### Patches This has been fixed in [pypdf==6.6.0](https://github.com/py-pdf/pypdf/releases/tag/6.6.0). ### Workarounds ```python from pypdf import PdfReader, PdfWriter # Instead of reader = PdfReader("file.pdf") # use the strict mode: reader = PdfReader("file.pdf", strict=True) # Instead of writer = PdfWriter(clone_from="file.pdf") # use an explicit strict reader: writer = PdfWriter(clone_from=PdfReader("file.pdf", strict=True)) ``` ### Resources This issue has been fixed in #3594.

References

Community reviews

Loading reviews…