CVE-2026-96642

high

Description

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.

References

https://github.com/python-pillow/Pillow/security/advisories/GHSA-3j72-p6qg-6xp7

https://github.com/python-pillow/Pillow/releases/tag/13.0.0

https://github.com/python-pillow/Pillow/pull/10012

https://github.com/python-pillow/Pillow/commit/19b695fdcc5eddc37374e2b1645fc4185edaf71d

https://euvd.enisa.europa.eu/vulnerability/EUVD-2026-107561

Details

Source: Mitre, NVD

Published: 2026-10-21

Updated: 2026-10-30

Named Vulnerability: GHSA-3j72-p6qg-6xp7

Risk Information

CVSS v2

Base Score: 7.8

Vector: CVSS2#AV:N/AC:L/Au:N/C:N/I:N/A:C

Severity: High

CVSS v3

Base Score: 6.5

Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H

Severity: Medium

CVSS v4

Base Score: 7.1

Vector: CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N

Severity: High

EPSS

EPSS: 0.00345