Security · Pillow
A SPIDER stack file bypasses the pixel limit on seek
SpiderImagePlugin's seek() re-parses the header without the decompression-bomb check, so a file under 1 KB can trigger a multi-gigabyte allocation.
- Advisory
- CVE-2026-96637 (also GHSA-g842-9rc4-69pw)
- Library
- Pillow, pillow on PyPI
- Published
- Severity
- 7.1 out of 10, as published
- Affected
- < 13.0.0
- Fixed in
- 13.0.0
- Reaches you
- by opening a file
What triggers it
Opening a crafted SPIDER file and loading a later frame.
What sillybos does
Refused by default
sillybos refuses the triggering file under its default policy, through the formats check.
SPIDER is not a format the check knows, so the file is refused as an unknown format before any reader runs.
Proved by this test in the sillybos suite, which builds the triggering file from bytes and checks that it is refused:
How to protect yourself
In general. Upgrade to Pillow 13.0.0.
Specifically. Allow-list the formats you mean to read; everything else, including this one, never reaches a reader.
The general advice applies to every row here.
Sources
- https://github.com/advisories/GHSA-g842-9rc4-69pw
- The record entry, triaged 2026-11-01, last checked 2026-11-01