CVE-2026-96640

HIGH
MEDIUM Priority: 0.05 BB Relevance: 77/100
Published: 2026-10-21 Modified: 2026-10-28 First seen: 2026-10-29 Status: active

Attack Surface

Network Low Complexity No Auth No Interaction

CVSS Vector Breakdown

AV: Network
AC: Low
PR: None
UI: None
AT: Present
VC: None
VI: None
VA: High

Description

Pillow is a Python imaging library. From 5.1.0 until 13.0.0, PdfParser.linearize_page_tree() in src/PIL/PdfParser.py treats a PDF /Pages graph as a tree without tracking duplicate indirect references. When Image.save(..., format="PDF", append=True) processes an attacker-controlled existing PDF whose /Kids arrays repeatedly reference the same child /Pages node, Pillow expands the shared subtree as distinct pages. A compact malformed PDF can therefore create exponentially many page references and consume disproportionate CPU before the append completes. This issue is fixed in version 13.0.0.

Weakness Classification (2)

Affected Software (4)

VendorProductVersion
python pillow 5.1.0 – 13.0.0
python pillow 5.1.0 – 13.0.0
python-pillow Pillow >= 5.1.0, < 13.0.0
python-pillow Pillow >= 5.1.0, < 13.0.0

Bug Bounty Relevance

77 / 100
✓ Network accessible
✓ No authentication
✓ Low complexity
✓ No user interaction

CVSS Score

8.2 / 10.0 v4.0
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N

EPSS — Exploitation Probability

0.58%
Raw Score 0.005810
Percentile 47.7%
Date 2026-10-29

EPSS Trend

2026-10-29
0.00581
2026-10-28
0.00581

Intelligence Sources

mitre ref →
nvd ref →