Back to CVE records
High 8.2Published Oct 21, 2026

CVE-2026-96640Pillow PDF append accepts malformed shared page-tree DAG causing resource exhaustion

Updated under an hour ago ()

Does this affect you?

It affects python-pillow Pillow and 1 other product. Add what you run to find out whether that includes you.

EPSS puts the chance of exploitation in the next 30 days at 0.52%, higher than 44% of scored CVEs.

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.

CVSS
8.2 HIGH (v4.0, CNA)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
Weakness (CWE)
CWE-400, CWE-407
Known exploited
Not in CISA's KEV catalog
EPSS (exploitation in the next 30 days)
0.52% (percentile 44)
Assigned by
GitHub_M
NVD analysis
Analyzed
Record last updated
Oct 27, 2026
First seen by InfoSec Signals
Oct 21, 2026

Affected products

Affected products
python-pillow Pillow
python_pillow:pillow (from the name)
from 5.1.0, < 13.0.0
CNA record
python pillow
python:pillow
from 5.1.0 before 13.0.0
NVD

References

References

The CVE record is authoritative. Products marked “from the name” were identified from the CNA's free-text names, not a CPE, and are matched less certainly. This product uses the NVD API but is not endorsed or certified by the NVD.

Your cookie choices
We use essential cookies to run this site, and, only with your consent, an advertising cookie from Google to measure whether our ads lead to sign-ups and subscriptions. See our for details.