CVE-2026-96643: Pillow · From 11.0.0 until 13.0.0, Exif.load() in src/PIL/Image.py repeatedly slices the remaining
Affects pillowSource GCVE Database
Not known to be exploited · CVSS 7.1 High : upgrade to 13.0.0 soon.
Data as of 28 Oct 2026, 11:12 UTC
- Patch
- Available – fixed in 13.0.0
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:H/SC:N/SI:N/SA:NExploitation evidence
Disclosed: evidence found.
CVE published 21 Oct 2026
Detectable: no evidence on record.
No public nuclei template indexed
Weaponised: no evidence on record.
No public exploit code indexed in Metasploit or Exploit-DB
Exploited in the wildExploited: no evidence on record.
Not in CISA KEV and no source reports exploitation
Observed by OffSeq MirageSeen by Mirage: no evidence on record.
No attack traffic recorded by OffSeq Mirage sensors
A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 26 Oct 2026.
What to do
Upgrade pillow to 13.0.0.
Patches and advisories
Affected software
| Product | Affected | Fixed in |
|---|---|---|
PyPIpillowpkg:pypi/pillowOther threats | Affected
| Fixed in
|
Check your own hosts for these packages with threat-finder (opens in a new tab), our free open-source scanner.
Description
Pillow is a Python imaging library. From 11.0.0 until 13.0.0, Exif.load() in src/PIL/Image.py repeatedly slices the remaining EXIF data while it begins with the six-byte Exif header. src/PIL/PngImagePlugin.py accepts an uncapped PNG eXIf chunk, so a file filled with repeated headers causes a new shrinking copy on every iteration and quadratic CPU work. The condition is reachable through Image.getexif(), Image._getexif(), and ImageOps.exif_transpose(), including common photo-upload rotation workflows. This issue is fixed in version 13.0.0.
References
- github.com/python-pillow/Pillow/releases/tag/13.0.0 (opens in a new tab)
- github.com/python-pillow/Pillow/security/advisories/GHSA-g4qv-2jxx-769h (opens in a new tab)
- github.com/python-pillow/Pillow/pull/10073 (opens in a new tab)
- github.com/python-pillow/Pillow/commit/806e38381c781f32bbd22f4cd026678acd40fd6c (opens in a new tab)