[ CVE-2026-96644 · Published 21 Oct 2026 ]
Pillow: Heap over-read in WMF/EMF rendering via 16-bit dimension truncation (Windows builds)
CVSS 7.1
EPSS <1%Fix available
[ Description ]Official description
Pillow is a Python imaging library. Prior to 13.0.0 on Windows, src/PIL/WmfImagePlugin.py passes unchecked 32-bit WMF or EMF dimensions to the native drawwmf handler in src/display.c. The handler sizes a DIB allocation from 16-bit-truncated bcWidth and bcHeight fields but copies pixel data using the original full dimensions. A crafted wide, short metafile can pass the pixel-count decompression-bomb check and make the Windows-only renderer read beyond the heap buffer, potentially disclosing memory or crashing the process. This issue is fixed in version 13.0.0.
[ Fixes ]Fixes and patches
- Pillow 13.0.0Fixed version · GitHub Advisories · pip package Pillow: upgrade to 13.0.0 or later (affected < 13.0.0)
[ Packages ]Affected open-source packages
- Pillow pipAffected < 13.0.0 · fixed in 13.0.0 · GHSA-9v9v-9qvf-h2hj