Six Pillow Imaging Flaws Patched in openSUSE Tumbleweed Python Packages
openSUSE has issued advisory openSUSE-SU-2026:12251-1, rated moderate, resolving six vulnerabilities in the Pillow imaging library shipped on openSUSE Tumbleweed GA media. The issues are tracked as CVE-2026-112902, CVE-2026-96636, CVE-2026-96638, CVE-2026-96640, CVE-2026-96642 and CVE-2026-96778. SUSE scores CVE-2026-96778 highest at 8.1 under CVSS v3.1 and 9.2 under CVSS v4.0. CVE-2026-112902 carries 8.2 and 8.3, while the remaining four sit at 7.5 and 8.2. The fixed packages are python313-Pillow, python313-Pillow-tk, python314-Pillow and python314-Pillow-tk at version 13.0.0-2.1.
The advisory does not publish exploitation details, so no attack chain can be stated as fact. What the CVSS vectors establish is that all six flaws are reachable over the network with no privileges and no user interaction. CVE-2026-96636, CVE-2026-96638, CVE-2026-96640 and CVE-2026-96642 affect availability only, consistent with a crash or resource exhaustion condition during image parsing. CVE-2026-112902 adds limited confidentiality exposure alongside high availability impact. CVE-2026-96778 is the outlier, requiring high attack complexity but yielding high impact across confidentiality, integrity and availability.
Pillow is a common dependency across Python applications, so Tumbleweed hosts running services built on the python313 or python314 stacks can inherit the vulnerable code without tracking it directly. Exploitation probability is currently low across the set: FIRST EPSS places CVE-2026-96640 at 0.6 percent over the next 30 days, CVE-2026-112902 and CVE-2026-96778 at 0.5 percent, and CVE-2026-96636, CVE-2026-96638 and CVE-2026-96642 at 0.3 percent each. No in-the-wild exploitation is reported in the advisory or the available evidence. The material risk sits with any unpatched host that accepts attacker-supplied image files, where a single malformed image could knock out a service or, in the CVE-2026-96778 case, reach further. Hosts processing images from untrusted sources require immediate patching, while internal-only deployments can schedule the update within a standard maintenance window.
Attack Surface
Web Application, Supply Chain (Third-party vendors), Server OS
Tactics
Initial Access, Impact
Techniques
- T1190 – Exploit Public-Facing Application
- T1499 – Endpoint Denial of Service
- T1499.004 – Application or System Exploitation
SuperPRO's Threat Countermeasures Procedures
- On openSUSE Tumbleweed, refresh repositories and install the fixed builds with 'zypper refresh && zypper up python313-Pillow python313-Pillow-tk python314-Pillow python314-Pillow-tk', confirming version 13.0.0-2.1 as published in openSUSE-SU-2026:12251-1.
- Verify remediation per host with 'rpm -q python313-Pillow python314-Pillow python313-Pillow-tk python314-Pillow-tk' and treat any result below 13.0.0-2.1 as still exposed to the six listed CVEs.
- Audit Python virtual environments and container images separately with 'pip list | grep -i -E "pillow|PIL"', because distribution packages do not update pip-installed Pillow copies vendored inside venvs, wheels or Dockerfiles.
- Isolate image-processing services in separate network zones or containers to limit lateral movement if CVE-2026-96778 is exploited, given its high impact across confidentiality, integrity and availability.
- Review application logs for failed image decode operations or unexpected format errors that may indicate probing attempts against the six Pillow CVEs before the update is applied.
- Prioritise patching on any Tumbleweed host that accepts image uploads from untrusted sources, as all six CVEs are remotely exploitable without authentication or user interaction according to their CVSS vectors.
- Track the SUSE CVE pages for CVE-2026-112902, CVE-2026-96636, CVE-2026-96638, CVE-2026-96640, CVE-2026-96642 and CVE-2026-96778 for revised scoring and for backport availability on non-Tumbleweed SUSE products.