CVE Tools

CVE-2026-112393

Pillow: Heap buffer overflow in _tiffWriteProc when saving TIFF to BytesIO

No known exploitation. EPSS puts it in the 57th percentile. No fix published yet.

Published Updated Sources: CVE.org, NVD

What to do

No fixed build or workaround is published yet. Limit exposure and watch for a patch.

  • python-pillow PillowAffected: >= 2.0.0, < 13.0.0Upgrade to: not statedStated by: CVE record

Versions as the sources state them. Full version matrix after sign-in

Steps

Written by AI from the record
  1. Check if your website, app, or internal tools use the Pillow Python library to process or convert TIFF images in memory (e.g. via BytesIO) rather than directly to/from disk files.
  2. If you don't know, ask your developer or software vendor whether Pillow is used and how TIFF files are handled.
  3. Upgrade Pillow to version 13.0.0 or later, where this issue is fixed.
  4. If you can't upgrade right away, avoid accepting TIFF image uploads from untrusted users until you do.
pip install --upgrade pillow>=13.0.0

What it is

From the CVE record

Pillow is a Python imaging library. From 2.0.0 until 13.0.0, Pillow has a heap buffer overflow and stale-heap disclosure in _tiffWriteProc when saving compressed TIFF data through libtiff to a target without a usable fileno(), such as BytesIO. The callback sizes its allocation from the prior buffer size instead of the current write position, allowing an attacker-controlled out-of-line TIFF tag or retained ICC profile to be copied beyond the allocation after libtiff seeks forward. This overflow can crash the process and may allow code execution. Independently, unwritten alignment gaps in compressed TIFF output larger than 64 KiB can disclose stale heap bytes without a crafted tag. File paths and targets with real file descriptors are unaffected. This issue is fixed in version 13.0.0.

In plain language

Written by AI from the record

This is a flaw in Pillow, a Python library many apps use to process images, that could crash a program or leak stray memory data when saving certain TIFF images in memory — it's fixed in version 13.0.0, but there's no sign anyone is exploiting it, so there's no need to panic.

Heap buffer overflow (CWE-122) in Pillow's _tiffWriteProc callback when writing compressed TIFF data to a file-like object without a real file descriptor (e.g. BytesIO); a crafted out-of-line TIFF tag or ICC profile can cause an under-sized allocation to be overrun during a libtiff forward seek, risking a crash, heap data disclosure, or potentially code execution.

If you're affected

  • Application crash/denial of service
  • Stale memory data leak
  • Possible code execution
  • Operational disruption during image processing

Exploitation

Where each signal puts this CVE on the scale from published to confirmed exploited.

EPSS57th
CISA KEV

Not in the catalog. CISA has not confirmed exploitation.

Public exploits

No public exploit or proof of concept found in the sources we track.

EPSS

0.8% chance of exploitation activity in the next 30 days, which ranks it in the 57th percentile of scored CVEs.

Exploit Prediction Scoring System, FIRST.org. A probability, not a confirmation.

Lifecycle

5 events over 1 day, from the signal feeds we watch.

  1. Record updated
  2. Publishedweakness classified, att&ck mapped, record updated

Affected products

Technical detail

Weaknesses

ATT&CK techniques

Mapped from the weaknesses above (CWE to ATT&CK), not observed in attacks.

Sources

Watch the software you run.

My Stack ranks new CVEs for your products by real-world exploitation, so the next serious one reaches you without reading every advisory.

We'll flag the next CVE, public exploit or patch for Pillow, not every advisory.