Skip to main content
← All vulnerabilities
CVE-2026-112396GHSA-4RR5-89J8-MWWMBIT-PILLOW-2026-112396PYSEC-2026-4328

Pillow: Heap use-after-free when encoding TIFF to an in-memory buffer

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 13.0.0
1 proof of concept on GitHub
  • Exploitation: none
  • Automatable: no
  • Technical impact: partial

Summary

Pillow is a Python imaging library. From 11.3.0 until 13.0.0, Pillow has a heap use-after-free when libtiff rejects a tag while encoding TIFF data to an in-memory buffer. When an application saves attacker-influenced TIFF tags to BytesIO, libtiff can reject a tag during encoding in ImagingLibTiffEncode; the error path then frees the output buffer without closing or clearing the TIFF handle, and later cleanup flushes through the write callback into freed memory, which can crash the process and may enable code execution. This issue is fixed in version 13.0.0.

Timeline

  1. CVE published
  2. CISA SSVC assessment

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

  3. Record last updated

Affected versions

  • python-pillow Pillow

    From 11.3.0 · fixed in 13.0.0

  • pillowPyPI

    From 11.3.0 · fixed in 13.0.0

  • pillowBitnami

    From 11.3.0 · fixed in 13.0.0

References 4

GitHub · python-pillow/Pillow

GitHub · 8hw3/pillow-uaf-research