CVE Tools

Three Critical Pillow CVEs: RCE and Heap Overflows in Python’s Imaging Library – CVE-2026-112900 CVE-2026-112393 CVE-2026-112403

OX SecurityBy Nir Zadok3 min read

Our summary

Researchers disclosed three critical flaws, each rated CVSS 9.2, in Pillow, Python's dominant image-processing library with roughly 436 million monthly downloads. CVE-2026-112900 abuses Pillow's EPS handling, which shells out to Ghostscript: an attacker-controlled filename beginning with a dash can be interpreted as a Ghostscript option, and combined with Ghostscript's @argfile mechanism this allows arbitrary command execution even with -dSAFER enabled. CVE-2026-112393 affects TIFF saving to file-like objects such as io.BytesIO, where a buffer-growth calculation uses the wrong size reference, causing libtiff to write past the allocated heap buffer for outputs over 64 KiB and potentially leak stale heap memory. CVE-2026-112403 hits the JPEG decoder, where a crafted 8-bit lossless (SOF3) image processed through draft() or thumbnail() can make libjpeg write scanlines wider than the allocated buffer, leading to a heap overflow and possible code execution. All three affect Pillow versions before 13.0.0 and are fixed in that release, which users and maintainers of containers, web frameworks and ML pipelines relying on Pillow should install immediately.

Read at OX Security

Below is the opening; the full story is at OX Security.

From OX Security

Three CVSS 9.2 vulnerabilities in the Python imaging library, allow remote code execution and heap corruption via a single malicious image upload

Overview

Three critical Pillow vulnerabilities (CVSS 9.2, disclosed 2026-10-19) let a crafted EPS, TIFF or JPEG file trigger command execution or heap corruption in any Python service that processes user-supplied images. All are fixed in Pillow 13.0.0. The excerpts below are from the vulnerable source.…

Continue at OX Security

Worried this affects your company?

Discuss a security assessment of your internet-facing systems. Scope agreed before testing.

Check my exposure