CVE-2026-112406: Pillow infinite loop in PDF page rewriting

CVE-2026-112406 · Severity: high · CVSS 4 · Published 2026-10-19

Pillow is a Python library for image manipulation. When processing a specially crafted PDF with circular page tree references, the library can enter an infinite loop during page rewriting operations, consuming CPU resources indefinitely and causing denial of service to applications that process PDFs.

Technologies: pillow (PyPI), Python Pillow Pillow. Vendors: PyPI, Python Pillow.

Quick answers

Is CVE-2026-112406 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-112406 being exploited in the wild.
How severe is CVE-2026-112406?
High severity, with a CVSS score of 4, published 19 October 2026.
Which products and versions are affected?
pillow (PyPI) >= 5.1.0, < 13.0.0, ECOSYSTEM:introduced=5.1.0,fixed=13.0.0; Python Pillow Pillow 5.1.0 to 12.3.2.
Is there a fix for CVE-2026-112406?
Yes. pillow (PyPI): upgrade to 13.0.0 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-112406 attacked?
It is attacked over the network, in a software library.
Am I affected by CVE-2026-112406?
Check whether you run pillow (PyPI) or Python Pillow Pillow at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

How to fix

  • pillow (PyPI): upgrade to 13.0.0 or later
    pip install "pillow>=13.0.0"

Technical details

PdfParser.rewrite_pages() follows Parent relationships in PDF page trees without detecting cycles, allowing a crafted cyclic PDF to trigger an infinite loop. An attacker can supply such a PDF to an application that appends images to PDFs, causing the worker thread to consume full CPU and denying service. The vulnerability is a logic flaw in page tree traversal that lacks cycle detection.

Affected products

  • Python Pillow Pillow 5.1.0 to 12.3.2

Identifiers

  • CVE-2026-112406
  • GHSA-f2g6-542v-9j58

Timeline

  • 2026-10-19: disclosed
  • 2026-10-16: patched: Fix released in Pillow 13.0.0

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.