VDB

CVE-2026-96640

CVE-2026-96640 PUBLISHED CVSS 8.2 HIGH

Reported by GitHub_M · Published October 21, 2026

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.

Risk Scores

CVSS 4.0
8.2
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

Affected Products

VendorProductVersions
python-pillowPillow>= 5.1.0, < 13.0.0
chainguardsuperset-fips-6.10
PyPIPillow5.1.0
chainguardnemo-gym0
chainguardnemo-rl-cuda-13.00
python-pillowPillow5.1.0
chainguardpy3-pytorch-cuda-13.00

Timeline

  • Oct 21, 2026 CVE Published
  • Oct 22, 2026 EPSS Score
  • Oct 22, 2026 Coalition ESS Score
  • Oct 25, 2026 EPSS Score
  • Oct 29, 2026 EPSS Score
  • Oct 30, 2026 EPSS Score
  • Oct 30, 2026 Distribution Patch
  • Oct 30, 2026 Security Advisory
  • Oct 30, 2026 Security Advisory
  • Nov 3, 2026 Distribution Patch
Open in Interactive Console →
$ Console Community · 50/day Open console ›