Skip to main content
← All vulnerabilities
CVE-2026-96641GHSA-4RM8-3HMM-39FGPYSEC-2026-4340

Pillow: Reachable undefined behavior in native integer operations, potentially leading to denial of service or logic integrity compromise

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. Prior to 13.0.0, PILfont text-width accumulation in src/_imaging.c checks positive glyph advances against INT_MAX but does not check negative advances against INT_MIN. Repeating a signed 16-bit advance of -32768 can therefore execute a signed C integer overflow in xsize += dx, producing a large positive width from a negative mathematical result. Applications that use getlength(), getsize(), or derived layout, quota, serialization, or allocation calculations can experience logic-integrity errors or resource consumption, while the high-level mask path commonly retains a decompression-bomb check. 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

    fixed in 13.0.0

  • pillowPyPI

    fixed in 13.0.0

References 4

GitHub · python-pillow/Pillow