CVE-2026-55379: Pillow decompression bomb protection bypass in BdfFontFile

CVE-2026-55379 · Severity: high · CVSS 7.5 · Published 2026-07-06

Pillow, a popular Python image processing library, is vulnerable to a 'decompression bomb' attack when processing BDF font files. An attacker can provide a specially crafted, small font file that forces the library to allocate massive amounts of system memory. This can lead to a denial-of-service (DoS) condition where the application or server crashes or becomes unresponsive due to memory exhaustion.

Technologies: pillow (PyPI). Vendors: PyPI.

Quick answers

Is CVE-2026-55379 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-55379 being exploited in the wild.
How severe is CVE-2026-55379?
High severity, with a CVSS score of 7.5, published 6 July 2026.
Which products and versions are affected?
pillow (PyPI) < 12.3.0, ECOSYSTEM:introduced=0,fixed=12.3.0.
Is there a fix for CVE-2026-55379?
Yes. pillow (PyPI): upgrade to 12.3.0 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-55379 attacked?
It is attacked over the network, in a software library.
Am I affected by CVE-2026-55379?
Check whether you run pillow (PyPI) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

How to fix

  • pillow (PyPI): upgrade to 12.3.0 or later
    pip install "pillow>=12.3.0"

Technical details

A vulnerability exists in `PIL/BdfFontFile.py` within the `bdf_char()` function. When processing a BDF font file, the library reads the `BBX` (bounding box) dimensions and passes them directly to `Image.new()` without performing the standard `_decompression_bomb_check()`. If a BDF glyph contains large dimensions but an empty `BITMAP` section, `Image.frombytes()` fails, and the fallback to `Image.new()` allocates memory on the C-heap based on the attacker-controlled dimensions. An attacker can use this to bypass `MAX_IMAGE_PIXELS` protections and cause a denial-of-service via memory exhaustion. This issue is fixed in Pillow version 12.3.0.

Affected products

  • python-pillow Pillow < 12.3.0

Identifiers

  • CVE-2026-55379
  • GHSA-45hq-cxwh-f6vc
  • PYSEC-2026-2255

Timeline

  • 2026-07-03: patched: Fix published in version 12.3.0
  • 2026-07-06: advisory: NVD published CVE-2026-55379
  • 2026-07-20: disclosed: GitHub Advisory GHSA-45hq-cxwh-f6vc published

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.