{"id":"CVE-2026-102504","aliases":["DEBIAN-CVE-2026-102504","EUVD-2026-90811","GHSA-g549-r73g-x7x6","MGASA-2026-0500","UBUNTU-CVE-2026-102504"],"status":"published","title":"Imager versions before 1.037 for Perl exit the process reading a raw image with an out-of-range raw_datachannels value in i_readraw_wiol","description":"Imager versions before 1.037 for Perl exit the process reading a raw image with an out-of-range raw_datachannels value in i_readraw_wiol.\n\nNothing range-checks raw_datachannels. The line buffer is sized as the image width times the channel count with no overflow check, so a negative or very large count requests an excessive allocation. When it fails, Imager's allocator calls exit(3).\n\nPassing an untrusted raw_datachannels value to Imager-\u003eread() triggers an uncatchable exit.","severity":{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high","assessor":"adp","from":"cve"},"epss":{"day":"2026-11-12","score":0.00392,"percentile":0.33862,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-190","CWE-789"],"published":"2026-10-01T13:11:38Z","modified":"2026-10-28T11:06:47Z","fixes":[{"ecosystem":"Debian:14","package":"libimager-perl","fixed_in":["1.037+dfsg-2"],"sources":["osv"]}],"affected":[{"source":"osv","ecosystem":"Debian:12","package":"libimager-perl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.019+dfsg-1","1.019+dfsg-2","1.020+dfsg-1","1.022+dfsg-1","1.023+dfsg-1","1.024+dfsg-1","1.024+dfsg-2","1.025+dfsg-1","1.027+dfsg-1","1.028+dfsg-1","1.029+dfsg-1","1.030+dfsg-1","1.031+dfsg-1","1.032+dfsg-1","1.033+dfsg-1","1.034+dfsg-1","1.034+dfsg-2","1.035+dfsg-1","1.036+dfsg-1","1.037+dfsg-1","1.037+dfsg-2"]},{"source":"osv","ecosystem":"Debian:13","package":"libimager-perl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.027+dfsg-1","1.028+dfsg-1","1.029+dfsg-1","1.030+dfsg-1","1.031+dfsg-1","1.032+dfsg-1","1.033+dfsg-1","1.034+dfsg-1","1.034+dfsg-2","1.035+dfsg-1","1.036+dfsg-1","1.037+dfsg-1","1.037+dfsg-2"]},{"source":"osv","ecosystem":"Debian:14","package":"libimager-perl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.037+dfsg-2"}]}],"versions":["1.027+dfsg-1","1.028+dfsg-1","1.029+dfsg-1","1.030+dfsg-1","1.031+dfsg-1","1.032+dfsg-1","1.033+dfsg-1","1.034+dfsg-1","1.034+dfsg-2","1.035+dfsg-1","1.036+dfsg-1","1.037+dfsg-1"]},{"source":"osv","ecosystem":"Mageia:10","package":"perl-Imager","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.37.0-1.mga10"}]}],"bundled":5},{"source":"osv","ecosystem":"Ubuntu:16.04:LTS","package":"libimager-perl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.003+dfsg-1","1.004+dfsg-1","1.004+dfsg-1build1"]},{"source":"osv","ecosystem":"Ubuntu:18.04:LTS","package":"libimager-perl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.005+dfsg-2build1","1.006+dfsg-1"]},{"source":"osv","ecosystem":"Ubuntu:20.04:LTS","package":"libimager-perl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.011+dfsg-1","1.011+dfsg-1build1"]},{"source":"osv","ecosystem":"Ubuntu:22.04:LTS","package":"libimager-perl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.012+dfsg-1build1","1.012+dfsg-2","1.012+dfsg-2build1"]},{"source":"osv","ecosystem":"Ubuntu:24.04:LTS","package":"libimager-perl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.019+dfsg-2","1.020+dfsg-1","1.022+dfsg-1","1.023+dfsg-1","1.023+dfsg-1build1","1.023+dfsg-1build2"]},{"source":"osv","ecosystem":"Ubuntu:26.10","package":"libimager-perl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.029+dfsg-1","1.031+dfsg-1","1.033+dfsg-1","1.035+dfsg-1"]},{"source":"osv","ecosystem":"Ubuntu:26.04:LTS","package":"libimager-perl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.027+dfsg-1","1.029+dfsg-1"]}],"products":[{"vendor":"tonycoz","product":"imager"}],"references":[{"url":"https://github.com/tonycoz/imager/security/advisories/GHSA-g549-r73g-x7x6","tags":["vendor-advisory","Vendor Advisory","advisory","report"]},{"url":"https://github.com/tonycoz/imager/commit/21b0df9eef1dffe1fdcd3706bfea9f1338031679.patch","tags":["patch","Patch","fix","report"]},{"url":"https://metacpan.org/release/TONYC/Imager-1.037/changes","tags":["release-notes","Release Notes","advisory","web","report"]},{"url":"http://www.openwall.com/lists/oss-security/2026/10/01/9","tags":["Mailing List","Third Party Advisory","web","report"]},{"url":"https://cpan.org/modules","tags":["web"]},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/102xxx/CVE-2026-102504.json","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-102504","tags":["advisory"]},{"url":"https://github.com/tonycoz/imager","tags":["package"]},{"url":"https://security-tracker.debian.org/tracker/CVE-2026-102504","tags":["advisory"]},{"url":"https://advisories.mageia.org/MGASA-2026-0500.html","tags":["advisory"]},{"url":"https://bugs.mageia.org/show_bug.cgi?id=36330","tags":["report"]},{"url":"https://www.openwall.com/lists/oss-security/2026/09/17/5","tags":["web"]},{"url":"https://github.com/tonycoz/imager/security/advisories/GHSA-j47j-8w8p-3mmc","tags":["advisory"]},{"url":"https://github.com/tonycoz/imager/issues/568","tags":["report"]},{"url":"https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1144226","tags":["report"]},{"url":"https://metacpan.org/release/TONYC/Imager-1.035/changes","tags":["web"]},{"url":"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/M2IGAORFTDV6NM2L2NZCBWRWLAWHXUHK/","tags":["web"]},{"url":"https://lists.security.metacpan.org/cve-announce/msg/43654795/","tags":["web"]},{"url":"https://github.com/tonycoz/imager/security/advisories/GHSA-j7v7-cm4g-vrgf","tags":["advisory"]},{"url":"https://lists.security.metacpan.org/cve-announce/msg/43654761/","tags":["web"]},{"url":"https://github.com/tonycoz/imager/security/advisories/GHSA-p4vw-rc54-p2c2","tags":["advisory"]},{"url":"https://www.openwall.com/lists/oss-security/2026/10/01/9","tags":["web"]},{"url":"https://www.openwall.com/lists/oss-security/2026/10/01/10","tags":["web"]},{"url":"https://github.com/tonycoz/imager/security/advisories/GHSA-4rx6-cgv3-fmxp","tags":["advisory"]},{"url":"https://ubuntu.com/security/CVE-2026-102504","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-102504","tags":["report"]},{"url":"https://lists.security.metacpan.org/cve-announce/msg/43998314/","tags":["report"]}],"sources":{"cve":[{"id":"CVE-2026-102504","title":"Imager versions before 1.037 for Perl exit the process reading a raw image with an out-of-range raw_datachannels value in i_readraw_wiol","description":"Imager versions before 1.037 for Perl exit the process reading a raw image with an out-of-range raw_datachannels value in i_readraw_wiol.\n\nNothing range-checks raw_datachannels. The line buffer is sized as the image width times the channel count with no overflow check, so a negative or very large count requests an excessive allocation. When it fails, Imager's allocator calls exit(3).\n\nPassing an untrusted raw_datachannels value to Imager-\u003eread() triggers an uncatchable exit.","status":"published","published":"2026-10-01T13:11:38.558Z","modified":"2026-10-01T19:31:30.976Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high","assessor":"adp"}],"cwes":["CWE-789","CWE-190"],"updated_at":"2026-11-02T13:39:05.585774Z"}],"euvd":[{"id":"EUVD-2026-90811","description":"Imager versions before 1.037 for Perl exit the process reading a raw image with an out-of-range raw_datachannels value in i_readraw_wiol.\n\nNothing range-checks raw_datachannels. The line buffer is sized as the image width times the channel count with no overflow check, so a negative or very large count requests an excessive allocation. When it fails, Imager's allocator calls exit(3).\n\nPassing an untrusted raw_datachannels value to Imager-\u003eread() triggers an uncatchable exit.","status":"published","published":"2026-10-01T13:11:38Z","modified":"2026-10-01T19:31:30Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"updated_at":"2026-11-02T17:27:43.593551Z"}],"nvd":[{"id":"CVE-2026-102504","description":"Imager versions before 1.037 for Perl exit the process reading a raw image with an out-of-range raw_datachannels value in i_readraw_wiol.\n\nNothing range-checks raw_datachannels. The line buffer is sized as the image width times the channel count with no overflow check, so a negative or very large count requests an excessive allocation. When it fails, Imager's allocator calls exit(3).\n\nPassing an untrusted raw_datachannels value to Imager-\u003eread() triggers an uncatchable exit.","status":"published","published":"2026-10-01T14:17:20.08Z","modified":"2026-10-08T13:17:42.14Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high","assessor":"secondary"}],"cwes":["CWE-190","CWE-789"],"updated_at":"2026-11-02T14:12:53.41762Z"}],"osv":[{"id":"CVE-2026-102504","title":"Imager versions before 1.037 for Perl exit the process reading a raw image with an out-of-range raw_datachannels value in i_readraw_wiol","description":"Imager versions before 1.037 for Perl exit the process reading a raw image with an out-of-range raw_datachannels value in i_readraw_wiol.\n\nNothing range-checks raw_datachannels. The line buffer is sized as the image width times the channel count with no overflow check, so a negative or very large count requests an excessive allocation. When it fails, Imager's allocator calls exit(3).\n\nPassing an untrusted raw_datachannels value to Imager-\u003eread() triggers an uncatchable exit.","status":"published","published":"2026-10-01T13:11:38.558Z","modified":"2026-10-28T11:06:47.00223128Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"cwes":["CWE-190","CWE-789"],"updated_at":"2026-11-02T15:44:53.83521Z"},{"id":"DEBIAN-CVE-2026-102504","description":"Imager versions before 1.037 for Perl exit the process reading a raw image with an out-of-range raw_datachannels value in i_readraw_wiol.  Nothing range-checks raw_datachannels. The line buffer is sized as the image width times the channel count with no overflow check, so a negative or very large count requests an excessive allocation. When it fails, Imager's allocator calls exit(3).  Passing an untrusted raw_datachannels value to Imager-\u003eread() triggers an uncatchable exit.","status":"published","published":"2026-10-01T14:17:20.08Z","modified":"2026-10-10T11:00:07.863125387Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"updated_at":"2026-11-02T15:45:48.903138Z"},{"id":"UBUNTU-CVE-2026-102504","description":"Imager versions before 1.037 for Perl exit the process reading a raw image with an out-of-range raw_datachannels value in i_readraw_wiol. Nothing range-checks raw_datachannels. The line buffer is sized as the image width times the channel count with no overflow check, so a negative or very large count requests an excessive allocation. When it fails, Imager's allocator calls exit(3). Passing an untrusted raw_datachannels value to Imager-\u003eread() triggers an uncatchable exit.","status":"published","published":"2026-10-01T14:17:00Z","modified":"2026-10-17T12:59:45.420753605Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"updated_at":"2026-11-02T16:55:58.519486Z"},{"id":"MGASA-2026-0500","title":"Updated perl-Imager package fixes security vulnerabilities","description":"Buffer read underflows on 32-bit size_t systems decoding EXIF data.\n(CVE-2026-73638)\nPalette off-by-one discloses uninitialized heap memory. (CVE-2026-93018)\nTGA reader: signed colourmaplength causes process-killing allocator\nabort. (CVE-2026-93019)\nUnvalidated raw_datachannels can cause incorrect memory allocations.\n(CVE-2026-102504)\ngetsamples(... type =\u003e \"float\") called on a paletted image allocated\nbuffer overflow. (CVE-2026-102505)\n","status":"published","published":"2026-10-13T01:20:53Z","modified":"2026-10-13T01:42:51.938639787Z","updated_at":"2026-11-02T15:49:43.795591Z"}]}}
