VULNERABILIDAD
CVE-2026-96642 Denegación de servicio por bucle de CPU en TarIO de Pillow
En Pillow anterior a 13.0.0, el inicializador de TarIO en src/PIL/TarIO.py acepta un tamaño de miembro octal negativo y calcula un retroceso que vuelve al mismo encabezado de 512 bytes. Cuando el nombre de miembro solicitado no coincide, el parser lee repetidamente ese encabezado, consume un núcleo completo de CPU y nunca retorna. TarIO solo se alcanza si una aplicación usa directamente PIL.TarIO.TarIO en lugar de la ruta predeterminada Image.open(). Se corrige en la versión 13.0.0.
Alerta de Nureq Monitor
Detectada 21 OCT · 18:57
CVSS 4.0
7.1ALTAPROBABILIDAD DE EXPLOTACIÓN (EPSS)
0,3 % PERCENTIL 25
EXPLOTACIÓN ACTIVA
No confirmada
EXPLOIT PÚBLICO
No conocido
Qué es CVE-2026-96642
En Pillow anterior a 13.0.0, el inicializador de TarIO en src/PIL/TarIO.py acepta un tamaño de miembro octal negativo y calcula un retroceso que vuelve al mismo encabezado de 512 bytes. Cuando el nombre de miembro solicitado no coincide, el parser lee repetidamente ese encabezado, consume un núcleo completo de CPU y nunca retorna. TarIO solo se alcanza si una aplicación usa directamente PIL.TarIO.TarIO en lugar de la ruta predeterminada Image.open(). Se corrige en la versión 13.0.0.
Productos y versiones afectadas
python-pillow Pillow
Qué hacer
- Verificá si usás Pillow y en qué versión: el rango afectado figura arriba.
- Actualizá a la versión corregida que indique el fabricante en su aviso (ver referencias) o aplicá la mitigación que publique.
- Revisá registros y accesos de los sistemas expuestos para descartar que se haya aprovechado antes de corregir.
Calculadora CVSS
CVSS 4.0 · 7.1 ALTA
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
- VECTOR DE ATAQUE (AV)
- Red
- COMPLEJIDAD DEL ATAQUE (AC)
- Baja
- REQUISITOS DEL ATAQUE (AT)
- Ninguno
- PRIVILEGIOS REQUERIDOS (PR)
- Ninguno
- INTERACCIÓN DEL USUARIO (UI)
- Pasiva
- CONFIDENCIALIDAD (SISTEMA VULNERABLE) (VC)
- Ninguna
- INTEGRIDAD (SISTEMA VULNERABLE) (VI)
- Ninguna
- DISPONIBILIDAD (SISTEMA VULNERABLE) (VA)
- Alta
- CONFIDENCIALIDAD (SISTEMAS POSTERIORES) (SC)
- Ninguna
- INTEGRIDAD (SISTEMAS POSTERIORES) (SI)
- Ninguna
- DISPONIBILIDAD (SISTEMAS POSTERIORES) (SA)
- Ninguna
Abrir la calculadora completa →
Descripción original
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.
Referencias
- github.com/python-pillow/Pillow/security/advisories/GHSA-3j72-p6qg-6xp7X_REFSOURCE_CONFIRM
- github.com/python-pillow/Pillow/pull/10012X_REFSOURCE_MISC
- github.com/python-pillow/Pillow/commit/19b695fdcc5eddc37374e2b1645fc4185edaf71dX_REFSOURCE_MISC
- github.com/python-pillow/Pillow/releases/tag/13.0.0X_REFSOURCE_MISC
Historial de la alerta
- VULNERABILIDAD Nueva vulnerabilidad detectada.
CÓMO SE HIZOResumen traducido automáticamente al español a partir de la descripción original. Ante dudas, la descripción original y las referencias del fabricante son la fuente de verdad. Cómo funciona.