cveboard RSS feed

CVE-2026-112403

GitHubCritical, pip

Pillow: Heap buffer overflow in ImagingJpegDecode

JpegImageFile.draft() — which Image.thumbnail() calls automatically — requests 1/2, 1/4 or 1/8 scaled JPEG output and shrinks self._size and the tile extents to match, so _setimage() allocates a single-row decode buffer of ceil(W/s) samples. ImagingJpegDecode() sets cinfo.scale_num/scale_denom, calls jpeg_start_decompress(), and then reads scanlines into that buffer without ever comparing cinfo.

  • python-pillow Pillow
  • Critical
  • CVSS 9.2
  • EPSS 0.32%
  • Fixed version listed

What to do

Fixed version listed

Plain text

Affected products

ProductAffectedFixed in
python-pillow Pillow< 13.0.0None listed

Affected packages

PackageAffectedFixed inAdvisory
Pillow (PyPI)<= 12.3.013.0.0GHSA-8g5g-8vmr-9782

Advisories and fixes

Scores and signals

Exploitation
No known exploitation
Severity
Critical, CVSS 9.2 (v4.0, scored by GitHub)
EPSS
0.32% chance of exploitation in the next 30 days (EPSS from FIRST, as of Oct 23, 2026)
CISA's SSVC decision points
Exploitation: proof of concept. Automatable: no. Technical impact: total. As of Oct 22, 2026.
Weakness
CWE-122: Heap-based Buffer Overflow
Vendor
python-pillow, Pillow

Timeline

  1. GitHub published advisory GHSA-8g5g-8vmr-9782 (critical). Fixed in 13.0.0.

Sources