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.
Published: 2026-10-19
Score: 8.7 High
EPSS: n/a
KEV: No
Impact: Denial of Service
Action: Update Pillow
AI Analysis

Impact

A GIF image containing a crafted frame can trigger Pillow’s decompress‑bomb detection, raising a DecompressionBombError. If the exception is caught and the same image object is used again, the library retains the rejected frame’s dimensions. Subsequent seek or load operations then allocate memory based on these oversized dimensions, potentially exhausting available memory and causing the application to become unresponsive. The weakness is reflected in CWE‑400 (Uncontrolled Resource Consumption) and CWE‑770 (Allocation of Resources Without Limits).

Affected Systems

Python applications that use Pillow versions from 9.2.0 up to and including 12.9.9 are vulnerable when they allow GIFs from untrusted sources to be loaded and processed without upgrading to version 13.0.0 or later, which contains the fix.

Risk and Exploitability

The CVSS score of 8.7 indicates a high severity of denial‑of‑service potential. Exploitation requires delivery of a malicious GIF file to the target application; the likelihood of exploitation is uncertain due to the lack of an EPSS score, but it could be attempted by attackers with any access to provide image input. The flaw is not listed in the CISA KEV catalog, so no known widespread exploit exists at this time. The attack vector is inferred to be either local, if the attacker can supply files, or remote, if the application receives GIFs over the network.

Generated by OpenCVE AI on October 20, 2026 at 00:20 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade Pillow to version 13.0.0 or later to apply the fixed image‑size handling.
  • In application code, catch DecompressionBombError and discard the impacted image object rather than reusing it.
  • Apply additional input validation to limit image size or dimensions before the image is handed to Pillow.

Generated by OpenCVE AI on October 20, 2026 at 00:20 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Tue, 20 Oct 2026 00:30:00 +0000

Type Values Removed Values Added
References
Metrics threat_severity

None

cvssV3_1

{'score': 7.5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H'}

threat_severity

Important


Mon, 19 Oct 2026 23:00:00 +0000

Type Values Removed Values Added
First Time appeared Python-pillow
Python-pillow pillow
Vendors & Products Python-pillow
Python-pillow pillow

Mon, 19 Oct 2026 21:30:00 +0000

Type Values Removed Values Added
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.
Title Pillow: GIF seek keeps rejected size after DecompressionBombError, allowing DoS
Weaknesses CWE-400
CWE-770
References
Metrics cvssV4_0

{'score': 8.7, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N'}


Subscriptions

Python-pillow Pillow
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-10-19T21:12:37.401Z

Reserved: 2026-10-19T16:58:51.959Z

Link: CVE-2026-112400

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-10-19T22:17:07.367

Modified: 2026-10-19T22:17:07.367

Link: CVE-2026-112400

cve-icon Redhat

Severity : Important

Publid Date: 2026-10-19T21:12:37Z

Links: CVE-2026-112400 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-10-20T00:30:07Z

Weaknesses
  • CWE-400

    Uncontrolled Resource Consumption

  • CWE-770

    Allocation of Resources Without Limits or Throttling