Pillow: Out-of-bounds read via attacker-controlled row stride on Pillow's mmap path (McIdas AREA files)
Pillow is a Python imaging library. Prior to 12.3.0, when Pillow loads an uncompressed McIdas AREA image from a filename through the mmap raw codec path, attacker-controlled header words can set a row stride smaller than the natural row width, causing pixel access such as Image.tobytes(), getpixel, convert, or save to read beyond the mapped region and disclose adjacent process memory or fault. This issue is fixed in version 12.3.0.
describes (1)
Related CVEs.
| ID | severity | exploitable | ||
|---|---|---|---|---|
| CVE-2026-54058US | critical9.1 | — | ||
Pillow is a Python imaging library. Prior to 12.3.0, when Pillow loads an uncompressed McIdas AREA image from a filename through the mmap raw codec path, attacker-controlled header… | ||||
references
External citations — patches, advisories, analysis.
- https://github.com/python-pillow/Pillow/commit/6a8de891fb00968e5ea79bfa84368ed90b3cfc1dFIX
- https://github.com/python-pillow/Pillow/pull/9719FIX
- https://github.com/python-pillow/Pillow/releases/tag/12.3.0ARTICLE
- https://github.com/python-pillow/Pillow/security/advisories/GHSA-62p4-gmf7-7g93ADVISORY
- https://nvd.nist.gov/vuln/detail/CVE-2026-54058WEB
Advisories like this name the exposed products attackers go after on your perimeter. See what is exposed on your perimeter with a free passive scan.
Free scan