Pillow is a Python imaging library. From 12.0.0 through 12.2.0, Pillow's EPS parser in PIL/EpsImagePlugin.py accepts a negative byte count in the %%BeginBinary directive, allowing a crafted EPS file to cause Image.open() to seek backwards to the same directive and parse it repeatedly in an infinite loop. This issue is fixed in version 12.3.0.
Fix
Patch, vendor advisory and mitigation references on NVD 4
- https://github.com/python-pillow/Pillow/commit/03992618118b4a76b6163cd72ab5ecd684133b83 Patch
- https://github.com/python-pillow/Pillow/pull/9708 Issue Tracking, Patch
- https://github.com/python-pillow/Pillow/security/advisories/GHSA-pg7v-jwj7-p798 Exploit, Vendor Advisory
- https://github.com/python-pillow/Pillow/security/advisories/GHSA-pg7v-jwj7-p798 Exploit, Vendor Advisory
Every line above is quoted from NVD, CISA, Microsoft, the vendor's own advisory or DISA; nothing is generated.
Change history 1
- First seenCVSS 7.5 · pythonNVD modified 2026-10-24 21:10
Affected (CPE criteria) 1
cpe:2.3:a:python:pillow:*:*:*:*:*:*:*:*
References 5
- https://github.com/python-pillow/Pillow/commit/03992618118b4a76b6163cd72ab5ecd684133b83 Patch
- https://github.com/python-pillow/Pillow/pull/9708 Issue Tracking, Patch
- https://github.com/python-pillow/Pillow/releases/tag/12.3.0 Release Notes
- https://github.com/python-pillow/Pillow/security/advisories/GHSA-pg7v-jwj7-p798 Exploit, Vendor Advisory
- https://github.com/python-pillow/Pillow/security/advisories/GHSA-pg7v-jwj7-p798 Exploit, Vendor Advisory