Pillow 13.0.0 fixes critical image-handling flaws, including EPS code execution
CVE-2026-112900 affects Pillow 2.6.0 through 12.3.0 when Ghostscript is installed; none of the flaws is known to be under attack.
Ghostscript argument injection in Pillow EPS handling
Pillow 2.6.0 through versions before 13.0.0 passes a caller-controlled EPS filename to Ghostscript after -f without making it a safe absolute path. A name starting with a hyphen can be read as a Ghostscript option. Command execution needs a leading @ argument-file name plus control of that text file; the chain works with default -dSAFER. Apps that open attacker-chosen EPS filenames are affected.
What to do: Upgrade Pillow to 13.0.0, which fixes unsafe Ghostscript filename handling for EPS input.
| Product | Affected | Fixed in |
|---|---|---|
| Pillow | 2.6.0 until 13.0.0 | 13.0.0 |
Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.
Pillow is a Python imaging library. From 2.6.0 until 13.0.0, Pillow is vulnerable to argument injection when invoking Ghostscript for EPS input. EpsImagePlugin.Ghostscript passes a caller-controlled input filename after -f without converting it to a safe absolute path, so a name beginning with a hyphen can be interpreted as a Ghostscript option. An attacker who controls the filename can inject Ghostscript arguments. Arbitrary command execution specifically requires a leading @ argument-file filename and control of the referenced text file containing additional Ghostscript arguments; the reported chain reproduces with the default -dSAFER invocation. This issue is fixed in version 13.0.0.
CVE-2026-112900 affects Pillow 2.6.0 through 12.3.0 when Ghostscript is installed; none of the flaws is known to be under attack.
Today 2.1K readers · 11K views · 8.7K reads · all time 157K views