CVE Explorer
CVE-2026-59197
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.
Known exploited
Not asserted
Disputed
No
Stale source
No
Conflicts
1
Preserved source conflicts
No provider value was silently selected as the winner.
cwe · 2 assertions
{"cweId":"CWE-787","description":"CWE-787: Out-of-bounds Write","lang":"en","type":"CWE"}
- cve_program_cvelist_v5cweurn:baitaphish:normalized-source-record:v2:9f5c71b76e86403784a45d0c7e99a4d05a764114b75c7213e900a206c35753f9 · sha256:d0015cf5b1d88a4c… · /containers/cna/problemTypes/0/descriptions/0
{"cweId":"CWE-190","description":"CWE-190: Integer Overflow or Wraparound","lang":"en","type":"CWE"}
- cve_program_cvelist_v5cweurn:baitaphish:normalized-source-record:v2:9f5c71b76e86403784a45d0c7e99a4d05a764114b75c7213e900a206c35753f9 · sha256:d0015cf5b1d88a4c… · /containers/cna/problemTypes/1/descriptions/0
Affected products and versions
1 source assertion{"product":"Pillow","vendor":"python-pillow","versions":[{"status":"affected","version":"< 12.3.0"}]}
- cve_program_cvelist_v5affectedurn:baitaphish:normalized-source-record:v2:9f5c71b76e86403784a45d0c7e99a4d05a764114b75c7213e900a206c35753f9 · sha256:d0015cf5b1d88a4c… · /containers/cna/affected/0
Provider-owned CVSS observations
1 source assertion{"metric":{"attackComplexity":"LOW","attackVector":"NETWORK","availabilityImpact":"HIGH","baseScore":8.2,"baseSeverity":"HIGH","confidentialityImpact":"NONE","integrityImpact":"LOW","privilegesRequired":"NONE","scope":"UNCHANGED","userInteraction":"NONE","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:H","version":"3.1"},"metric_type":"cvssV3_1"}
- cve_program_cvelist_v5cvssurn:baitaphish:normalized-source-record:v2:9f5c71b76e86403784a45d0c7e99a4d05a764114b75c7213e900a206c35753f9 · sha256:d0015cf5b1d88a4c… · /containers/cna/metrics/0/cvssV3_1
CWE assertions
2 source assertions{"cweId":"CWE-787","description":"CWE-787: Out-of-bounds Write","lang":"en","type":"CWE"}
- cve_program_cvelist_v5cweurn:baitaphish:normalized-source-record:v2:9f5c71b76e86403784a45d0c7e99a4d05a764114b75c7213e900a206c35753f9 · sha256:d0015cf5b1d88a4c… · /containers/cna/problemTypes/0/descriptions/0
{"cweId":"CWE-190","description":"CWE-190: Integer Overflow or Wraparound","lang":"en","type":"CWE"}
- cve_program_cvelist_v5cweurn:baitaphish:normalized-source-record:v2:9f5c71b76e86403784a45d0c7e99a4d05a764114b75c7213e900a206c35753f9 · sha256:d0015cf5b1d88a4c… · /containers/cna/problemTypes/1/descriptions/0
Source references
5 source assertions{"name":"https://github.com/python-pillow/Pillow/commit/cce3bdb867c77a3420261ed1bfdb6b0787ec8fc1","tags":["x_refsource_MISC"],"url":"https://github.com/python-pillow/Pillow/commit/cce3bdb867c77a3420261ed1bfdb6b0787ec8fc1"}
- cve_program_cvelist_v5referenceurn:baitaphish:normalized-source-record:v2:9f5c71b76e86403784a45d0c7e99a4d05a764114b75c7213e900a206c35753f9 · sha256:d0015cf5b1d88a4c… · /containers/cna/references/2
{"name":"https://github.com/python-pillow/Pillow/pull/9695","tags":["x_refsource_MISC"],"url":"https://github.com/python-pillow/Pillow/pull/9695"}
- cve_program_cvelist_v5referenceurn:baitaphish:normalized-source-record:v2:9f5c71b76e86403784a45d0c7e99a4d05a764114b75c7213e900a206c35753f9 · sha256:d0015cf5b1d88a4c… · /containers/cna/references/1
{"name":"https://github.com/python-pillow/Pillow/releases/tag/12.3.0","tags":["x_refsource_MISC"],"url":"https://github.com/python-pillow/Pillow/releases/tag/12.3.0"}
- cve_program_cvelist_v5referenceurn:baitaphish:normalized-source-record:v2:9f5c71b76e86403784a45d0c7e99a4d05a764114b75c7213e900a206c35753f9 · sha256:d0015cf5b1d88a4c… · /containers/cna/references/3
{"name":"https://github.com/python-pillow/Pillow/security/advisories/GHSA-xj96-63gp-2gmr","tags":["x_refsource_CONFIRM"],"url":"https://github.com/python-pillow/Pillow/security/advisories/GHSA-xj96-63gp-2gmr"}
- cve_program_cvelist_v5referenceurn:baitaphish:normalized-source-record:v2:9f5c71b76e86403784a45d0c7e99a4d05a764114b75c7213e900a206c35753f9 · sha256:d0015cf5b1d88a4c… · /containers/cna/references/0
{"tags":["exploit"],"url":"https://github.com/python-pillow/Pillow/security/advisories/GHSA-xj96-63gp-2gmr"}
- cve_program_cvelist_v5referenceurn:baitaphish:normalized-source-record:v2:9f5c71b76e86403784a45d0c7e99a4d05a764114b75c7213e900a206c35753f9 · sha256:d0015cf5b1d88a4c… · /containers/adp/0/references/0
Attribution and limitations
- CVE Program CVEList V5: Reproduce the MITRE copyright designation and CVE license in copies. Source →
Provider severity values are preserved separately. Baitaphish does not convert them into a risk rating, infer affected products, or treat EPSS as observed exploitation.