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.
CVE-2026-59197
This high-severity CVE scores 8.2 under a secondary CVSS source (NVD's own analysis pending). EPSS exploit probability: 0.4%, top 63% of all CVEs by exploit prediction. GitHub Security Advisory data not yet ingested — confidence will rise once GHSA publishes (typical lag: hours to days for open-source ecosystem CVEs; never for infrastructure-only CVEs).
- High severity, but no confirmed exploitation yet
A fix is available — apply it.
- CVSS v3
- 8.2
- EG Score
- 8.2(medium)
- EG Risk
- 68(Attend)EG Risk 68/100SSVC: Attend
EG Risk is EchelonGraph's 0–100 priority score: it fuses intrinsic severity with real-world exploitation and automatability so you can rank equal-severity CVEs and fix the most dangerous first. Higher = act sooner. Distinct from the 0–10 EG Score (severity).
How it’s computedSeverity82% × 45%Exploitation40% × 40%Automatability100% × 15%Action: Remediate soon — notable exploitation risk. - EPSS PROB
- 0%
- EPSS %ILE
- 37%
- KEV
- Not listed
Published
July 14, 2026
Last Modified
July 21, 2026
Advisory Details (4)
Auto-updated Jul 14, 2026Heap out-of-bounds write in Pillow `ImageFilter.RankFilter` via integer overflow in `ImagingExpand` · Advisory · python-pillow/Pillow · GitHub
https://github.com/python-pillow/Pillow/security/advisories/GHSA-xj96-63gp-2gmr12.3.0
Patch available: python-pillow/Pillow 12.3.0
https://github.com/python-pillow/Pillow/releases/tag/12.3.0Validate large filter sizes when initializing RankFilter
Patch available: python-pillow/Pillow 12.3.0 (PR #9695 merged 2026-06-21)
https://github.com/python-pillow/Pillow/pull/9695commit cce3bdb867c7 (python-pillow/Pillow)
Patch available: python-pillow/Pillow 12.3.0 (contains commit cce3bdb867c7)
https://github.com/python-pillow/Pillow/commit/cce3bdb867c77a3420261ed1bfdb6b0787ec8fc1Vendor Advisories for CVE-2026-59197(15)
These vendors published their own advisory mentioning this CVE — often with vendor-specific remediation steps + affected product lists not in NVD.
- RHSA-2026:60520Red Hat Product SecurityCritical
Red Hat Security Advisory: RHOAI 3.4.4 - Red Hat OpenShift AI
- RHSA-2026:54528Red Hat Product SecurityHigh
Red Hat Security Advisory: python-pillow security update
- RHSA-2026:54417Red Hat Product SecurityHigh
Red Hat Security Advisory: python-pillow security update
- RHSA-2026:53520Red Hat Product SecurityHigh
Red Hat Security Advisory: Red Hat Quay 3.10.25
- RHSA-2026:52968Red Hat Product SecurityHigh
Red Hat Security Advisory: Red Hat Quay 3.12.21
- RHSA-2026:52551Red Hat Product SecurityHigh
Red Hat Security Advisory: python-pillow security update
- RHSA-2026:50931Red Hat Product SecurityHigh
Red Hat Security Advisory: Red Hat Quay 3.9.25
- RHSA-2026:50479Red Hat Product SecurityHigh
Red Hat Security Advisory: Red Hat Ansible Automation Platform 2.6 Container Release Update
- +7 more
Patch Availability(13)
| Vendor / Ecosystem | Fixed in / Patch | Released | Source |
|---|---|---|---|
| redhat | rhoai/odh-workbench-jupyter-trustyai-cpu-py312-rhel9:1787073593 | 2026-08-27 | redhat |
| redhat | python-pillow-0:5.1.1-20.el8_6.1 | 2026-08-13 | redhat |
| redhat | python-pillow-0:5.1.1-20.el8_8.1 | 2026-08-12 | redhat |
| redhat | quay/quay-rhel8:1786395065 | 2026-08-11 | redhat |
| redhat | quay/quay-rhel8:1786170635 | 2026-08-10 | redhat |
| redhat | python-pillow-0:5.1.1-15.el8_4.2 | 2026-08-10 | redhat |
| redhat | quay/quay-rhel8:1785950004 | 2026-08-05 | redhat |
| redhat | python-pillow-0:12.3.0-1.el9pc | 2026-08-04 | redhat |
| redhat | ansible-automation-platform-26/lightspeed-chatbot-rhel9:1785646188 | 2026-08-04 | redhat |
| redhat | ansible-automation-platform-27/lightspeed-chatbot-rhel9:1785426734 | 2026-08-04 | redhat |
| redhat | python3.12-pillow-0:12.3.0-1.el9ap | 2026-08-04 | redhat |
| redhat | quay/quay-rhel8:1785261506 | 2026-07-30 | redhat |
| redhat | python-pillow-0:5.1.1-23.el8_10 | 2026-07-29 | redhat |
Patches are aggregated from vendor advisories (Red Hat, Microsoft, Cisco, GitHub) and package ecosystems (OSV, GHSA). Multiple rows for the same upstream release have been deduplicated.
Affected Packages
(5 across 5 ecosystems)
Debian:11(1)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| pillow | 10.0.0-1 ... 9.5.0-1 (38 versions) | — | — |
Debian:12(1)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| pillow | 10.0.0-1 ... 9.5.0-1 (23 versions) | — | — |
Debian:13(1)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| pillow | 11.1.0-5 ... 12.3.0-1 (13 versions) | — | — |
Debian:14(1)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| pillow | 11.1.0-5 ... 12.2.0-1 (8 versions) | 12.3.0-1 | — |
PyPI(1)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| pillow | 1.0 ... 9.5.0 (106 versions) | 12.3.0 | — |
Weakness Classification(2)
MITRE Common Weakness Enumeration — the root-cause categories this CVE belongs to.
Data Freshness Timeline
(refreshed 19× in last 7d / 106× in last 30d)
Each row is a source pipeline that fetched or updated this CVE on that date, with what changed. For example, "NVD update" means NVD published or revised its analysis for this CVE; "MITRE cvelistV5" means we ingested or refreshed it from the CNA feed. Most recent first.
Showing the most recent 100 of 141 total refreshes for this CVE.
- 2026-08-30 05:19 UTCEG score recompute
- 2026-08-30 05:19 UTCVendor advisory
- 2026-08-30 01:22 UTCEPSS rescore
- 2026-08-28 21:42 UTCEPSS rescore
- 2026-08-27 21:33 UTCEG score recompute
- 2026-08-27 21:33 UTCVendor advisory
- 2026-08-27 14:25 UTCEPSS rescore
- 2026-08-27 03:14 UTCEG score recompute
- 2026-08-27 03:14 UTCVendor advisory
- 2026-08-26 14:46 UTCEPSS rescore
- 2026-08-26 14:29 UTCVendor advisory
- 2026-08-26 01:44 UTCEG score recompute
- 2026-08-26 01:44 UTCVendor advisory
- 2026-08-25 13:49 UTCEPSS rescore
- 2026-08-25 10:54 UTCVendor advisory
- 2026-08-24 22:02 UTCEG score recompute
- 2026-08-24 22:02 UTCVendor advisory
- 2026-08-24 09:16 UTCVendor advisory
- 2026-08-23 19:41 UTCVendor advisory
- 2026-08-23 06:56 UTCEG score recompute
- 2026-08-23 06:56 UTCVendor advisory
- 2026-08-23 00:19 UTCEPSS rescore
- 2026-08-22 18:10 UTCVendor advisory
- 2026-08-22 05:25 UTCEG score recompute
- 2026-08-22 05:25 UTCVendor advisory
Show 75 moreShow fewer
- 2026-08-21 23:49 UTCEPSS rescore
- 2026-08-21 16:40 UTCVendor advisory
- 2026-08-21 03:32 UTCEG score recompute
- 2026-08-21 03:32 UTCVendor advisory
- 2026-08-20 22:55 UTCEPSS rescore
- 2026-08-20 14:39 UTCVendor advisory
- 2026-08-20 01:05 UTCEG score recompute
- 2026-08-20 01:05 UTCVendor advisory
- 2026-08-19 17:04 UTCEPSS rescore
- 2026-08-19 12:16 UTCVendor advisory
- 2026-08-18 23:04 UTCEG score recompute
- 2026-08-18 23:04 UTCVendor advisory
- 2026-08-18 13:48 UTCEPSS rescore
- 2026-08-18 10:20 UTCVendor advisory
- 2026-08-17 21:29 UTCEG score recompute
- 2026-08-17 21:29 UTCVendor advisory
- 2026-08-17 13:47 UTCEPSS rescore
- 2026-08-17 08:15 UTCVendor advisory
- 2026-08-16 19:31 UTCEG score recompute
- 2026-08-16 19:31 UTCVendor advisory
- 2026-08-16 14:56 UTCEPSS rescore
- 2026-08-16 06:22 UTCEG score recompute
- 2026-08-16 06:22 UTCVendor advisory
- 2026-08-16 02:14 UTCEPSS rescore
- 2026-08-15 17:38 UTCVendor advisory
- 2026-08-15 04:53 UTCEG score recompute
- 2026-08-15 04:53 UTCVendor advisory
- 2026-08-15 01:30 UTCEPSS rescore
- 2026-08-14 16:08 UTCVendor advisory
- 2026-08-14 03:23 UTCEG score recompute
- 2026-08-14 03:23 UTCVendor advisory
- 2026-08-13 22:00 UTCEPSS rescore
- 2026-08-13 14:38 UTCVendor advisory
- 2026-08-13 01:53 UTCEG score recompute
- 2026-08-13 01:53 UTCVendor advisory
- 2026-08-12 13:51 UTCEPSS rescore
- 2026-08-12 13:09 UTCVendor advisory
- 2026-08-12 00:23 UTCEG score recompute
- 2026-08-12 00:23 UTCVendor advisory
- 2026-08-11 11:36 UTCEG score recompute
- 2026-08-11 11:36 UTCVendor advisory
- 2026-08-11 00:00 UTCEPSS rescore
- 2026-08-10 22:51 UTCVendor advisory
- 2026-08-10 10:06 UTCVendor advisory
- 2026-08-09 21:21 UTCEG score recompute
- 2026-08-09 21:21 UTCVendor advisory
- 2026-08-09 13:46 UTCEPSS rescore
- 2026-08-09 08:37 UTCVendor advisory
- 2026-08-08 19:52 UTCEG score recompute
- 2026-08-08 19:52 UTCVendor advisory
- 2026-08-08 16:37 UTCEPSS rescore
- 2026-08-08 07:07 UTCVendor advisory
- 2026-08-07 18:23 UTCEG score recompute
- 2026-08-07 18:23 UTCVendor advisory
- 2026-08-07 05:38 UTCVendor advisory
- 2026-08-06 16:53 UTCEG score recompute
- 2026-08-06 16:53 UTCVendor advisory
- 2026-08-06 13:47 UTCEPSS rescore
- 2026-08-06 04:08 UTCEG score recompute
- 2026-08-06 04:08 UTCVendor advisory
- 2026-08-05 19:17 UTCEPSS rescore
- 2026-08-05 15:23 UTCVendor advisory
- 2026-08-05 02:21 UTCEG score recompute
- 2026-08-05 02:21 UTCVendor advisory
- 2026-08-04 15:10 UTCEPSS rescore
- 2026-08-04 13:36 UTCEG score recompute
- 2026-08-04 13:36 UTCVendor advisory
- 2026-08-04 10:39 UTCEPSS rescore
- 2026-08-04 00:51 UTCVendor advisory
- 2026-08-03 12:06 UTCEG score recompute
- 2026-08-03 12:06 UTCVendor advisory
- 2026-08-03 10:36 UTCEPSS rescore
- 2026-08-02 22:55 UTCVendor advisory
- 2026-08-02 10:10 UTCEG score recompute
- 2026-08-02 10:10 UTCVendor advisory
Related CVEs(same vendor + same CWE)
Same vendor
10 shownredhat
- CVE-2001-0825EG 10.0HIGH
- CVE-2001-1009EG 10.0EPSS p93HIGH
- CVE-2001-0554EG 10.0EPSS p99HIGH
- CVE-2001-1162EG 10.0EPSS p96HIGH
- CVE-2001-0414EG 10.0EPSS p100HIGH
- CVE-2001-0191EG 10.0EPSS p92HIGH
- CVE-2001-0301EG 10.0EPSS p91HIGH
- CVE-2001-0197EG 10.0EPSS p96HIGH
- CVE-2001-0233EG 10.0EPSS p96HIGH
- CVE-2001-0010EG 10.0EPSS p98HIGH
Same CWE
10 shownCWE-190 · CWE-787
Frequently asked(5)
What is CVE-2026-59197?
When was CVE-2026-59197 disclosed?
Is CVE-2026-59197 actively exploited?
What is the CVSS score of CVE-2026-59197?
How do I remediate CVE-2026-59197?
Dependency Blast Radius
See which npm, PyPI, Go, and Maven packages are affected by CVE-2026-59197
Is Your Infrastructure Affected by CVE-2026-59197?
EchelonGraph automatically scans your cloud infrastructure and maps CVE exposure using blast radius analysis.