{"id":"CVE-2026-59199","summary":"Pillow: Heap out-of-bounds write `Image.paste()` / `Image.crop()` via signed coordinate overflow","details":"Pillow is a Python imaging library. Prior to 12.3.0, Pillow public image coordinate APIs can trigger a native heap out-of-bounds write when given coordinates near the signed 32-bit integer limits in Image.paste(), Image.crop(), or Image.alpha_composite(). This issue is fixed in version 12.3.0.","aliases":["BIT-pillow-2026-59199","GHSA-6r8x-57c9-28j4","PYSEC-2026-3451"],"modified":"2026-08-18T17:55:06.271001Z","published":"2026-07-14T15:42:15.071Z","related":["SUSE-SU-2026:3084-1","SUSE-SU-2026:3268-1","openSUSE-SU-2026:21544-1"],"database_specific":{"cna_assigner":"GitHub_M","cwe_ids":["CWE-190","CWE-787"],"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/59xxx/CVE-2026-59199.json"},"references":[{"type":"WEB","url":"https://github.com/python-pillow/Pillow/releases/tag/12.3.0"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/59xxx/CVE-2026-59199.json"},{"type":"ADVISORY","url":"https://github.com/python-pillow/Pillow/security/advisories/GHSA-6r8x-57c9-28j4"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-59199"},{"type":"FIX","url":"https://github.com/python-pillow/Pillow/commit/ceefc348eb3c3844c7f9796ef2cc3a7dd5fbba7b"},{"type":"FIX","url":"https://github.com/python-pillow/Pillow/pull/9703"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/python-pillow/pillow","events":[{"introduced":"0"},{"fixed":"bb1d8e8ab8d29048624d96e3ee53cecf7c13d13d"},{"fixed":"ceefc348eb3c3844c7f9796ef2cc3a7dd5fbba7b"}],"database_specific":{"cpe":"cpe:2.3:a:python:pillow:*:*:*:*:*:*:*:*","extracted_events":[{"introduced":"0"},{"fixed":"12.3.0"}],"source":["CPE_RANGE","REFERENCES"]}}],"versions":["12.2.0","12.1.0","12.0.0","11.3.0","11.2.1","11.1.0","11.0.0","10.4.0","10.3.0","10.2.0","10.1.0","10.0.0","9.5.0","9.4.0","9.3.0","9.2.0","9.1.0","9.0.0","8.4.0","8.3.0","8.2.0","8.1.0","8.0.0","7.2.0","7.1.0","7.0.0","6.2.0","6.1.0","6.0.0","5.4.0","5.3.0","5.2.0","5.1.0","5.0.0","4.3.0","4.2.0","4.1.0","4.0.0","4.0.0a","3.4.0","3.3.0","3.2.0","3.1.0","3.1.0-rc1","2.9.0","2.9.0.dev2","2.9.0.dev1","2.9.0.dev0","2.8.1","2.8.0","2.7.0","2.5.0","2.3.0","2.2.1","2.2.0","2.1.0","2.0.0","1.7.8","1.7.7","1.2","1.0"],"database_specific":{"source":"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2026-59199.json","vanir_signatures_modified":"2026-08-18T17:55:06Z","vanir_signatures":[{"signature_version":"v1","source":"https://github.com/python-pillow/pillow/commit/ceefc348eb3c3844c7f9796ef2cc3a7dd5fbba7b","target":{"file":"src/libImaging/Paste.c","function":"ImagingFill2"},"deprecated":false,"digest":{"function_hash":"186777945359946930939975801775170177923","length":1649},"id":"CVE-2026-59199-59f6cc08","signature_type":"Function"},{"deprecated":false,"digest":{"function_hash":"198802159923287429847858333651113598766","length":1804},"id":"CVE-2026-59199-658657f8","signature_type":"Function","signature_version":"v1","source":"https://github.com/python-pillow/pillow/commit/ceefc348eb3c3844c7f9796ef2cc3a7dd5fbba7b","target":{"file":"src/libImaging/Paste.c","function":"ImagingPaste"}},{"digest":{"line_hashes":["296163850804002932414883555459713379818","115741992203010642505643277953344472025","250666387742119818199253077350116666885","91876094229045415556241255196288404475","242687451754591433859006675395045992700","324709129864953715865015810487018963374","260443116354350410193589317745027951257","280102789298647002004892414544689539120","222540834997665438075706397741234403060","50796734625348708066158291007582073557","249822155065022888012099150687071972490","43458357772319693472086708921802623841","328149464602621958290514359353666098839","242687451754591433859006675395045992700","324709129864953715865015810487018963374","94303673514783870225628690123372589055","101019720115066047389055359477221882459","175027921222596166709463088028731628016"],"threshold":0.9},"id":"CVE-2026-59199-917115ee","signature_type":"Line","signature_version":"v1","source":"https://github.com/python-pillow/pillow/commit/ceefc348eb3c3844c7f9796ef2cc3a7dd5fbba7b","target":{"file":"src/libImaging/Paste.c"},"deprecated":false}]}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"}]}