CVE-2026-96638 Pillow: BMP RLE decoder memory-amplification DoS via unbounded delta escape / absolute mode

Medium 6.5 Published Updated
Exploited in the wild
Not known
Fix
Available

What is CVE-2026-96638?

CVE-2026-96638 is a medium-severity vulnerability in Python Pillow, published on 21 Oct 2026.

Official description

Pillow is a Python imaging library. From 9.1.0 until 13.0.0, BmpRleDecoder.decode() in src/PIL/BmpImagePlugin.py permits crafted RLE BMP delta escapes and absolute-mode runs to append beyond the remaining dest_length without a per-branch cap. A delta can add roughly 255 image rows in one iteration, so a kilobyte-sized file with a large but permitted width can expand the data bytearray to hundreds of megabytes or more, causing memory-exhaustion denial of service. This issue is fixed in version 13.0.0.

Weakness: CWE-770, CWE-400

Which versions are affected by CVE-2026-96638?

3 open source packages ship an affected version, including pillow. It affects 1 product.

PackageAffectedFixed in
pillow BitnamiFrom 9.1.013.0.0
pillow PyPIFrom 9.1.013.0.0
pillow PyPIFrom 9.1.013.0.0

Products include Python Pillow.

How do I fix CVE-2026-96638?

Upgrade pillow to 13.0.0 or later.

Is CVE-2026-96638 being exploited?

There is no known exploitation of CVE-2026-96638 in the wild and no public exploit code.

All Python Pillow vulnerabilities

Sources

Also known as BIT-pillow-2026-96638, DEBIAN-CVE-2026-96638, ECHO-27bd-2fb5-e1ab, GHSA-24rc-8hj2-v98c, UBUNTU-CVE-2026-96638.

Is CVE-2026-96638 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free