## Pillow: TarIO negative size field causes infinite CPU-spin loop

- 種別: advisory
- 重大度: high
- 関連技術: python
- CVE: CVE-2026-96642
- 公開日時: 2026-10-22T16:01:46.000Z
- 情報源: GitHub Advisory Database (https://github.com/advisories/GHSA-3j72-p6qg-6xp7)
- パーマリンク: https://vulnpulse.app/items/ghsa-ghsa-3j72-p6qg-6xp7

影響: pip:Pillow < 13.0.0 → 13.0.0
TarIO.__init__ does not check that a tar header's size field is positive. A crafted header with a negative size makes it seek backward onto itself. This causes an infinite loop that uses 100% CPU and never returns. Details TarIO.__init__ reads 512-byte tar headers one at a time, looking for a member with a given name. For each header it reads the size field and skips ahead to the next header: python size = int(s[124:135], 8) ... self.fh.seek((size + 511) & (~511), io.SEEK_CUR) There is no check…