Pillow: Reachable undefined behavior in native integer operations, potentially leading to denial of service or logic integrity compromise
Exact source revision recorded 28 Oct 2026 02:51:34 UTC. It does not establish the source's current position. Latest evidence.
cve-program · CVE-2026-96641
PublishedPillow 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.
- Source published
- 21 Oct 2026 20:51:24 UTC
- Source modified
- 28 Oct 2026 01:50:42 UTC
- Observed here
- 28 Oct 2026 02:51:34 UTC
- Source terms
- CVE Program Terms of Use
Original source record · Cite this exact observation · Complete original publisher JSON
This view projects the publisher's source fields for reading; the original JSON retains additional fields and CVE enrichment containers. Attribution: cve-program · CVE Program Terms of Use. Source text is retained; field grouping and change labels are provided by ChangeIntel.
CVSS 3.1 · 6.5 CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H