CVE-2026-33123: CWE-400: Uncontrolled Resource Consumption in py-pdf pypdf
pypdf is a free and open-source pure-python PDF library. Versions prior to 6.9.1 allow an attacker to craft a malicious PDF which leads to long runtimes and/or large memory usage. Exploitation requires accessing an array-based stream with many entries. This issue has been fixed in version 6.9.1.
AI Analysis
Technical Summary
The vulnerability identified as CVE-2026-33123 affects the py-pdf pypdf library, a pure Python library widely used for PDF manipulation and parsing. Versions prior to 6.9.1 contain a flaw related to uncontrolled resource consumption (CWE-400) and improper resource management (CWE-407). Specifically, when pypdf processes a crafted PDF containing an array-based stream with a large number of entries, it can cause excessive CPU usage and memory allocation. This leads to significantly prolonged processing times and potential exhaustion of system resources, effectively resulting in a denial-of-service (DoS) condition. The vulnerability does not require any privileges, authentication, or user interaction to be exploited; simply parsing the malicious PDF triggers the issue. The root cause lies in the inefficient handling of large array streams within the PDF structure, which pypdf fails to limit or manage properly. The maintainers addressed this issue in version 6.9.1 by implementing safeguards to prevent excessive resource consumption during parsing. No public exploits have been reported, but the vulnerability poses a risk to any application or service that uses vulnerable pypdf versions to process untrusted PDF files.
Potential Impact
Organizations using pypdf versions prior to 6.9.1 in their software stacks are at risk of denial-of-service attacks via malicious PDFs. This can impact web applications, document processing services, automated PDF workflows, and any system that parses PDFs without strict input validation. The resource exhaustion can degrade system performance, cause application crashes, or lead to service outages, impacting availability. Since pypdf is a popular open-source library, the vulnerability could affect a wide range of industries including finance, legal, healthcare, and government sectors that rely on PDF processing. Although no data confidentiality or integrity compromise is indicated, the availability impact can disrupt business operations and cause reputational damage. The ease of exploitation—requiring only a crafted PDF—makes this vulnerability a practical concern for organizations accepting PDFs from external or untrusted sources.
Mitigation Recommendations
The primary mitigation is to upgrade all instances of pypdf to version 6.9.1 or later, where the vulnerability is fixed. Organizations should audit their software dependencies to identify and update vulnerable pypdf versions promptly. Additionally, implement strict input validation and sandboxing for PDF processing components to limit resource usage and isolate failures. Employ resource limits (CPU, memory) at the application or container level to prevent a single PDF from exhausting system resources. Monitor PDF processing logs and system metrics for abnormal spikes in resource consumption that may indicate exploitation attempts. Where feasible, restrict PDF uploads or processing to trusted sources or apply PDF sanitization tools before parsing. Finally, maintain an incident response plan to quickly address potential denial-of-service incidents related to PDF processing.
Affected Countries
United States, Germany, United Kingdom, France, Canada, Australia, Japan, South Korea, India, Brazil
CVE-2026-33123: CWE-400: Uncontrolled Resource Consumption in py-pdf pypdf
Description
pypdf is a free and open-source pure-python PDF library. Versions prior to 6.9.1 allow an attacker to craft a malicious PDF which leads to long runtimes and/or large memory usage. Exploitation requires accessing an array-based stream with many entries. This issue has been fixed in version 6.9.1.
AI-Powered Analysis
Technical Analysis
The vulnerability identified as CVE-2026-33123 affects the py-pdf pypdf library, a pure Python library widely used for PDF manipulation and parsing. Versions prior to 6.9.1 contain a flaw related to uncontrolled resource consumption (CWE-400) and improper resource management (CWE-407). Specifically, when pypdf processes a crafted PDF containing an array-based stream with a large number of entries, it can cause excessive CPU usage and memory allocation. This leads to significantly prolonged processing times and potential exhaustion of system resources, effectively resulting in a denial-of-service (DoS) condition. The vulnerability does not require any privileges, authentication, or user interaction to be exploited; simply parsing the malicious PDF triggers the issue. The root cause lies in the inefficient handling of large array streams within the PDF structure, which pypdf fails to limit or manage properly. The maintainers addressed this issue in version 6.9.1 by implementing safeguards to prevent excessive resource consumption during parsing. No public exploits have been reported, but the vulnerability poses a risk to any application or service that uses vulnerable pypdf versions to process untrusted PDF files.
Potential Impact
Organizations using pypdf versions prior to 6.9.1 in their software stacks are at risk of denial-of-service attacks via malicious PDFs. This can impact web applications, document processing services, automated PDF workflows, and any system that parses PDFs without strict input validation. The resource exhaustion can degrade system performance, cause application crashes, or lead to service outages, impacting availability. Since pypdf is a popular open-source library, the vulnerability could affect a wide range of industries including finance, legal, healthcare, and government sectors that rely on PDF processing. Although no data confidentiality or integrity compromise is indicated, the availability impact can disrupt business operations and cause reputational damage. The ease of exploitation—requiring only a crafted PDF—makes this vulnerability a practical concern for organizations accepting PDFs from external or untrusted sources.
Mitigation Recommendations
The primary mitigation is to upgrade all instances of pypdf to version 6.9.1 or later, where the vulnerability is fixed. Organizations should audit their software dependencies to identify and update vulnerable pypdf versions promptly. Additionally, implement strict input validation and sandboxing for PDF processing components to limit resource usage and isolate failures. Employ resource limits (CPU, memory) at the application or container level to prevent a single PDF from exhausting system resources. Monitor PDF processing logs and system metrics for abnormal spikes in resource consumption that may indicate exploitation attempts. Where feasible, restrict PDF uploads or processing to trusted sources or apply PDF sanitization tools before parsing. Finally, maintain an incident response plan to quickly address potential denial-of-service incidents related to PDF processing.
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- GitHub_M
- Date Reserved
- 2026-03-17T20:35:49.926Z
- Cvss Version
- 4.0
- State
- PUBLISHED
Threat ID: 69bd945ce32a4fbe5fbc7f83
Added to database: 3/20/2026, 6:39:24 PM
Last enriched: 3/20/2026, 6:54:06 PM
Last updated: 3/20/2026, 10:21:33 PM
Views: 8
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.