Pillow: Heap out-of-bounds write in Pillow `ImageFilter.RankFilter` via integer overflow in `ImagingExpand`
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- —
- Confidentiality · integrity · availability
- None · Low · High
- Fix status
- Partial Red Hat: 27 fixed, 8 without a fix
Attack profile from CVSS 3.1 · CNA. Fix status from CNA, GitHub and Red Hat.
Summary
Pillow is a Python imaging library. Prior to 12.3.0, Pillow's public rank-filter API can trigger a native heap out-of-bounds write when given a very large odd filter size because ImageFilter.RankFilter.filter() calls image.expand(size // 2, size // 2) before rank-filter size validation and ImagingExpand() computes output dimensions with unchecked signed int arithmetic. This issue is fixed in version 12.3.0.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- Yes
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| python-pillow | Pillow | before 12.3.0 | 12.3.0 | Patch available | CNA |
| — | Pillow (PyPI) | before 12.3.0 | 12.3.0 | Patch available | GHSA-xj96-63gp-2gmr |
- Pillow Vendorpython-pillow Affected before 12.3.0 Fixed in 12.3.0 Patch available CNA
- Pillow (PyPI) Vendor— Affected before 12.3.0 Fixed in 12.3.0 Patch available GHSA-xj96-63gp-2gmr
CPE configurations NVD · 1
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:python:pillow:*:*:*:*:*:*:*:* | before 12.3.0 | Vulnerable | python-pillow |
- cpe:2.3:a:python:pillow:*:*:*:*:*:*:*:* Versions before 12.3.0 Vulnerable ·python-pillow
Remediation
- Fix · CNA Pillow (python-pillow) Fixed in 12.3.0
- Fix · GHSA-xj96-63gp-2gmr Pillow (PyPI) Fixed in 12.3.0 Advisory →
Red Hat 31 advisories
- RHSA-2026:81110 Released 2026-10-12 · Red Hat rating ImportantRed Hat Quay 3.18.1
- Red Hat Quay 3.18 registry.redhat.io/quay/quay-builder-rhel9, registry.redhat.io/quay/quay-rhel9
- RHSA-2026:76150 Released 2026-10-05 · Red Hat rating ImportantRed Hat Enterprise Linux AI 3.4.5 security update
- Red Hat Enterprise Linux AI 3.4 registry.redhat.io/rhelai3/bootc-aws-cuda-rhel9, registry.redhat.io/rhelai3/bootc-azure-cuda-rhel9, registry.redhat.io/rhelai3/bootc-azure-rocm-rhel9 +3
- RHSA-2026:76149 Released 2026-10-05 · Red Hat rating ImportantRed Hat Enterprise Linux AI 3.4.5 security update
- Red Hat Enterprise Linux AI 3.4 registry.redhat.io/rhelai3/disk-image-cuda-rhel9
Show 28 more Red Hat advisories
- RHSA-2026:73987 Released 2026-09-30 · Red Hat rating CriticalRHOAI 3.3.7 - Red Hat OpenShift AI
- Red Hat OpenShift AI 3.3 registry.redhat.io/rhoai/odh-built-in-detector-rhel9, registry.redhat.io/rhoai/odh-dashboard-rhel9, registry.redhat.io/rhoai/odh-data-science-pipelines-argo-argoexec-rhel9 +47
- RHSA-2026:70996 Released 2026-09-23 · Red Hat rating ImportantRed Hat AI Inference Model Optimization Tools 3.4.5 (cuda)
- Red Hat AI Inference Server 3.4 registry.redhat.io/rhaii/model-opt-cuda-rhel9
- RHSA-2026:70995 Released 2026-09-23 · Red Hat rating ImportantRed Hat AI Inference 3.4.5 (rocm)
- Red Hat AI Inference Server 3.4 registry.redhat.io/rhaii/vllm-rocm-rhel9
- RHSA-2026:70979 Released 2026-09-23 · Red Hat rating ImportantRed Hat AI Inference 3.4.5 (cuda)
- Red Hat AI Inference Server 3.4 registry.redhat.io/rhaii/vllm-cuda-rhel9
- RHSA-2026:70969 Released 2026-09-23 · Red Hat rating ImportantRed Hat AI Inference 3.4.5 (spyre)
- Red Hat AI Inference Server 3.4 registry.redhat.io/rhaii/vllm-spyre-rhel9
- RHSA-2026:70965 Released 2026-09-23 · Red Hat rating ImportantRed Hat AI Inference 3.4.5 (cpu)
- Red Hat AI Inference Server 3.4 registry.redhat.io/rhaii/vllm-cpu-rhel9
- RHSA-2026:70267 Released 2026-09-22 · Red Hat rating ImportantRed Hat Quay 3.14.9
- Red Hat Quay 3.14 registry.redhat.io/quay/quay-rhel8
- RHSA-2026:69469 Released 2026-09-21 · Red Hat rating ImportantRed Hat AI Inference 3.4.5 (rocm)
- Red Hat AI Inference Server 3.4 registry.redhat.io/rhaii/vllm-rocm-rhel9
- RHSA-2026:69468 Released 2026-09-21 · Red Hat rating ImportantRed Hat AI Inference Model Optimization Tools 3.4.5 (cuda)
- Red Hat AI Inference Server 3.4 registry.redhat.io/rhaii/model-opt-cuda-rhel9
- RHSA-2026:69467 Released 2026-09-21 · Red Hat rating ImportantRed Hat AI Inference 3.4.5 (cuda)
- Red Hat AI Inference Server 3.4 registry.redhat.io/rhaii/vllm-cuda-rhel9
- RHSA-2026:69466 Released 2026-09-21 · Red Hat rating ImportantRed Hat AI Inference 3.4.5 (cpu)
- Red Hat AI Inference Server 3.4 registry.redhat.io/rhaii/vllm-cpu-rhel9
- RHSA-2026:69464 Released 2026-09-21 · Red Hat rating ImportantRed Hat AI Inference 3.4.5 (spyre)
- Red Hat AI Inference Server 3.4 registry.redhat.io/rhaii/vllm-spyre-rhel9
- RHSA-2026:69255 Released 2026-09-21 · Red Hat rating ImportantRed Hat Quay 3.16.6
- Red Hat Quay 3.16 registry.redhat.io/quay/quay-rhel9
- RHSA-2026:60520 Released 2026-08-27 · Red Hat rating CriticalRHOAI 3.4.4 - Red Hat OpenShift AI
- Red Hat OpenShift AI 3.4 registry.redhat.io/rhoai/odh-automl-rhel9, registry.redhat.io/rhoai/odh-autorag-rhel9, registry.redhat.io/rhoai/odh-built-in-detector-rhel9 +47
- RHSA-2026:54528 Released 2026-08-13 · Red Hat rating Importantpython-pillow security update
- Red Hat Enterprise Linux AppStream AUS (v.8.6) python-pillow-5.1.1-20.el8_6.1, python3-pillow-5.1.1-20.el8_6.1
- Red Hat Enterprise Linux AppStream EUS EXTENSION (v.8.6) python-pillow-5.1.1-20.el8_6.1, python3-pillow-5.1.1-20.el8_6.1
- RHSA-2026:54417 Released 2026-08-12 · Red Hat rating Importantpython-pillow security update
- Red Hat Enterprise Linux AppStream E4S (v.8.8) python-pillow-5.1.1-20.el8_8.1, python3-pillow-5.1.1-20.el8_8.1
- Red Hat Enterprise Linux AppStream TUS (v.8.8) python-pillow-5.1.1-20.el8_8.1, python3-pillow-5.1.1-20.el8_8.1
- RHSA-2026:54395 Released 2026-08-12 · Red Hat rating ImportantRed Hat Quay 3.17.4
- Red Hat Quay 3.17 registry.redhat.io/quay/quay-rhel9
- RHSA-2026:53520 Released 2026-08-11 · Red Hat rating ImportantRed Hat Quay 3.10.25
- Red Hat Quay 3.10 registry.redhat.io/quay/quay-rhel8
- RHSA-2026:52968 Released 2026-08-10 · Red Hat rating ImportantRed Hat Quay 3.12.21
- Red Hat Quay 3.12 registry.redhat.io/quay/quay-rhel8
- RHSA-2026:52551 Released 2026-08-10 · Red Hat rating Importantpython-pillow security update
- Red Hat Enterprise Linux AppStream AUS (v.8.4) python-pillow-5.1.1-15.el8_4.2, python3-pillow-5.1.1-15.el8_4.2
- Red Hat Enterprise Linux AppStream EUS EXTENSION (v.8.4) python-pillow-5.1.1-15.el8_4.2, python3-pillow-5.1.1-15.el8_4.2
- RHSA-2026:50931 Released 2026-08-05 · Red Hat rating ImportantRed Hat Quay 3.9.25
- Red Hat Quay 3.9 registry.redhat.io/quay/quay-rhel8
- RHSA-2026:50479 Released 2026-08-04 · Red Hat rating ImportantRed Hat Ansible Automation Platform 2.6 Container Release Update
- Red Hat Ansible Automation Platform 2.6 registry.redhat.io/ansible-automation-platform-26/controller-rhel9, registry.redhat.io/ansible-automation-platform-26/de-minimal-rhel9, registry.redhat.io/ansible-automation-platform-26/de-supported-rhel9 +7
- RHSA-2026:50336 Released 2026-08-04 · Red Hat rating ImportantRed Hat Ansible Automation Platform 2.6 Product Security and Bug Fix Update
- Red Hat Ansible Automation Platform 2.6 for RHEL 10 receptor-1.6.7-1.el10ap, receptorctl-1.6.7-1.el10ap
- Red Hat Ansible Automation Platform 2.6 for RHEL 9 automation-controller-4.7.15-2.el9ap, automation-controller-cli-4.7.15-2.el9ap, automation-controller-server-4.7.15-2.el9ap +15
- RHSA-2026:50340 Released 2026-08-04 · Red Hat rating ImportantRed Hat Ansible Automation Platform 2.7 Container Release Update
- Red Hat Ansible Automation Platform 2.7 registry.redhat.io/ansible-automation-platform-27/controller-rhel9, registry.redhat.io/ansible-automation-platform-27/de-minimal-rhel9, registry.redhat.io/ansible-automation-platform-27/de-supported-rhel9 +7
- RHSA-2026:50319 Released 2026-08-04 · Red Hat rating ImportantRed Hat Ansible Automation Platform 2.5 Product Security and Bug Fix Update
- Red Hat Ansible Automation Platform 2.5 for RHEL 8 automation-controller-venv-tower-4.6.31-1.el8ap, automation-eda-controller-1.1.21-1.el8ap, automation-eda-controller-base-1.1.21-1.el8ap +11
- Red Hat Ansible Automation Platform 2.5 for RHEL 9 automation-controller-venv-tower-4.6.31-1.el9ap, automation-eda-controller-1.1.21-1.el9ap, automation-eda-controller-base-1.1.21-1.el9ap +11
- RHSA-2026:50223 Released 2026-08-04 · Red Hat rating ImportantSatellite 6.16.12 Async Update
- Red Hat Satellite 6.16 for RHEL 8 libsolv-1:0.7.20-7.el8sat, openvox-agent-8.24.1-3.el8sat, openvox-server-8.14.1-1.el8sat +9
- Red Hat Satellite 6.16 for RHEL 9 openvox-agent-8.24.1-3.el9sat, openvox-server-8.14.1-1.el9sat, python-pillow-12.3.0-1.el9pc +7
- RHSA-2026:48933 Released 2026-07-30 · Red Hat rating ImportantRed Hat Quay 3.15.7
- Red Hat Quay 3.15 registry.redhat.io/quay/quay-rhel8
- RHSA-2026:48021 Released 2026-07-29 · Red Hat rating Importantpython-pillow security update
- Red Hat Enterprise Linux AppStream (v. 8) python-pillow-5.1.1-23.el8_10, python3-pillow-5.1.1-23.el8_10
- Red Hat Enterprise Linux CRB (v. 8) python3-pillow-5.1.1-23.el8_10, python3-pillow-devel-5.1.1-23.el8_10, python3-pillow-doc-5.1.1-23.el8_10 +1
Vendor assessments
Red Hat
Red Hat rating: Important. Red Hat's page for this CVE →
| Product | Status | Plan or fix |
|---|---|---|
| Exploit Intelligence | Affected | No fix yet |
| Lightspeed Core | Affected | No fix yet |
| OpenShift Lightspeed | Affected | No fix yet |
| Red Hat AI Inference Server | Affected | No fix yet |
| Red Hat Ansible Automation Platform 2 | Affected | No fix yet |
| Red Hat Enterprise Linux AI (RHEL AI) 3 | Affected | No fix planned: Will not fix |
| Red Hat OpenShift AI (RHOAI) | Affected | No fix yet |
| Red Hat Satellite 6 | Affected | No fix yet |
| Red Hat AI Inference Server 3.4 | Fixed | RHSA-2026:69464, RHSA-2026:69466, RHSA-2026:69467, RHSA-2026:69468, RHSA-2026:69469, RHSA-2026:70965, RHSA-2026:70969, RHSA-2026:70979, RHSA-2026:70995, RHSA-2026:70996 |
| Red Hat Ansible Automation Platform 2.5 for RHEL 8 | Fixed | RHSA-2026:50319 |
| Red Hat Ansible Automation Platform 2.5 for RHEL 9 | Fixed | RHSA-2026:50319 |
| Red Hat Ansible Automation Platform 2.6 | Fixed | RHSA-2026:50479 |
| Red Hat Ansible Automation Platform 2.6 for RHEL 9 | Fixed | RHSA-2026:50336 |
| Red Hat Ansible Automation Platform 2.7 | Fixed | RHSA-2026:50340 |
| Red Hat Enterprise Linux AI 3.4 | Fixed | RHSA-2026:76149, RHSA-2026:76150 |
| Red Hat Enterprise Linux AppStream (v. 8) | Fixed | RHSA-2026:48021 |
| Red Hat Enterprise Linux AppStream AUS (v.8.4) | Fixed | RHSA-2026:52551 |
| Red Hat Enterprise Linux AppStream AUS (v.8.6) | Fixed | RHSA-2026:54528 |
| Red Hat Enterprise Linux AppStream E4S (v.8.8) | Fixed | RHSA-2026:54417 |
| Red Hat Enterprise Linux AppStream EUS EXTENSION (v.8.4) | Fixed | RHSA-2026:52551 |
| Red Hat Enterprise Linux AppStream EUS EXTENSION (v.8.6) | Fixed | RHSA-2026:54528 |
| Red Hat Enterprise Linux AppStream TUS (v.8.8) | Fixed | RHSA-2026:54417 |
| Red Hat Enterprise Linux CRB (v. 8) | Fixed | RHSA-2026:48021 |
| Red Hat OpenShift AI 3.3 | Fixed | RHSA-2026:73987 |
| Red Hat OpenShift AI 3.4 | Fixed | RHSA-2026:60520 |
| Red Hat Quay 3.10 | Fixed | RHSA-2026:53520 |
| Red Hat Quay 3.12 | Fixed | RHSA-2026:52968 |
| Red Hat Quay 3.14 | Fixed | RHSA-2026:70267 |
| Red Hat Quay 3.15 | Fixed | RHSA-2026:48933 |
| Red Hat Quay 3.16 | Fixed | RHSA-2026:69255 |
| Red Hat Quay 3.17 | Fixed | RHSA-2026:54395 |
| Red Hat Quay 3.18 | Fixed | RHSA-2026:81110 |
| Red Hat Quay 3.9 | Fixed | RHSA-2026:50931 |
| Red Hat Satellite 6.16 for RHEL 8 | Fixed | RHSA-2026:50223 |
| Red Hat Satellite 6.16 for RHEL 9 | Fixed | RHSA-2026:50223 |
Not affected: 22 products
- OpenShift Lightspeed
- Red Hat Ansible Automation Platform 2
- Red Hat Ansible Automation Platform 2.5 for RHEL 8
- Red Hat Ansible Automation Platform 2.5 for RHEL 9
- Red Hat Ansible Automation Platform 2.6
- Red Hat Ansible Automation Platform 2.6 for RHEL 10
- Red Hat Ansible Automation Platform 2.6 for RHEL 9
- Red Hat Ansible Automation Platform 2.7
- Red Hat Enterprise Linux 7
- Red Hat OpenShift AI (RHOAI)
- Red Hat OpenShift AI 3.3
- Red Hat OpenShift AI 3.4
- Red Hat Quay 3.10
- Red Hat Quay 3.12
- Red Hat Quay 3.14
- Red Hat Quay 3.15
- Red Hat Quay 3.16
- Red Hat Quay 3.17
- Red Hat Quay 3.18
- Red Hat Quay 3.9
- Red Hat Satellite 6.16 for RHEL 8
- Red Hat Satellite 6.16 for RHEL 9
Timeline
- 2026-10-02 Threatist record created from CVE-2026-59197
- 2026-10-03 Alias added: GHSA-xj96-63gp-2gmr
- 2026-10-06 Fix available: RHSA-2026:76149 · Red Hat
- 2026-10-06 Fix available: RHSA-2026:76150 · Red Hat
- 2026-10-06 Fix available: Red Hat Enterprise Linux AI 3.4 · Red Hat
- 2026-10-07 Fix available: RHSA-2026:73987 · Red Hat
- 2026-10-07 Affected versions changed · Red Hat
- 2026-10-09 Affected versions changed · Red Hat
- 2026-10-13 Fix available: RHSA-2026:81110 · Red Hat
- 2026-10-13 Fix available: Red Hat Quay 3.18 · Red Hat
References
Patch 2
More python-pillow Pillow vulnerabilities
- TI-2026-76627 Out-of-bounds read in Pillow TIFF encoder ColorMap handling CVSS 4.0HIGH 8.8
- TI-2026-76625 Quadratic-time denial of service in Pillow PDF save_all CVSS 4.0HIGH 8.7
- TI-2026-76605 NULL pointer dereference in Pillow's Image.merge function CVSS 4.0HIGH 8.7
- TI-2026-76604 Out-of-bounds read in Pillow TIFF decoding leaks heap memory CVSS 4.0HIGH 8.8
- TI-2026-76602 Double free in Pillow ImagingScaleAffine on allocation failure CVSS 4.0HIGH 8.7
- TI-2026-76600 GIF seek in Pillow keeps rejected size, allowing denial of service CVSS 4.0HIGH 8.7
Sources
- CVE-2026-59197 · CVE Program
- CVE-2026-59197 · NVD
- FIRST EPSS
- GHSA-xj96-63gp-2gmr · GitHub Advisory Database · CC BY 4.0
- CVE-2026-59197 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences