Impact
Pillow, a popular Python imaging library, contains a flaw in its BMP RLE decoder where unbounded delta escapes and absolute-mode runs allow a crafted RLE BMP file to write far beyond the intended buffer. The decoder can append approximately 255 image rows per iteration, so a small file can inflate the destination bytearray to hundreds of megabytes or more. This uncontrolled allocation leads to a memory‑exhaustion denial of service.
Affected Systems
Python implementations that import Pillow, specifically versions 9.1.0 through the last release prior to 13.0.0, are affected. The vulnerability was fixed in release 13.0.0; versions 13.0.0 and later are not affected.
Risk and Exploitability
The CVSS score of 6.5 indicates moderate severity. The EPSS score is less than 1% and the vulnerability is not listed in CISA KEV. Based on the description, it is inferred that an attacker would need to supply a malicious BMP file that an application using Pillow processes, potentially from a remote upload or local file. The out‑of‑bounds writes can cause memory exhaustion and crash the application, leading to denial of service.
OpenCVE Enrichment
Github GHSA