{"id":"CVE-2016-9112","aliases":["DEBIAN-CVE-2016-9112","DLA-1851-1","EUVD-2016-9933","GHSA-9mh7-qwwj-x8qj","MGASA-2017-0051","SUSE-SU-2016:3270-1","UBUNTU-CVE-2016-9112","USN-4497-1","USN-5664-1","openSUSE-SU-2017:2567-1"],"status":"published","title":"Floating Point Exception (aka FPE or divide by zero) in opj_pi_next_cprl function in openjp2/pi.c...","description":"Floating Point Exception (aka FPE or divide by zero) in opj_pi_next_cprl function in openjp2/pi.c:523 in OpenJPEG 2.1.2.","severity":{"version":"3.0","score":7.5,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high","assessor":"primary","from":"nvd"},"epss":{"day":"2026-11-08","score":0.03168,"percentile":0.88099,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-369"],"published":"2016-10-29T10:00:00Z","modified":"2026-10-20T10:47:58Z","fixes":[{"ecosystem":"Debian:12","package":"openjpeg2","fixed_in":["2.1.2-1.2"],"sources":["osv"]},{"ecosystem":"Debian:13","package":"openjpeg2","fixed_in":["2.1.2-1.2"],"sources":["osv"]},{"ecosystem":"Debian:14","package":"openjpeg2","fixed_in":["2.1.2-1.2"],"sources":["osv"]},{"ecosystem":"Ubuntu:16.04:LTS","package":"openjpeg2","fixed_in":["2.1.2-1.1+deb9u5build0.16.04.1"],"sources":["osv"]},{"ecosystem":"Ubuntu:Pro:16.04:LTS","package":"openjpeg","fixed_in":["1:1.5.2-3.1ubuntu0.1~esm2"],"sources":["osv"]}],"affected":[{"source":"osv","ecosystem":"Debian:12","package":"openjpeg2","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.1.2-1.2"}]}]},{"source":"osv","ecosystem":"Debian:13","package":"openjpeg2","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.1.2-1.2"}]}]},{"source":"osv","ecosystem":"Debian:14","package":"openjpeg2","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.1.2-1.2"}]}]},{"source":"osv","ecosystem":"Debian:8","package":"openjpeg2","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.1.0-2+deb8u7"}]}],"versions":["2.1.0-2","2.1.0-2+deb8u1","2.1.0-2+deb8u2","2.1.0-2+deb8u3","2.1.0-2+deb8u4","2.1.0-2+deb8u5","2.1.0-2+deb8u6"],"bundled":2},{"source":"osv","ecosystem":"Mageia:5","package":"openjpeg2","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.1.2-1.2.mga5"}]}],"bundled":7},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Desktop 12 SP2","package":"openjpeg2","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.1.0-3.1"}]}],"bundled":13},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server for Raspberry Pi 12 SP2","package":"openjpeg2","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.1.0-3.1"}]}],"bundled":13},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server 12 SP2","package":"openjpeg2","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.1.0-3.1"}]}],"bundled":13},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server for SAP Applications 12 SP2","package":"openjpeg2","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.1.0-3.1"}]}],"bundled":13},{"source":"osv","ecosystem":"Ubuntu:14.04:LTS","package":"openjpeg","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.3+dfsg-4.6ubuntu2","1.3+dfsg-4.7ubuntu1"]},{"source":"osv","ecosystem":"Ubuntu:16.04:LTS","package":"openjpeg2","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.1.2-1.1+deb9u5build0.16.04.1"}]}],"versions":["2.1.0-2.1","2.1.0-2.1ubuntu0.1","2.1.2-1.1+deb9u2build0.1","2.1.2-1.1+deb9u3build0.16.04.1"]},{"source":"osv","ecosystem":"Ubuntu:Pro:16.04:LTS","package":"openjpeg","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1:1.5.2-3.1ubuntu0.1~esm2"}]}],"versions":["1:1.5.2-3.1"]},{"source":"osv","ecosystem":"Ubuntu:16.04:LTS","package":"openjpeg2","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.1.2-1.1+deb9u5build0.16.04.1"}]}],"versions":["2.1.0-2.1","2.1.0-2.1ubuntu0.1","2.1.2-1.1+deb9u2build0.1","2.1.2-1.1+deb9u3build0.16.04.1"],"bundled":7},{"source":"osv","ecosystem":"Ubuntu:Pro:16.04:LTS","package":"openjpeg","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1:1.5.2-3.1ubuntu0.1~esm2"}]}],"versions":["1:1.5.2-3.1"],"bundled":6},{"source":"osv","ecosystem":"SUSE:Package Hub 12","package":"openjpeg2","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.1.0-6.1"}]}],"bundled":15},{"source":"osv","ecosystem":"SUSE:Package Hub 12 SP1","package":"openjpeg2","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.1.0-6.1"}]}],"bundled":15}],"products":[{"vendor":"uclouvain","product":"openjpeg"}],"references":[{"url":"https://security.gentoo.org/glsa/201710-26","tags":["vendor-advisory","x_refsource_GENTOO","x_transferred","advisory"]},{"url":"http://www.securityfocus.com/bid/93978","tags":["vdb-entry","x_refsource_BID","x_transferred","Third Party Advisory","VDB Entry","advisory"]},{"url":"https://lists.debian.org/debian-lts-announce/2019/07/msg00010.html","tags":["mailing-list","x_refsource_MLIST","x_transferred","web"]},{"url":"https://www.oracle.com/security-alerts/cpujul2020.html","tags":["x_refsource_MISC","x_transferred","web"]},{"url":"https://github.com/uclouvain/openjpeg/issues/855","tags":["x_refsource_MISC","x_transferred","Exploit","Vendor Advisory","evidence"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2016-9112"},{"url":"https://github.com/advisories/GHSA-9mh7-qwwj-x8qj"},{"url":"https://security-tracker.debian.org/tracker/CVE-2016-9112","tags":["advisory"]},{"url":"https://advisories.mageia.org/MGASA-2017-0051.html","tags":["advisory"]},{"url":"https://bugs.mageia.org/show_bug.cgi?id=20038","tags":["report"]},{"url":"https://lists.opensuse.org/opensuse-security-announce/2016-12/msg00095.html","tags":["web"]},{"url":"https://www.suse.com/support/update/announcement/2016/suse-su-20163270-1/","tags":["advisory"]},{"url":"https://bugzilla.suse.com/1002414","tags":["report"]},{"url":"https://bugzilla.suse.com/1007739","tags":["report"]},{"url":"https://bugzilla.suse.com/1007740","tags":["report"]},{"url":"https://bugzilla.suse.com/1007741","tags":["report"]},{"url":"https://bugzilla.suse.com/1007742","tags":["report"]},{"url":"https://bugzilla.suse.com/1007743","tags":["report"]},{"url":"https://bugzilla.suse.com/1007744","tags":["report"]},{"url":"https://bugzilla.suse.com/1007747","tags":["report"]},{"url":"https://bugzilla.suse.com/1014543","tags":["report"]},{"url":"https://bugzilla.suse.com/1014975","tags":["report"]},{"url":"https://bugzilla.suse.com/999817","tags":["report"]},{"url":"https://www.suse.com/security/cve/CVE-2016-7445","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2016-8332","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2016-9112","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2016-9113","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2016-9114","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2016-9115","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2016-9116","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2016-9117","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2016-9118","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2016-9572","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2016-9573","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2016-9580","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2016-9581","tags":["web"]},{"url":"https://ubuntu.com/security/CVE-2016-9112","tags":["report"]},{"url":"https://github.com/Young-X/pocs/tree/master/OpenJPEG_POC","tags":["report"]},{"url":"https://ubuntu.com/security/notices/USN-4497-1","tags":["advisory"]},{"url":"https://ubuntu.com/security/notices/USN-5664-1","tags":["advisory"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2016-9112","tags":["report"]},{"url":"https://ubuntu.com/security/CVE-2018-20847","tags":["report"]},{"url":"https://ubuntu.com/security/CVE-2018-21010","tags":["report"]},{"url":"https://ubuntu.com/security/CVE-2019-12973","tags":["report"]},{"url":"https://ubuntu.com/security/CVE-2020-6851","tags":["report"]},{"url":"https://ubuntu.com/security/CVE-2020-8112","tags":["report"]},{"url":"https://ubuntu.com/security/CVE-2020-15389","tags":["report"]},{"url":"https://ubuntu.com/security/CVE-2016-7445","tags":["report"]},{"url":"https://ubuntu.com/security/CVE-2016-10506","tags":["report"]},{"url":"https://ubuntu.com/security/CVE-2017-17479","tags":["report"]},{"url":"https://ubuntu.com/security/CVE-2018-18088","tags":["report"]},{"url":"https://ubuntu.com/security/CVE-2020-27824","tags":["report"]},{"url":"https://lists.opensuse.org/archives/list/security-announce@lists.opensuse.org/thread/AL7JYPSOTOZ4UZQTE7T4Y3J7RCMV7M6M/#AL7JYPSOTOZ4UZQTE7T4Y3J7RCMV7M6M","tags":["advisory"]},{"url":"https://bugzilla.suse.com/979907","tags":["report"]},{"url":"https://bugzilla.suse.com/997857","tags":["report"]},{"url":"https://www.suse.com/security/cve/CVE-2015-8871","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2016-7163","tags":["web"]}],"sources":{"cve":[{"id":"CVE-2016-9112","description":"Floating Point Exception (aka FPE or divide by zero) in opj_pi_next_cprl function in openjp2/pi.c:523 in OpenJPEG 2.1.2.","status":"published","published":"2016-10-29T10:00:00Z","modified":"2024-08-06T02:42:10.535Z","updated_at":"2026-11-02T14:33:32.103757Z"}],"euvd":[{"id":"EUVD-2016-9933","description":"Floating Point Exception (aka FPE or divide by zero) in opj_pi_next_cprl function in openjp2/pi.c:523 in OpenJPEG 2.1.2.","status":"published","published":"2016-10-29T10:00:00Z","modified":"2024-08-06T02:42:10Z","updated_at":"2026-11-03T02:22:28.196866Z"}],"ghsa":[{"id":"GHSA-9mh7-qwwj-x8qj","title":"Floating Point Exception (aka FPE or divide by zero) in opj_pi_next_cprl function in openjp2/pi.c...","description":"Floating Point Exception (aka FPE or divide by zero) in opj_pi_next_cprl function in openjp2/pi.c:523 in OpenJPEG 2.1.2.","status":"published","published":"2022-05-13T01:16:23Z","modified":"2023-02-01T05:04:52Z","cvss":[{"version":"3.0","score":7.5,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"cwes":["CWE-369"],"updated_at":"2026-11-02T14:50:11.446996Z"}],"nvd":[{"id":"CVE-2016-9112","description":"Floating Point Exception (aka FPE or divide by zero) in opj_pi_next_cprl function in openjp2/pi.c:523 in OpenJPEG 2.1.2.","status":"published","published":"2016-10-29T10:59:00.18Z","modified":"2026-06-17T00:55:32.207Z","cvss":[{"version":"3.0","score":7.5,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high","assessor":"primary"},{"version":"2.0","score":5,"vector":"AV:N/AC:L/Au:N/C:N/I:N/A:P","level":"medium","assessor":"primary"}],"cwes":["CWE-369"],"updated_at":"2026-11-02T14:03:32.086916Z"}],"osv":[{"id":"CVE-2016-9112","description":"Floating Point Exception (aka FPE or divide by zero) in opj_pi_next_cprl function in openjp2/pi.c:523 in OpenJPEG 2.1.2.","status":"published","published":"2016-10-29T10:59:00.18Z","modified":"2026-10-20T10:47:58.84464816Z","cvss":[{"version":"3.0","score":7.5,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"updated_at":"2026-11-02T15:44:03.171316Z"},{"id":"DEBIAN-CVE-2016-9112","description":"Floating Point Exception (aka FPE or divide by zero) in opj_pi_next_cprl function in openjp2/pi.c:523 in OpenJPEG 2.1.2.","status":"published","published":"2016-10-29T10:59:00.18Z","modified":"2026-09-22T07:03:13.292806685Z","cvss":[{"version":"3.0","score":7.5,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"updated_at":"2026-11-02T15:45:28.207321Z"},{"id":"UBUNTU-CVE-2016-9112","description":"Floating Point Exception (aka FPE or divide by zero) in opj_pi_next_cprl function in openjp2/pi.c:523 in OpenJPEG 2.1.2.","status":"published","published":"2016-10-29T10:59:00Z","modified":"2026-04-22T11:02:32.450625Z","cvss":[{"version":"3.0","score":7.5,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"updated_at":"2026-11-02T15:54:12.994319Z"},{"id":"DLA-1851-1","title":"openjpeg2 - security update","status":"published","published":"2019-07-10T00:00:00Z","modified":"2026-03-09T01:22:29.948009Z","updated_at":"2026-11-02T15:46:09.777694Z"},{"id":"MGASA-2017-0051","title":"Updated openjpeg2 packages fix security vulnerabilities","description":"Floating Point Exception (aka FPE or divide by zero) in opj_pi_next_cprl\nfunction in openjp2/pi.c:523 in OpenJPEG 2.1.2. (CVE-2016-9112)\n\nThere is a NULL pointer dereference in function imagetobmp of\nconvertbmp.c:980 of OpenJPEG 2.1.2. image-\u003ecomps[0].data is not assigned\na value after initialization(NULL). Impact is Denial of Service.\n(CVE-2016-9113)\n\nThere is a NULL Pointer Access in function imagetopnm of\nconvert.c:1943(jp2) of OpenJPEG 2.1.2. image-\u003ecomps[compno].data is not\nassigned a value after initialization(NULL). Impact is Denial of \nService. (CVE-2016-9114)\n\nHeap Buffer Over-read in function imagetotga of convert.c(jp2):942 in\nOpenJPEG 2.1.2. Impact is Denial of Service. Someone must open a crafted\nj2k file. (CVE-2016-9115)\n\nNULL Pointer Access in function imagetopnm of convert.c:2226(jp2) in\nOpenJPEG 2.1.2. Impact is Denial of Service. Someone must open a crafted\nj2k file. (CVE-2016-9116)\n\nNULL Pointer Access in function imagetopnm of convert.c(jp2):1289 in\nOpenJPEG 2.1.2. Impact is Denial of Service. Someone must open a crafted\nj2k file. (CVE-2016-9117)\n\nHeap Buffer Overflow (WRITE of size 4) in function pnmtoimage of\nconvert.c:1719 in OpenJPEG 2.1.2. (CVE-2016-9118)\n","status":"published","published":"2017-02-18T21:50:00Z","modified":"2026-04-16T06:23:42.654564019Z","updated_at":"2026-11-02T15:49:40.103088Z"},{"id":"openSUSE-SU-2017:2567-1","title":"Security update for openjpeg2","description":"This update for openjpeg2 fixes the following issues:\n\n* CVE-2016-9114: NULL Pointer Access in function imagetopnm of convert.c:1943(jp2) could lead to crash [bsc#1007740]\n* CVE-2016-9115: Heap Buffer Overflow in function imagetotga of convert.c(jp2) [bsc#1007741]\n* CVE-2016-9580, CVE-2016-9581: Possible Heap buffer overflow via integer overflow and infite loop [bsc#1014975]\n* CVE-2016-9117: NULL Pointer Access in function imagetopnm of convert.c(jp2):1289 [bsc#1007743]\n* CVE-2016-9118: Heap Buffer Overflow in function pnmtoimage of convert.c [bsc#1007744] \n* CVE-2016-9112: FPE(Floating Point Exception) in lib/openjp2/pi.c:523 [bsc#1007747] \n* CVE-2016-9116: NULL Pointer Access in function imagetopnm of convert.c:2226(jp2) [bsc#1007742]\n* CVE-2016-9113: NULL point dereference in function imagetobmp of convertbmp.c could lead to crash [bsc#1007739] \n* CVE-2016-9572 CVE-2016-9573: Insuficient check in imagetopnm() could lead to heap buffer overflow [bsc#1014543]\n* CVE-2016-8332: Malicious file in OpenJPEG JPEG2000 format  could lead to code execution [bsc#1002414] \n* CVE-2016-7445: Null pointer dereference in convert.c could lead to crash [bsc#999817] \n* CVE 2016-7163: Integer Overflow could lead to remote code execution [bsc#997857]\n* CVE 2015-8871: Use-after-free in opj_j2k_write_mco function could lead to denial of service [bsc#979907]\n\nThis update was imported from the SUSE:SLE-12-SP2:Update update project.","status":"published","published":"2017-09-25T21:34:20Z","modified":"2026-02-04T02:19:57.401918Z","updated_at":"2026-11-02T16:58:30.39372Z"},{"id":"SUSE-SU-2016:3270-1","title":"Security update for openjpeg2","description":"\nThis update for openjpeg2 fixes the following issues:\n\n* CVE-2016-9114: NULL Pointer Access in function imagetopnm of convert.c:1943(jp2) could lead to crash [bsc#1007740]\n* CVE-2016-9115: Heap Buffer Overflow in function imagetotga of convert.c(jp2) [bsc#1007741]\n* CVE-2016-9580, CVE-2016-9581: Possible Heap buffer overflow via integer overflow and infite loop [bsc#1014975]\n* CVE-2016-9117: NULL Pointer Access in function imagetopnm of convert.c(jp2):1289 [bsc#1007743]\n* CVE-2016-9118: Heap Buffer Overflow in function pnmtoimage of convert.c [bsc#1007744] \n* CVE-2016-9112: FPE(Floating Point Exception) in lib/openjp2/pi.c:523 [bsc#1007747] \n* CVE-2016-9116: NULL Pointer Access in function imagetopnm of convert.c:2226(jp2) [bsc#1007742]\n* CVE-2016-9113: NULL point dereference in function imagetobmp of convertbmp.c could lead to crash [bsc#1007739] \n* CVE-2016-9572 CVE-2016-9573: Insuficient check in imagetopnm() could lead to heap buffer overflow [bsc#1014543]\n* CVE-2016-8332: Malicious file in OpenJPEG JPEG2000 format  could lead to code execution [bsc#1002414] \n* CVE-2016-7445: Null pointer dereference in convert.c could lead to crash [bsc#999817] \n \n","status":"published","published":"2016-12-27T10:28:49Z","modified":"2026-02-04T02:22:05.964476Z","updated_at":"2026-11-02T15:53:43.83457Z"},{"id":"USN-4497-1","title":"OpenJPEG vulnerabilities","description":"It was discovered that OpenJPEG incorrectly handled certain image files. A\nremote attacker could possibly use this issue to cause a denial of service.\n(CVE-2016-9112)\n\nIt was discovered that OpenJPEG did not properly handle certain input. If\nOpenJPEG were supplied with specially crafted input, it could be made to crash\nor potentially execute arbitrary code.\n(CVE-2018-20847, CVE-2018-21010, CVE-2020-6851, CVE-2020-8112, CVE-2020-15389)\n\nIt was discovered that OpenJPEG incorrectly handled certain BMP files. A\nremote attacker could possibly use this issue to cause a denial of service.\n(CVE-2019-12973)\n","status":"published","published":"2020-09-15T18:30:32Z","modified":"2026-04-27T15:48:43.990997371Z","updated_at":"2026-11-02T16:58:14.547547Z"},{"id":"USN-5664-1","title":"openjpeg vulnerabilities","description":"It was discovered that OpenJPEG did not properly handle PNM\nheaders, resulting in a null pointer dereference. A remote\nattacker could possibly use this issue to cause a denial of\nservice (DoS). (CVE-2016-7445)\n\nIt was discovered that OpenJPEG incorrectly handled certain\nimage files resulting in division by zero.  A remote attacker\ncould possibly use this issue to cause a denial of service\n(DoS). (CVE-2016-9112 and CVE-2016-10506)\n\nIt was discovered that OpenJPEG incorrectly handled converting\ncertain image files resulting in a stack buffer overflow. A\nremote attacker could possibly use this issue to cause a\ndenial of service (DoS). (CVE-2017-17479)\n\nIt was discovered that OpenJPEG incorrectly handled converting\nPNM image files resulting in a null pointer dereference. A\nremote attacker could possibly use this issue to cause a denial\nof service (DoS). (CVE-2018-18088)\n\nIt was discovered that OpenJPEG incorrectly handled converting\nDWT images files resulting in a buffer overflow. A remote\nattacker could possibly use this issue to cause a denial of\nservice (DoS). (CVE-2020-27824)\n","status":"published","published":"2022-10-07T21:44:33Z","modified":"2026-06-25T13:31:25.884117691Z","updated_at":"2026-11-02T16:58:16.20937Z"}]}}
