Infinite loop in pypdf when parsing crafted incomplete PDF files
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- Passive
- Attack complexity
- Low
- Attack requirements
- None
- 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-835.
Summary
pypdf before 6.21.4 can enter an infinite loop while opening a crafted incomplete PDF whose standard cross-reference table reaches the end of the file without a trailer. The trailer search repeatedly rewinds to the same stream position instead of stopping, which is CWE-835 and blocks the processing thread. An attacker needs a victim to open the crafted file, and the result is a denial of service.
Written with Claude Haiku 5.5 from the sources below · 2026-11-05
Description from the CNA
pypdf is a free and open-source pure-python PDF library. Prior to 6.21.4, pypdf can enter an infinite loop while opening a crafted incomplete PDF whose standard cross-reference table reaches the end of the file without a trailer. The trailer search can repeatedly rewind to the same stream position instead of terminating when parsing makes no progress, blocking the processing thread. This issue is fixed in version 6.21.4.
Why it matters now
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
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| py-pdf | pypdf | before 6.21.4 | 6.21.4 | Patch available | CNA |
| — | pypdf (PyPI) | before 6.21.4 | 6.21.4 | Patch available | GHSA-5849-834g-hvw5 |
- pypdf Vendorpy-pdf Affected before 6.21.4 Fixed in 6.21.4 Patch available CNA
- pypdf (PyPI) Vendor— Affected before 6.21.4 Fixed in 6.21.4 Patch available GHSA-5849-834g-hvw5
Remediation
Upgrade pypdf to version 6.21.4, which fixes the issue in both the py-pdf pypdf product and the PyPI package. Red Hat lists these products as affected without a fix: Ansible Automation Orchestrator 2026 (no fix available), Lightspeed Core (no fix available), OpenShift Lightspeed (no fix available), Red Hat Ansible Automation Platform 2 (no fix planned), Red Hat Enterprise Linux AI (RHEL AI) 3 (no fix available), and other products.
Written with Claude Haiku 5.5 from the sources below · 2026-11-05
- Fix · CNA pypdf (py-pdf) Fixed in 6.21.4
- Fix · GHSA-5849-834g-hvw5 pypdf (PyPI) Fixed in 6.21.4 Advisory →
Vendor assessments
Red Hat
Red Hat rating: Moderate. Red Hat's page for this CVE →
| Product | Status | Plan or fix |
|---|---|---|
| Ansible Automation Orchestrator 2026 | Affected | No fix yet: Fix deferred |
| Lightspeed Core | Affected | No fix yet: Fix deferred |
| OpenShift Lightspeed | Affected | No fix yet: Fix deferred |
| Red Hat Ansible Automation Platform 2 | Affected | No fix planned: Out of support scope |
| Red Hat Enterprise Linux AI (RHEL AI) 3 | Affected | No fix yet: Fix deferred |
| Red Hat OpenShift AI (RHOAI) | Affected | No fix yet: Fix deferred |
| Red Hat Quay 3 | Affected | No fix planned: Out of support scope |
Timeline
- 2026-10-29 Threatist record created from CVE-2026-119203
- 2026-10-30 Affected versions changed · Red Hat
- 2026-10-30 CVSS score added · Red Hat
- 2026-10-30 CISA SSVC decision points changed
- 2026-10-30 Priority changed: MEDIUM → LOW
- 2026-10-30 Alias added: GHSA-5849-834g-hvw5
- 2026-10-30 Fix available: PyPI/[email protected] · GHSA-5849-834g-hvw5
- 2026-10-30 CVSS score added · GHSA-5849-834g-hvw5
- 2026-10-30 Weakness changed · GHSA-5849-834g-hvw5
- 2026-10-30 6 new references · GHSA-5849-834g-hvw5
- 2026-11-02 CVSS score added · NVD
References
Patch 3
More py-pdf Pypdf vulnerabilities
- 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
Sources
- CVE-2026-119203 · CVE Program
- CVE-2026-119203 · NVD
- FIRST EPSS
- GHSA-5849-834g-hvw5 · GitHub Advisory Database · CC BY 4.0
- CVE-2026-119203 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences