Description
Pillow is a Python imaging library. Prior to 12.3.0, PIL/BdfFontFile.py bdf_char() read the BBX width and height field from a BDF font file and passed attacker-controlled dimensions to Image.new() without calling Image._decompression_bomb_check(), bypassing Pillow's documented decompression bomb protection and allowing excessive memory allocation. This issue is fixed in version 12.3.0.
Published: 2026-07-06
Score: 7.5 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

Pillow’s BdfFontFile module reads the width and height fields from a BDF font file and passes them to Image.new() without calling the internal decompression‑bomb check. An adversary can craft a font file with absurdly large dimensions, causing Pillow to allocate vast amounts of memory and potentially exhaust system resources or crash the process. This flaw qualifies as a memory‑allocation vulnerability (CWE-770, CWE-789).

Affected Systems

The vulnerability affects the Pillow imaging library distributed by python‑pillow under the name Pillow. Any installation of Pillow older than version 12.3.0 is vulnerable; the issue is fixed in 12.3.0. Systems that load untrusted BDF fonts for rendering, such as web applications, desktop image editors, or background services that import user‑supplied fonts, are at risk.

Risk and Exploitability

The CVSS score of 7.5 indicates high severity. An EPSS <1% score and absence from CISA KEV suggest exploitation is currently rare, but the attack only requires delivery of a crafted BDF file to an application that uses Pillow. Once triggered, the attacker can cause denial of service by exhausting memory resources. No additional privileges or network access beyond the ability to supply font data are needed, making the vulnerability exploitable in many realistic scenarios.

Generated by OpenCVE AI on July 23, 2026 at 14:40 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade Pillow to version 12.3.0 or newer to restore the decompression bomb check.
  • If an upgrade is not possible immediately, restrict or disable loading of BDF fonts from untrusted sources; only allow trusted fonts or modify the application to skip unsafe font types.
  • Apply operating‑system or container memory quotas (ulimit, cgroups, etc.) to limit any unexpected memory usage and mitigate the impact of large allocations.
  • Optionally reduce Pillow’s MAX_IMAGE_PIXELS configuration to a conservative threshold to provide an additional safeguard against oversized images.

Generated by OpenCVE AI on July 23, 2026 at 14:40 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-45hq-cxwh-f6vc Pillow `BdfFontFile`: `Image.new()` called without `_decompression_bomb_check()` — bomb protection bypass via font loading
History

Tue, 07 Jul 2026 12:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-770
References
Metrics threat_severity

None

threat_severity

Important


Mon, 06 Jul 2026 20:45:00 +0000

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

Mon, 06 Jul 2026 20:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'poc', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Mon, 06 Jul 2026 19:15:00 +0000

Type Values Removed Values Added
Description Pillow is a Python imaging library. Prior to 12.3.0, PIL/BdfFontFile.py bdf_char() read the BBX width and height field from a BDF font file and passed attacker-controlled dimensions to Image.new() without calling Image._decompression_bomb_check(), bypassing Pillow's documented decompression bomb protection and allowing excessive memory allocation. This issue is fixed in version 12.3.0.
Title Pillow BdfFontFile`: `Image.new()` called without `_decompression_bomb_check()` — bomb protection bypass via font loading
Weaknesses CWE-789
References
Metrics 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'}


Subscriptions

Python-pillow Pillow
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-07-06T19:17:03.941Z

Reserved: 2026-06-16T18:57:40.181Z

Link: CVE-2026-55379

cve-icon Vulnrichment

Updated: 2026-07-06T19:16:40.963Z

cve-icon NVD

No data.

cve-icon Redhat

Severity : Important

Publid Date: 2026-07-06T18:52:11Z

Links: CVE-2026-55379 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-07-23T14:45:03Z

Weaknesses
  • CWE-770

    Allocation of Resources Without Limits or Throttling

  • CWE-789

    Memory Allocation with Excessive Size Value