Skip to main content
← All vulnerabilities
CVE-2026-112897GHSA-Q45J-58J2-45RGBIT-PILLOW-2026-112897

Pillow: TiffDecode returns uninitialized memory as pixels for short JPEG strips

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 13.0.0
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: poc
  • Automatable: no
  • Technical impact: partial

Summary

Pillow is a Python imaging library. From 5.3.0 until 13.0.0, Pillow can return uninitialized memory as pixels when libtiff performs a short decode of JPEG-compressed or Group 4 fax TIFF data. The _decodeStrip and _decodeTile buffers can be larger than the bytes written by libtiff, but Pillow converts the expected rows without clearing the unwritten tail. The tile path is affected from 5.3.0 and the strip path from 6.0.0. An attacker can supply a crafted TIFF to an application that loads and returns or re-encodes its pixels. This can disclose stale heap contents without memory corruption or a process crash. This issue is fixed in version 13.0.0.

Timeline

  1. CVE published
  2. First seen by cve.now
  3. CISA SSVC assessment

    Exploitation: poc · Automatable: no · Technical impact: partial

  4. Record last updated

Affected versions

  • python-pillow Pillow

    From 5.3.0 · fixed in 13.0.0

  • pillowPyPI

    From 5.3.0 · fixed in 13.0.0

  • pillowBitnami

    From 5.3.0 · fixed in 13.0.0

References 3

GitHub · python-pillow/Pillow