GHSA-r73j-pqj5-w3x7MediumCVSS 5.5

Pillow has a PDF Parsing Trailer Infinite Loop (DoS)

Published
May 4, 2026
Last Modified
May 13, 2026

🔗 CVE IDs covered (1)

📋 Description

Impact

An attacker can supply a malicious PDF that causes the process to hang indefinitely, consuming 100% CPU and making the application unresponsive.

Patches

Patched version: 12.2.0.

PdfParser (introduced in Pillow 4.2.0) follows Prev pointers in PDF trailers to read cross-reference sections. If a trailer's Prev pointer references an offset that has already been processed — either pointing to itself or forming a longer cycle — the parser enters an infinite loop. Pillow now tracks previously processed trailer offsets and raises an error if a cycle is detected.

Workarounds

Use any version but the affected versions: >= 4.2.0, < 12.2.0

Resources

  • Fix: https://github.com/python-pillow/Pillow/pull/9519

🎯 Affected products1

  • pip/pillow:>= 4.2.0, < 12.2.0

🔗 References (6)