Description
Pillow is a Python imaging library. Prior to 13.0.0, Pillow can double free image memory when ImagingScaleAffine encounters a selective allocation failure. The affected fast path handles Transform.EXTENT or pure scale-and-translate Transform.AFFINE operations with the default NEAREST resampling. The output image allocation must succeed while the additional per-column lookup allocation fails, after which the error path deletes image storage that later cleanup releases again. An attacker who can drive such a large Image.transform() operation under memory pressure may trigger the failure. This can crash the process and may corrupt memory. This issue is fixed in version 13.0.0.
Metrics
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:HWeakness enumeration
Affected software
| Vendor | Product | Versions |
|---|---|---|
| python-pillow | Pillow | < 13.0.0 |
References
- https://github.com/python-pillow/Pillow/commit/aafa6c75f7cdabb9f409a8aac7c780bea31d08d9Patch
- https://github.com/python-pillow/Pillow/releases/tag/13.0.0Release Notes
- https://github.com/python-pillow/Pillow/security/advisories/GHSA-7mwm-ghpf-9vrmExploit, Mitigation, Patch, Vendor Advisory
- https://github.com/python-pillow/Pillow/security/advisories/GHSA-7mwm-ghpf-9vrmExploit, Mitigation, Patch, Vendor Advisory
Timeline
- Published
- Oct 19, 2026
- Last modified
- Oct 27, 2026
- NVD status
- Analyzed