{"id":"CVE-2016-4009","aliases":["DEBIAN-CVE-2016-4009","EUVD-2016-0023","GHSA-hvr8-466p-75rh","PYSEC-2016-7","SUSE-SU-2019:2334-1","SUSE-SU-2020:1194-1","UBUNTU-CVE-2016-4009"],"status":"published","title":"Pillow Integer overflow in ImagingResampleHorizontal","description":"Integer overflow in the ImagingResampleHorizontal function in libImaging/Resample.c in Pillow before 3.1.1 allows remote attackers to have unspecified impact via negative values of the new size, which triggers a heap-based buffer overflow.","severity":{"version":"3.0","score":9.8,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical","assessor":"primary","from":"nvd"},"epss":{"day":"2026-11-08","score":0.07871,"percentile":0.94739,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-119"],"published":"2016-04-13T16:00:00Z","modified":"2026-10-20T13:14:38Z","fixes":[{"ecosystem":"PyPI","package":"pillow","fixed_in":["3.1.1"],"sources":["ghsa","osv"]},{"ecosystem":"Debian:12","package":"pillow","fixed_in":["3.1.1-1"],"sources":["osv"]},{"ecosystem":"Debian:13","package":"pillow","fixed_in":["3.1.1-1"],"sources":["osv"]},{"ecosystem":"Debian:14","package":"pillow","fixed_in":["3.1.1-1"],"sources":["osv"]}],"affected":[{"source":"ghsa","ecosystem":"PyPI","package":"pillow","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.1.1"}]}]},{"source":"osv","ecosystem":"Debian:12","package":"pillow","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.1.1-1"}]}]},{"source":"osv","ecosystem":"Debian:13","package":"pillow","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.1.1-1"}]}]},{"source":"osv","ecosystem":"Debian:14","package":"pillow","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.1.1-1"}]}]},{"source":"osv","ecosystem":"PyPI","package":"pillow","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.1.1"}]}],"versions":["1.0","1.1","1.2","1.3","1.4","1.5","1.6","1.7.0","1.7.1","1.7.2","1.7.3","1.7.4","1.7.5","1.7.6","1.7.7","1.7.8","2.0.0","2.1.0","2.2.0","2.2.1","2.2.2","2.3.0","2.3.1","2.3.2","2.4.0","2.5.0","2.5.1","2.5.2","2.5.3","2.6.0","2.6.1","2.6.2","2.7.0","2.8.0","2.8.1","2.8.2","2.9.0","3.0.0","3.1.0","3.1.0.rc1","3.1.0rc1"]},{"source":"osv","ecosystem":"PyPI","package":"pillow","ranges":[{"type":"GIT","events":[{"introduced":"0"},{"fixed":"4e0d9b0b9740d258ade40cce248c93777362ac1e"}]},{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.1.1"}]}],"versions":["1.0","1.1","1.2","1.3","1.4","1.5","1.6","1.7.0","1.7.1","1.7.2","1.7.3","1.7.4","1.7.5","1.7.6","1.7.7","1.7.8","2.0.0","2.1.0","2.2.0","2.2.1","2.2.2","2.3.0","2.3.1","2.3.2","2.4.0","2.5.0","2.5.1","2.5.2","2.5.3","2.6.0","2.6.1","2.6.2","2.7.0","2.8.0","2.8.1","2.8.2","2.9.0","3.0.0","3.1.0","3.1.0.rc1","3.1.0rc1"]},{"source":"osv","ecosystem":"SUSE:OpenStack Cloud 7","package":"python-Pillow","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.8.1-4.9.1"}]}],"bundled":2},{"source":"osv","ecosystem":"SUSE:Enterprise Storage 4","package":"python-Pillow","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.8.1-4.9.1"}]}],"bundled":2},{"source":"osv","ecosystem":"SUSE:Enterprise Storage 5","package":"python-Pillow","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.8.1-3.6.1"}]}],"bundled":2}],"products":[{"vendor":"python","product":"pillow"}],"references":[{"url":"https://security.gentoo.org/glsa/201612-52","tags":["vendor-advisory","x_refsource_GENTOO","x_transferred","advisory","web"]},{"url":"https://github.com/python-pillow/Pillow/pull/1714","tags":["x_refsource_CONFIRM","x_transferred","Patch","fix","web"]},{"url":"https://github.com/python-pillow/Pillow/commit/4e0d9b0b9740d258ade40cce248c93777362ac1e","tags":["x_refsource_CONFIRM","x_transferred","Patch","fix","web"]},{"url":"http://www.securityfocus.com/bid/86064","tags":["vdb-entry","x_refsource_BID","x_transferred","web"]},{"url":"https://github.com/python-pillow/Pillow/blob/c3cb690fed5d4bf0c45576759de55d054916c165/CHANGES.rst","tags":["x_refsource_CONFIRM","x_transferred","Patch","Vendor Advisory","fix","web","report"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2016-4009","tags":["advisory"]},{"url":"https://github.com/advisories/GHSA-hvr8-466p-75rh","tags":["advisory"]},{"url":"https://github.com/pypa/advisory-database/tree/main/vulns/pillow/PYSEC-2016-7.yaml","tags":["web"]},{"url":"https://security-tracker.debian.org/tracker/CVE-2016-4009","tags":["advisory"]},{"url":"https://github.com/python-pillow/Pillow","tags":["package"]},{"url":"https://www.suse.com/support/update/announcement/2019/suse-su-20192334-1/","tags":["advisory"]},{"url":"https://bugzilla.suse.com/967970","tags":["report"]},{"url":"https://bugzilla.suse.com/975500","tags":["report"]},{"url":"https://www.suse.com/security/cve/CVE-2016-2533","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2016-4009","tags":["web"]},{"url":"https://www.suse.com/support/update/announcement/2020/suse-su-20201194-1/","tags":["advisory"]},{"url":"https://ubuntu.com/security/CVE-2016-4009","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2016-4009","tags":["report"]}],"sources":{"cve":[{"id":"CVE-2016-4009","description":"Integer overflow in the ImagingResampleHorizontal function in libImaging/Resample.c in Pillow before 3.1.1 allows remote attackers to have unspecified impact via negative values of the new size, which triggers a heap-based buffer overflow.","status":"published","published":"2016-04-13T16:00:00Z","modified":"2024-08-06T00:17:30.835Z","updated_at":"2026-11-02T14:33:34.815789Z"}],"euvd":[{"id":"EUVD-2016-0023","description":"Integer overflow in the ImagingResampleHorizontal function in libImaging/Resample.c in Pillow before 3.1.1 allows remote attackers to have unspecified impact via negative values of the new size, which triggers a heap-based buffer overflow.","status":"published","published":"2016-04-13T16:00:00Z","modified":"2024-08-06T00:17:30Z","updated_at":"2026-11-03T02:22:48.270082Z"}],"ghsa":[{"id":"GHSA-hvr8-466p-75rh","title":"Pillow Integer overflow in ImagingResampleHorizontal","description":"Integer overflow in the `ImagingResampleHorizontal` function in `libImaging/Resample.c` in Pillow before 3.1.1 allows remote attackers to have unspecified impact via negative values of the new size, which triggers a heap-based buffer overflow.","status":"published","published":"2018-07-24T20:15:48Z","modified":"2024-10-08T13:06:58Z","cvss":[{"version":"3.0","score":9.8,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical"},{"version":"4.0","score":9.3,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N","level":"critical"}],"cwes":["CWE-119"],"updated_at":"2026-11-02T14:38:08.742903Z"}],"nvd":[{"id":"CVE-2016-4009","description":"Integer overflow in the ImagingResampleHorizontal function in libImaging/Resample.c in Pillow before 3.1.1 allows remote attackers to have unspecified impact via negative values of the new size, which triggers a heap-based buffer overflow.","status":"published","published":"2016-04-13T16:59:25.353Z","modified":"2026-06-17T00:46:43.993Z","cvss":[{"version":"3.0","score":9.8,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical","assessor":"primary"},{"version":"2.0","score":10,"vector":"AV:N/AC:L/Au:N/C:C/I:C/A:C","level":"high","assessor":"primary"}],"cwes":["CWE-119"],"updated_at":"2026-11-02T14:03:23.795791Z"}],"osv":[{"id":"CVE-2016-4009","description":"Integer overflow in the ImagingResampleHorizontal function in libImaging/Resample.c in Pillow before 3.1.1 allows remote attackers to have unspecified impact via negative values of the new size, which triggers a heap-based buffer overflow.","status":"published","published":"2016-04-13T16:59:25.353Z","modified":"2026-10-20T13:14:38.946806697Z","cvss":[{"version":"3.0","score":9.8,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical"}],"updated_at":"2026-11-02T15:44:02.454775Z"},{"id":"DEBIAN-CVE-2016-4009","description":"Integer overflow in the ImagingResampleHorizontal function in libImaging/Resample.c in Pillow before 3.1.1 allows remote attackers to have unspecified impact via negative values of the new size, which triggers a heap-based buffer overflow.","status":"published","published":"2016-04-13T16:59:25.353Z","modified":"2026-09-22T07:00:46.596129037Z","cvss":[{"version":"3.0","score":9.8,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical"}],"updated_at":"2026-11-02T15:45:27.627285Z"},{"id":"GHSA-hvr8-466p-75rh","title":"Pillow Integer overflow in ImagingResampleHorizontal","description":"Integer overflow in the `ImagingResampleHorizontal` function in `libImaging/Resample.c` in Pillow before 3.1.1 allows remote attackers to have unspecified impact via negative values of the new size, which triggers a heap-based buffer overflow.","status":"published","published":"2018-07-24T20:15:48Z","modified":"2024-10-08T13:22:43.044902Z","cvss":[{"version":"3.0","score":9.8,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical"},{"version":"4.0","score":9.3,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N","level":"critical"}],"cwes":["CWE-119"],"updated_at":"2026-11-02T15:46:49.621585Z"},{"id":"UBUNTU-CVE-2016-4009","description":"Integer overflow in the ImagingResampleHorizontal function in libImaging/Resample.c in Pillow before 3.1.1 allows remote attackers to have unspecified impact via negative values of the new size, which triggers a heap-based buffer overflow.","status":"withdrawn","published":"2016-04-13T16:59:00Z","modified":"2025-07-16T07:34:27.600991Z","cvss":[{"version":"3.0","score":9.8,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical"}],"updated_at":"2026-11-02T15:54:12.261906Z"},{"id":"PYSEC-2016-7","description":"Integer overflow in the ImagingResampleHorizontal function in libImaging/Resample.c in Pillow before 3.1.1 allows remote attackers to have unspecified impact via negative values of the new size, which triggers a heap-based buffer overflow.","status":"published","published":"2016-04-13T16:59:00Z","modified":"2023-11-08T03:58:28.124806Z","updated_at":"2026-11-02T15:52:51.645172Z"},{"id":"SUSE-SU-2019:2334-1","title":"Security update for python-Pillow","description":"This update for python-Pillow fixes the following issues:\n\n- CVE-2016-2533: Fixed a buffer overflow in the PCD decoding (bsc#967970).\n- CVE-2016-4009: Fixed an interger overflow in ImagingResampleHorizontal() (bsc#975500).\n","status":"published","published":"2019-09-09T10:08:24Z","modified":"2026-02-04T02:39:38.518502Z","updated_at":"2026-11-02T15:53:46.44301Z"},{"id":"SUSE-SU-2020:1194-1","title":"Security update for python-Pillow","description":"This update for python-Pillow fixes the following issues:\n\nSecurity issues fixed:\n\n- CVE-2016-2533: Fixed an integer overflow in the ImagingResampleHorizontal function (bsc#967970).\n- CVE-2016-4009: Fixed a buffer overflow in the PCD decoder (bsc#975500).\n","status":"published","published":"2020-05-06T09:48:24Z","modified":"2026-02-04T03:52:38.630152Z","updated_at":"2026-11-02T15:53:47.634847Z"}]}}
