CVE-2026-54058
Pillow is a Python imaging library
- Risk score
- 88/100
- CVSS
- 9.1 v3.1
- Exploit chance (30 days)
- 0.5%
- Published
- 14 Jul 2026
Open in the live forecast Today's forecast
What to know
- What it is
- Pillow library has a vulnerability in loading uncompressed McIdas AREA images, allowing attackers to disclose adjacent process memory. This can occur when using Image.tobytes(), getpixel, convert, or save functions.
- Affected
- {'product': 'pillow', 'package': None, 'version': 'prior to 12.3.0'}
- Fix
- Upgrade to version 12.3.0 or later
- Exploitation
- Public proof of concept
Story map
At a glance
Pillow: Red, act today. Pillow has a vulnerability in its Ghostscript call, allowing argument injection, which could lead to remote code execution. An attacker could inject Ghostscript arguments by controlling the filename.
The flaws
- CVE-2026-54058: Pillow is a Python imaging library (CVSS 9.1 · EPSS 1%)
- CVE-2026-112900: Argument Injection in Ghostscript call, potentially leading into RCE (CVSS 9.8 · EPSS 1%)
- CVE-2026-112393: Heap buffer overflow in _tiffWriteProc when saving TIFF to BytesIO (CVSS 9.8 · EPSS 1%)
- CVE-2026-112403: Heap buffer overflow in ImagingJpegDecode (CVSS 9.8 · EPSS 1%)
The fix
Upgrade Pillow: 12.3.0 · 13.0.0 or later on your release line
Who is exposed: {'products': ['Pillow'], 'packages': ['Pillow'], 'versions': ['>= 2.6.0, < 13.0.0']}
Where it stands
- Public proof of concept
- 1 outlet covering it
How it unfolded
- 23 Oct, The Hacker News (press): Critical Flaw in Python’s Popular Pillow Image Library Allows Code Execution via a Crafted Image
- 4 Nov, Ubuntu security notices (official): USN-8999-1: Pillow vulnerabilities
Connects to
- Same weakness: Out-of-bounds read (CWE-125). 399 other warnings in 30 days
- Same product: Earlier Pillow warnings. 45 in the last 90 days
Why it is Red
- CVSS 9.1 critical
- Public exploit or proof of concept referenced
- Remotely exploitable without logging in
- On your watchlist: python
- Named in a government or vendor bulletin
Government and vendor bulletins
References
- https://ubuntu.com/security/notices/USN-8999-1
- https://github.com/python-pillow/Pillow/commit/6a8de891fb00968e5ea79bfa84368ed90b3cfc1d
- https://github.com/python-pillow/Pillow/pull/9719
- https://github.com/python-pillow/Pillow/releases/tag/12.3.0
- https://github.com/python-pillow/Pillow/security/advisories/GHSA-62p4-gmf7-7g93
- https://github.com/python-pillow/Pillow/security/advisories/GHSA-62p4-gmf7-7g93
Original description
Pillow is a Python imaging library. Prior to 12.3.0, when Pillow loads an uncompressed McIdas AREA image from a filename through the mmap raw codec path, attacker-controlled header words can set a row stride smaller than the natural row width, causing pixel access such as Image.tobytes(), getpixel, convert, or save to read beyond the mapped region and disclose adjacent process memory or fault. This issue is fixed in version 12.3.0.
Last activity 4 Nov 2026. Patch Forecast updates every hour.