CVE-2026-96642
CVE-2026-96642 · Pillow: TarIO negative size field causes infinite CPU-spin loop
This page contains facts from public vulnerability sources. Check the original advisory before updating.
Pillow is a Python imaging library. Prior to 13.0.0, the TarIO initializer in src/PIL/TarIO.py accepts a negative octal member size and computes a backward seek that returns to the same 512-byte header. When the requested member name does not match, the parser repeatedly reads that header, consumes a full CPU core, and never returns. TarIO is reached only when an application directly uses PIL.TarIO.TarIO rather than the default Image.open() path. This issue is fixed in version 13.0.0.
CVSS 7.1 · High · EPSS 0.3% · Fix available
- Published
- Updated
Affected products and versions
pillow
- Versions
- < 13.0.0: Affected
No fix published
pillow Debian:12
- Versions
- 10.0.0-1
- 10.1.0-1
- 10.2.0-1
- 10.3.0-1
- 10.3.0-2
- 10.4.0-1
- 10.4.0-1.1
- 11.1.0-1
- 11.1.0-2
- 11.1.0-3
- 11.1.0-4
- 11.1.0-5
- 11.2.1-1
- 11.3.0-1
- 12.0.0-1
- 12.1.0-1
- 12.1.1-1
- 12.1.1-2
- 12.2.0-1
- 12.3.0-1
- 13.0.0-1
- 9.4.0-1.1
- 9.4.0-1.1+deb12u1
- 9.5.0-1
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
pillow Debian:13
- Versions
- 11.1.0-5
- 11.1.0-5+deb13u1
- 11.1.0-5+deb13u2
- 11.1.0-5+deb13u3
- 11.1.0-5+deb13u4
- 11.2.1-1
- 11.3.0-1
- 12.0.0-1
- 12.1.0-1
- 12.1.1-1
- 12.1.1-2
- 12.2.0-1
- 12.3.0-1
- 13.0.0-1
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
pillow Debian:14
- Versions
- 11.1.0-5
- 11.2.1-1
- 11.3.0-1
- 12.0.0-1
- 12.1.0-1
- 12.1.1-1
- 12.1.1-2
- 12.2.0-1
- 12.3.0-1
- 13.0.0-1
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
pillow PyPI
- Versions
- 1.0
- 1.1
- 1.2
- 1.3
- 1.4
- 1.5
- 1.6
- 1.7.0
- 1.7.1
- 1.7.2
- 1.7.3
- 1.7.4
- 1.7.5
- 1.7.6
- 1.7.7
- 1.7.8
- 10.0.0
- 10.0.1
- 10.1.0
- 10.2.0
- 10.3.0
- 10.4.0
- 11.0.0
- 11.1.0
- 11.2.1
- 11.3.0
- 12.0.0
- 12.1.0
- 12.1.1
- 12.2.0
- 12.3.0
- 2.0.0
- 2.1.0
- 2.2.0
- 2.2.1
- 2.2.2
- 2.3.0
- 2.3.1
- 2.3.2
- 2.4.0
- 2.5.0
- 2.5.1
- 2.5.2
- 2.5.3
- 2.6.0
- 2.6.1
- 2.6.2
- 2.7.0
- 2.8.0
- 2.8.1
- 2.8.2
- 2.9.0
- 3.0.0
- 3.1.0
- 3.1.0.rc1
- 3.1.0rc1
- 3.1.1
- 3.1.2
- 3.2.0
- 3.3.0
- 3.3.1
- 3.3.2
- 3.3.3
- 3.4.0
- 3.4.1
- 3.4.2
- 4.0.0
- 4.1.0
- 4.1.1
- 4.2.0
- 4.2.1
- 4.3.0
- 5.0.0
- 5.1.0
- 5.2.0
- 5.3.0
- 5.4.0
- 5.4.0.dev0
- 5.4.1
- 6.0.0
- 6.1.0
- 6.2.0
- 6.2.1
- 6.2.2
- 7.0.0
- 7.1.0
- 7.1.1
- 7.1.2
- 7.2.0
- 8.0.0
- 8.0.1
- 8.1.0
- 8.1.1
- 8.1.2
- 8.2.0
- 8.3.0
- 8.3.1
- 8.3.2
- 8.4.0
- 9.0.0
- 9.0.1
- 9.1.0
- 9.1.1
- 9.2.0
- 9.3.0
- 9.4.0
- 9.5.0
- Affected ranges
- ECOSYSTEM: < 13.0.0
Update to 13.0.0
pillow Ubuntu:Pro:14.04:LTS
- Versions
- 2.2.1-1ubuntu2
- 2.2.1-2ubuntu1
- 2.2.1-3ubuntu2
- 2.2.1-3ubuntu3
- 2.2.1-3ubuntu4
- 2.2.1-3ubuntu6
- 2.3.0-1ubuntu1
- 2.3.0-1ubuntu2
- 2.3.0-1ubuntu3
- 2.3.0-1ubuntu3.2
- 2.3.0-1ubuntu3.3
- 2.3.0-1ubuntu3.4
- 2.3.0-1ubuntu3.4+esm1
- 2.3.0-1ubuntu3.4+esm2
- 2.3.0-1ubuntu3.4+esm3
- 2.3.0-1ubuntu3.4+esm4
- 2.3.0-1ubuntu3.4+esm5
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
pillow Ubuntu:Pro:16.04:LTS
- Versions
- 2.9.0-1
- 3.0.0-1
- 3.0.0-1build1
- 3.1.0-1
- 3.1.1-1
- 3.1.2-0ubuntu1
- 3.1.2-0ubuntu1.1
- 3.1.2-0ubuntu1.3
- 3.1.2-0ubuntu1.4
- 3.1.2-0ubuntu1.5
- 3.1.2-0ubuntu1.6
- 3.1.2-0ubuntu1.6+esm1
- 3.1.2-0ubuntu1.6+esm2
- 3.1.2-0ubuntu1.6+esm3
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
pillow Ubuntu:Pro:18.04:LTS
- Versions
- 4.1.1-3build2
- 4.3.0-2ubuntu1
- 5.0.0-1
- 5.1.0-1
- 5.1.0-1ubuntu0.2
- 5.1.0-1ubuntu0.3
- 5.1.0-1ubuntu0.4
- 5.1.0-1ubuntu0.5
- 5.1.0-1ubuntu0.6
- 5.1.0-1ubuntu0.7
- 5.1.0-1ubuntu0.8
- 5.1.0-1ubuntu0.8+esm1
- 5.1.0-1ubuntu0.8+esm2
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
pillow Ubuntu:Pro:20.04:LTS
- Versions
- 6.1.0-1
- 6.1.0-1build1
- 6.2.1-2
- 7.0.0-4
- 7.0.0-4build1
- 7.0.0-4ubuntu0.1
- 7.0.0-4ubuntu0.2
- 7.0.0-4ubuntu0.3
- 7.0.0-4ubuntu0.4
- 7.0.0-4ubuntu0.5
- 7.0.0-4ubuntu0.6
- 7.0.0-4ubuntu0.7
- 7.0.0-4ubuntu0.8
- 7.0.0-4ubuntu0.9
- 7.0.0-4ubuntu0.9+esm1
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
pillow-python2 Ubuntu:Pro:20.04:LTS
- Versions
- 6.2.1-3~build1
- 6.2.1-3
- 6.2.1-3ubuntu0.1~esm1
- 6.2.1-3ubuntu0.1~esm2
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
pillow Ubuntu:22.04:LTS
- Versions
- 8.1.2+dfsg-0.3
- 9.0.0-1
- 9.0.1-1
- 9.0.1-1build1
- 9.0.1-1ubuntu0.1
- 9.0.1-1ubuntu0.2
- 9.0.1-1ubuntu0.3
- 9.0.1-1ubuntu0.4
- 9.0.1-1ubuntu0.5
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
pillow Ubuntu:24.04:LTS
- Versions
- 10.0.0-1
- 10.1.0-1
- 10.2.0-1
- 10.2.0-1build1
- 10.2.0-1ubuntu1
- 10.2.0-1ubuntu1.2
- 10.2.0-1ubuntu1.3
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
pillow Ubuntu:26.10
- Versions
- 12.1.1-2ubuntu1
- 12.3.0-1ubuntu1
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
pillow Ubuntu:26.04:LTS
- Versions
- 11.3.0-1ubuntu1
- 11.3.0-1ubuntu2
- 12.0.0-1ubuntu1
- 12.1.1-1ubuntu1
- 12.1.1-2ubuntu1
- 12.1.1-2ubuntu1.1
- 12.1.1-2ubuntu1.2
- 12.1.1-2ubuntu1.3
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
Original sources
- https://github.com/python-pillow/Pillow/security/advisories/GHSA-3j72-p6qg-6xp7
- https://github.com/python-pillow/Pillow/pull/10012
- https://github.com/python-pillow/Pillow/commit/19b695fdcc5eddc37374e2b1645fc4185edaf71d
- https://github.com/python-pillow/Pillow/releases/tag/13.0.0
- https://nvd.nist.gov/vuln/detail/CVE-2026-96642