{"id":"CVE-2026-96638","aliases":[],"title":"Pillow: BMP RLE decoder memory-amplification DoS via unbounded delta escape / absolute mode","titleSource":"GitHub_M","descriptionSource":"GitHub_M","products":[{"vendor":"python-pillow","name":"Pillow","platforms":[],"versions":[{"version":">= 9.1.0, < 13.0.0","status":"affected"}],"source":"GitHub_M","url":"https://www.cve.org/CVERecord?id=CVE-2026-96638"}],"remediation":[],"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.","severity":"medium","score":6.5,"published":"2026-10-21T20:47:21.767Z","modified":"2026-10-28T18:21:53.700Z","withdrawn":false,"knownExploited":false,"affected":[],"references":["https://github.com/python-pillow/Pillow/security/advisories/GHSA-24rc-8hj2-v98c","https://github.com/python-pillow/Pillow/pull/10015","https://github.com/python-pillow/Pillow/commit/e7794835e323ff2691d9b3a974cade1a44301b9a","https://github.com/python-pillow/Pillow/releases/tag/13.0.0"],"sources":[{"name":"CVE","id":"CVE-2026-96638","modified":"2026-10-28T18:21:53.700Z","url":"https://www.cve.org/CVERecord?id=CVE-2026-96638"}],"assessments":[{"source":"GitHub_M","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H","score":6.5}],"sourceAffected":[],"kev":{"status":"not-listed","checkedAt":"2026-10-29T06:00:31.558Z"},"coverage":[{"source":"NVD","status":"not-checked"},{"source":"GHSA","status":"not-checked"},{"source":"EUVD","status":"not-checked"},{"source":"EPSS","status":"not-checked"}],"evidence":[]}