CVE-2026-96641
CVE-2026-96641 · Pillow: Reachable undefined behavior in native integer operations, potentially leading to denial of service or logic integrity compromise
This page contains facts from public vulnerability sources. Check the original advisory before updating.
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.
CVSS 6.5 · Medium · EPSS 0.3% · Public exploit · Fix available
- Published
- Updated
Affected products and versions
pillow
- Versions
- < 13.0.0: Affected
No fix published
pillow Debian:12
- Versions
- 10.0.0-1
- 10.1.0-1
- 10.2.0-1
- 10.3.0-1
- 10.3.0-2
- 10.4.0-1
- 10.4.0-1.1
- 11.1.0-1
- 11.1.0-2
- 11.1.0-3
- 11.1.0-4
- 11.1.0-5
- 11.2.1-1
- 11.3.0-1
- 12.0.0-1
- 12.1.0-1
- 12.1.1-1
- 12.1.1-2
- 12.2.0-1
- 12.3.0-1
- 13.0.0-1
- 9.4.0-1.1
- 9.4.0-1.1+deb12u1
- 9.5.0-1
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
pillow Debian:13
- Versions
- 11.1.0-5
- 11.1.0-5+deb13u1
- 11.1.0-5+deb13u2
- 11.1.0-5+deb13u3
- 11.1.0-5+deb13u4
- 11.2.1-1
- 11.3.0-1
- 12.0.0-1
- 12.1.0-1
- 12.1.1-1
- 12.1.1-2
- 12.2.0-1
- 12.3.0-1
- 13.0.0-1
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
pillow Debian:14
- Versions
- 11.1.0-5
- 11.2.1-1
- 11.3.0-1
- 12.0.0-1
- 12.1.0-1
- 12.1.1-1
- 12.1.1-2
- 12.2.0-1
- 12.3.0-1
- 13.0.0-1
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
pillow PyPI
- Versions
- 1.0
- 1.1
- 1.2
- 1.3
- 1.4
- 1.5
- 1.6
- 1.7.0
- 1.7.1
- 1.7.2
- 1.7.3
- 1.7.4
- 1.7.5
- 1.7.6
- 1.7.7
- 1.7.8
- 10.0.0
- 10.0.1
- 10.1.0
- 10.2.0
- 10.3.0
- 10.4.0
- 11.0.0
- 11.1.0
- 11.2.1
- 11.3.0
- 12.0.0
- 12.1.0
- 12.1.1
- 12.2.0
- 12.3.0
- 2.0.0
- 2.1.0
- 2.2.0
- 2.2.1
- 2.2.2
- 2.3.0
- 2.3.1
- 2.3.2
- 2.4.0
- 2.5.0
- 2.5.1
- 2.5.2
- 2.5.3
- 2.6.0
- 2.6.1
- 2.6.2
- 2.7.0
- 2.8.0
- 2.8.1
- 2.8.2
- 2.9.0
- 3.0.0
- 3.1.0
- 3.1.0.rc1
- 3.1.0rc1
- 3.1.1
- 3.1.2
- 3.2.0
- 3.3.0
- 3.3.1
- 3.3.2
- 3.3.3
- 3.4.0
- 3.4.1
- 3.4.2
- 4.0.0
- 4.1.0
- 4.1.1
- 4.2.0
- 4.2.1
- 4.3.0
- 5.0.0
- 5.1.0
- 5.2.0
- 5.3.0
- 5.4.0
- 5.4.0.dev0
- 5.4.1
- 6.0.0
- 6.1.0
- 6.2.0
- 6.2.1
- 6.2.2
- 7.0.0
- 7.1.0
- 7.1.1
- 7.1.2
- 7.2.0
- 8.0.0
- 8.0.1
- 8.1.0
- 8.1.1
- 8.1.2
- 8.2.0
- 8.3.0
- 8.3.1
- 8.3.2
- 8.4.0
- 9.0.0
- 9.0.1
- 9.1.0
- 9.1.1
- 9.2.0
- 9.3.0
- 9.4.0
- 9.5.0
- Affected ranges
- ECOSYSTEM: < 13.0.0
Update to 13.0.0
pillow Ubuntu:Pro:14.04:LTS
- Versions
- 2.2.1-1ubuntu2
- 2.2.1-2ubuntu1
- 2.2.1-3ubuntu2
- 2.2.1-3ubuntu3
- 2.2.1-3ubuntu4
- 2.2.1-3ubuntu6
- 2.3.0-1ubuntu1
- 2.3.0-1ubuntu2
- 2.3.0-1ubuntu3
- 2.3.0-1ubuntu3.2
- 2.3.0-1ubuntu3.3
- 2.3.0-1ubuntu3.4
- 2.3.0-1ubuntu3.4+esm1
- 2.3.0-1ubuntu3.4+esm2
- 2.3.0-1ubuntu3.4+esm3
- 2.3.0-1ubuntu3.4+esm4
- 2.3.0-1ubuntu3.4+esm5
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
pillow Ubuntu:Pro:16.04:LTS
- Versions
- 2.9.0-1
- 3.0.0-1
- 3.0.0-1build1
- 3.1.0-1
- 3.1.1-1
- 3.1.2-0ubuntu1
- 3.1.2-0ubuntu1.1
- 3.1.2-0ubuntu1.3
- 3.1.2-0ubuntu1.4
- 3.1.2-0ubuntu1.5
- 3.1.2-0ubuntu1.6
- 3.1.2-0ubuntu1.6+esm1
- 3.1.2-0ubuntu1.6+esm2
- 3.1.2-0ubuntu1.6+esm3
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
pillow Ubuntu:Pro:18.04:LTS
- Versions
- 4.1.1-3build2
- 4.3.0-2ubuntu1
- 5.0.0-1
- 5.1.0-1
- 5.1.0-1ubuntu0.2
- 5.1.0-1ubuntu0.3
- 5.1.0-1ubuntu0.4
- 5.1.0-1ubuntu0.5
- 5.1.0-1ubuntu0.6
- 5.1.0-1ubuntu0.7
- 5.1.0-1ubuntu0.8
- 5.1.0-1ubuntu0.8+esm1
- 5.1.0-1ubuntu0.8+esm2
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
pillow Ubuntu:Pro:20.04:LTS
- Versions
- 6.1.0-1
- 6.1.0-1build1
- 6.2.1-2
- 7.0.0-4
- 7.0.0-4build1
- 7.0.0-4ubuntu0.1
- 7.0.0-4ubuntu0.2
- 7.0.0-4ubuntu0.3
- 7.0.0-4ubuntu0.4
- 7.0.0-4ubuntu0.5
- 7.0.0-4ubuntu0.6
- 7.0.0-4ubuntu0.7
- 7.0.0-4ubuntu0.8
- 7.0.0-4ubuntu0.9
- 7.0.0-4ubuntu0.9+esm1
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
pillow-python2 Ubuntu:Pro:20.04:LTS
- Versions
- 6.2.1-3~build1
- 6.2.1-3
- 6.2.1-3ubuntu0.1~esm1
- 6.2.1-3ubuntu0.1~esm2
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
pillow Ubuntu:22.04:LTS
- Versions
- 8.1.2+dfsg-0.3
- 9.0.0-1
- 9.0.1-1
- 9.0.1-1build1
- 9.0.1-1ubuntu0.1
- 9.0.1-1ubuntu0.2
- 9.0.1-1ubuntu0.3
- 9.0.1-1ubuntu0.4
- 9.0.1-1ubuntu0.5
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
pillow Ubuntu:24.04:LTS
- Versions
- 10.0.0-1
- 10.1.0-1
- 10.2.0-1
- 10.2.0-1build1
- 10.2.0-1ubuntu1
- 10.2.0-1ubuntu1.2
- 10.2.0-1ubuntu1.3
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
pillow Ubuntu:26.10
- Versions
- 12.1.1-2ubuntu1
- 12.3.0-1ubuntu1
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
pillow Ubuntu:26.04:LTS
- Versions
- 11.3.0-1ubuntu1
- 11.3.0-1ubuntu2
- 12.0.0-1ubuntu1
- 12.1.1-1ubuntu1
- 12.1.1-2ubuntu1
- 12.1.1-2ubuntu1.1
- 12.1.1-2ubuntu1.2
- 12.1.1-2ubuntu1.3
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
Original sources
- https://github.com/python-pillow/Pillow/security/advisories/GHSA-4rm8-3hmm-39fg
- https://github.com/python-pillow/Pillow/pull/10010
- https://github.com/python-pillow/Pillow/commit/80de4be9e38d3a6148dd4d8491eb80cd12b760a4
- https://github.com/python-pillow/Pillow/releases/tag/13.0.0
- https://nvd.nist.gov/vuln/detail/CVE-2026-96641