PatchSiren cyber security CVE debrief
CVE-2026-113786 py-pdf CVE debrief
CVE-2026-113786: pypdf Unvalidated JPEG Image Data Loading. The pypdf library is vulnerable to unvalidated JPEG image data loading, allowing an attacker to craft a PDF that leads to arbitrary image parsers being called. This requires the optional Pillow dependency to be installed. Defenders should assess exposure and prioritize upgrading to version 6.21.1 or later. The vulnerability involves loading an image claiming to use the /DCTDecode filter (JPEG data). Users without the Pillow dependency installed are not affected.
- Vendor
- py-pdf
- Product
- pypdf
- CVSS
- LOW 2.3
- CISA KEV
- Not listed in stored evidence
- Original CVE published
- 2026-10-21
- Original CVE updated
- 2026-10-21
- Advisory published
- 2026-10-21
- Advisory updated
- 2026-10-21
Who should care
Defenders responsible for systems using the pypdf library, especially those with the Pillow dependency installed, should assess exposure and prioritize upgrading to version 6.21.1 or later.
Why it matters
Defenders should care about CVE-2026-113786 because it allows an attacker to craft a PDF that can lead to arbitrary image parsers being called, potentially affecting systems that process JPEG images in PDFs, especially those with the Pillow dependency installed. The vulnerability requires verification of exposure, and defenders should prioritize upgrading to pypdf version 6.21.1 or later, or applying changes from PR #4222 if an upgrade is not possible.
- Potential for arbitrary image parser invocation
- Required verification of Pillow dependency presence
- Need for upgrade or patch application
- Possible impact on systems processing JPEG images in PDFs
Technical summary
The pypdf library is vulnerable to unvalidated JPEG image data loading. An attacker can craft a PDF that leads to arbitrary image parsers being called by loading an image claiming to use the /DCTDecode filter (JPEG data). This requires the optional Pillow dependency to be installed. The vulnerability allows for potential invocation of arbitrary image parsers, requiring verification of exposure and prioritization of upgrading to pypdf version 6.21.1 or later, or applying changes from PR #4222 if an upgrade is not possible.
Defensive priority
Defenders should prioritize upgrading to pypdf version 6.21.1 or later to address the unvalidated JPEG image data loading vulnerability.
Recommended defensive actions
- Upgrade to pypdf version 6.21.1 or later
- Apply changes from PR #4222 if upgrade is not possible
- Verify if Pillow dependency is installed and consider its implications
- Confirm whether affected product deployments exist in managed environments and assign an owner for follow-up
- Review the supplied official advisory or CVE record to validate affected scope, severity, and vendor guidance
- Plan vendor-supported updates or mitigations through normal change control where exposure is confirmed
- Review compensating controls for exposed systems while remediation is scheduled and verified
Evidence notes
The vulnerability allows an attacker to craft a PDF that leads to arbitrary image parsers being called by loading an image claiming to use the /DCTDecode filter (JPEG data). Users without the optional Pillow dependency installed are not affected.
Sources and references
Verified primary and authoritative sources
-
CVE-2026-113786 CVE Program record
Publisher, destination, and source semantics verified
URL: https://www.cve.org/CVERecord?id=CVE-2026-113786
CVE Program - Official CVE Program record with source-provided CVE metadata.
-
CVE-2026-113786 NVD vulnerability detail
Publisher, destination, and source semantics verified
URL: https://nvd.nist.gov/vuln/detail/CVE-2026-113786
NIST National Vulnerability Database - Official NIST NVD detail page and source-specific vulnerability assessment.
Supplemental references
-
pypdf: Unvalidated JPEG image data loading
Unverified legacy reference
URL: https://storage.googleapis.com/osv-vulnerabilities/PyPI/GHSA-5hx5-vpf9-5wcv.json
osv_dev
-
Source reference
Unverified legacy reference
URL: https://github.com/py-pdf/pypdf/security/advisories/GHSA-5hx5-vpf9-5wcv
Supplemental source
-
Source reference
Unverified legacy reference
URL: https://github.com/py-pdf/pypdf/pull/4222
Supplemental source
-
Source reference
Unverified legacy reference
URL: https://github.com/py-pdf/pypdf/commit/512d8eb94eb04be1d1c90504e6da2dcef8679e07
Supplemental source
-
Source reference
Unverified legacy reference
URL: https://github.com/py-pdf/pypdf
Supplemental source
-
Source reference
Unverified legacy reference
URL: https://github.com/py-pdf/pypdf/releases/tag/6.21.1
Supplemental source
Methodology and review provenance
AI-assisted synthesis based on stored public vulnerability evidence. System validation, approval state, and publication status do not by themselves establish human review of this revision. PatchSiren helps prioritize defensive review and does not prove exposure or remediation on any system.