CVE-2026-112400 ยท GHSA-65qm-jvmh-6pqg
Pillow: GIF seek keeps rejected size after DecompressionBombError, allowing DoS
- Risk score
- 66/100
- CVSS
- 8.7 v4.0
- Exploit chance (30 days)
- 0.3%
- Published
- 19 Oct 2026
Open in the live forecast Today's forecast
What to know
- What it is
- Pillow, a Python imaging library, has a vulnerability from version 9.2.0 to 13.0.0 where a crafted GIF can cause a DoS by exhausting memory. An attacker could exploit this by crafting a GIF that would cause the application to allocate memory according to the rejected dimensions, leading to a denial of service.
- Affected
- {'products': ['Pillow'], 'packages': ['Pillow'], 'versions': ['>= 9.2.0, < 13.0.0']}
- Fix
- Upgrade to version 13.0.0 or later
- Exploitation
- No known exploitation
Why it is Amber
- CVSS 8.7 high
- Remotely exploitable without logging in
- On your watchlist: PyPI
Affected packages
| Package | Ecosystem | Vulnerable | Fixed in |
|---|---|---|---|
| Pillow | pip | >= 9.2.0, < 13.0.0 | 13.0.0 |
References
- https://github.com/advisories/GHSA-65qm-jvmh-6pqg
- https://github.com/python-pillow/Pillow/security/advisories/GHSA-65qm-jvmh-6pqg
- https://nvd.nist.gov/vuln/detail/CVE-2026-112400
- https://github.com/python-pillow/Pillow/commit/6faed707cfb760a4cbd726ddc8406f576cf35bf7
- https://github.com/python-pillow/Pillow/releases/tag/13.0.0
- https://github.com/advisories/GHSA-65qm-jvmh-6pqg
Original description
Pillow is a Python imaging library. From 9.2.0 until 13.0.0, Pillow can retain a rejected GIF frame size after a decompression-bomb exception. In GifImageFile._seek, a crafted GIF can leave rejected dimensions stored after Image.DecompressionBombError; if an application catches that exception and continues processing the same image object, later seek or load operations allocate according to those dimensions and can exhaust memory, denying service. This issue is fixed in version 13.0.0.
Last activity 19 Oct 2026. Patch Forecast updates every hour.