{"id":"CVE-2017-16845","aliases":["DEBIAN-CVE-2017-16845","DLA-1497-1","DSA-4213-1","EUVD-2017-8019","GHSA-3whx-jj33-9r95","SUSE-SU-2018:0762-1","SUSE-SU-2018:0831-1","UBUNTU-CVE-2017-16845","USN-3575-1","USN-3649-1"],"status":"published","title":"hw/input/ps2.c in Qemu does not validate 'rptr' and 'count' values during guest migration,...","description":"hw/input/ps2.c in Qemu does not validate 'rptr' and 'count' values during guest migration, leading to out-of-bounds access.","severity":{"version":"3.1","score":10,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:H","level":"critical","assessor":"primary","from":"nvd"},"epss":{"day":"2026-11-07","score":0.02943,"percentile":0.87219,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-20"],"published":"2017-11-17T00:00:00Z","modified":"2026-10-24T10:30:53Z","fixes":[{"ecosystem":"Debian:12","package":"qemu","fixed_in":["1:2.12~rc3+dfsg-1"],"sources":["osv"]},{"ecosystem":"Debian:13","package":"qemu","fixed_in":["1:2.12~rc3+dfsg-1"],"sources":["osv"]},{"ecosystem":"Debian:14","package":"qemu","fixed_in":["1:2.12~rc3+dfsg-1"],"sources":["osv"]},{"ecosystem":"Ubuntu:16.04:LTS","package":"qemu","fixed_in":["1:2.5+dfsg-5ubuntu10.22"],"sources":["osv"]},{"ecosystem":"Ubuntu:18.04:LTS","package":"qemu","fixed_in":["1:2.11+dfsg-1ubuntu7.1"],"sources":["osv"]}],"affected":[{"source":"osv","ecosystem":"Debian:12","package":"qemu","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1:2.12~rc3+dfsg-1"}]}]},{"source":"osv","ecosystem":"Debian:13","package":"qemu","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1:2.12~rc3+dfsg-1"}]}]},{"source":"osv","ecosystem":"Debian:14","package":"qemu","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1:2.12~rc3+dfsg-1"}]}]},{"source":"osv","ecosystem":"Debian:8","package":"qemu","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1:2.1+dfsg-12+deb8u7"}]}],"versions":["1:2.1+dfsg-11","1:2.1+dfsg-12","1:2.1+dfsg-12+deb8u1","1:2.1+dfsg-12+deb8u2","1:2.1+dfsg-12+deb8u3","1:2.1+dfsg-12+deb8u4","1:2.1+dfsg-12+deb8u4~bpo70+1","1:2.1+dfsg-12+deb8u5","1:2.1+dfsg-12+deb8u5a","1:2.1+dfsg-12+deb8u5a~bpo70+1","1:2.1+dfsg-12+deb8u6","1:2.1+dfsg-12~bpo70+1"],"bundled":52},{"source":"osv","ecosystem":"Debian:9","package":"qemu","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1:2.8+dfsg-6+deb9u4"}]}],"versions":["1:2.8+dfsg-6","1:2.8+dfsg-6+deb9u1","1:2.8+dfsg-6+deb9u2","1:2.8+dfsg-6+deb9u3"],"bundled":11},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Desktop 12 SP3","package":"qemu","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.9.1-6.12.1"}]}],"bundled":8},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server 12 SP3","package":"qemu","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.9.1-6.12.1"}]}],"bundled":8},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server for SAP Applications 12 SP3","package":"qemu","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.9.1-6.12.1"}]}],"bundled":8},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Desktop 12 SP2","package":"qemu","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.6.2-41.37.1"}]}],"bundled":9},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server for Raspberry Pi 12 SP2","package":"qemu","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.6.2-41.37.1"}]}],"bundled":9},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server 12 SP2","package":"qemu","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.6.2-41.37.1"}]}],"bundled":9},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server for SAP Applications 12 SP2","package":"qemu","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.6.2-41.37.1"}]}],"bundled":9},{"source":"osv","ecosystem":"Ubuntu:16.04:LTS","package":"qemu","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1:2.5+dfsg-5ubuntu10.22"}]}],"versions":["1:2.3+dfsg-5ubuntu9","1:2.3+dfsg-5ubuntu10","1:2.4+dfsg-4ubuntu1","1:2.4+dfsg-4ubuntu2","1:2.4+dfsg-4ubuntu3","1:2.4+dfsg-5ubuntu3","1:2.5+dfsg-1ubuntu2","1:2.5+dfsg-1ubuntu3","1:2.5+dfsg-1ubuntu4","1:2.5+dfsg-1ubuntu5","1:2.5+dfsg-5ubuntu1","1:2.5+dfsg-5ubuntu2","1:2.5+dfsg-5ubuntu4","1:2.5+dfsg-5ubuntu6","1:2.5+dfsg-5ubuntu7","1:2.5+dfsg-5ubuntu10","1:2.5+dfsg-5ubuntu10.1","1:2.5+dfsg-5ubuntu10.2","1:2.5+dfsg-5ubuntu10.3","1:2.5+dfsg-5ubuntu10.4","1:2.5+dfsg-5ubuntu10.5","1:2.5+dfsg-5ubuntu10.6","1:2.5+dfsg-5ubuntu10.7","1:2.5+dfsg-5ubuntu10.8","1:2.5+dfsg-5ubuntu10.9","1:2.5+dfsg-5ubuntu10.10","1:2.5+dfsg-5ubuntu10.11","1:2.5+dfsg-5ubuntu10.13","1:2.5+dfsg-5ubuntu10.14","1:2.5+dfsg-5ubuntu10.15","1:2.5+dfsg-5ubuntu10.16","1:2.5+dfsg-5ubuntu10.20","1:2.5+dfsg-5ubuntu10.21"]},{"source":"osv","ecosystem":"Ubuntu:18.04:LTS","package":"qemu","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1:2.11+dfsg-1ubuntu7.1"}]}],"versions":["1:2.10+dfsg-0ubuntu3","1:2.10+dfsg-0ubuntu4","1:2.10+dfsg-0ubuntu5","1:2.11+dfsg-1ubuntu1","1:2.11+dfsg-1ubuntu2","1:2.11+dfsg-1ubuntu4","1:2.11+dfsg-1ubuntu5","1:2.11+dfsg-1ubuntu6","1:2.11+dfsg-1ubuntu7"]},{"source":"osv","ecosystem":"Ubuntu:14.04:LTS","package":"qemu","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.0.0+dfsg-2ubuntu1.39"}]}],"versions":["1.5.0+dfsg-3ubuntu5","1.5.0+dfsg-3ubuntu6","1.6.0+dfsg-2ubuntu1","1.6.0+dfsg-2ubuntu2","1.6.0+dfsg-2ubuntu3","1.6.0+dfsg-2ubuntu4","1.7.0+dfsg-2ubuntu1","1.7.0+dfsg-2ubuntu2","1.7.0+dfsg-2ubuntu3","1.7.0+dfsg-2ubuntu4","1.7.0+dfsg-2ubuntu5","1.7.0+dfsg-2ubuntu7","1.7.0+dfsg-2ubuntu8","1.7.0+dfsg-2ubuntu9","1.7.0+dfsg-3ubuntu1~ppa1","1.7.0+dfsg-3ubuntu1","1.7.0+dfsg-3ubuntu2","1.7.0+dfsg-3ubuntu3","1.7.0+dfsg-3ubuntu4","1.7.0+dfsg-3ubuntu5","1.7.0+dfsg-3ubuntu6","1.7.0+dfsg-3ubuntu7","2.0.0~rc1+dfsg-0ubuntu1","2.0.0~rc1+dfsg-0ubuntu2","2.0.0~rc1+dfsg-0ubuntu3","2.0.0~rc1+dfsg-0ubuntu3.1","2.0.0+dfsg-2ubuntu1","2.0.0+dfsg-2ubuntu1.1","2.0.0+dfsg-2ubuntu1.2","2.0.0+dfsg-2ubuntu1.3","2.0.0+dfsg-2ubuntu1.5","2.0.0+dfsg-2ubuntu1.6","2.0.0+dfsg-2ubuntu1.7","2.0.0+dfsg-2ubuntu1.8","2.0.0+dfsg-2ubuntu1.9","2.0.0+dfsg-2ubuntu1.10","2.0.0+dfsg-2ubuntu1.11","2.0.0+dfsg-2ubuntu1.13","2.0.0+dfsg-2ubuntu1.14","2.0.0+dfsg-2ubuntu1.15","2.0.0+dfsg-2ubuntu1.16","2.0.0+dfsg-2ubuntu1.17","2.0.0+dfsg-2ubuntu1.18","2.0.0+dfsg-2ubuntu1.19","2.0.0+dfsg-2ubuntu1.20","2.0.0+dfsg-2ubuntu1.21","2.0.0+dfsg-2ubuntu1.22","2.0.0+dfsg-2ubuntu1.24","2.0.0+dfsg-2ubuntu1.25","2.0.0+dfsg-2ubuntu1.26","2.0.0+dfsg-2ubuntu1.27","2.0.0+dfsg-2ubuntu1.28","2.0.0+dfsg-2ubuntu1.29","2.0.0+dfsg-2ubuntu1.30","2.0.0+dfsg-2ubuntu1.31","2.0.0+dfsg-2ubuntu1.32","2.0.0+dfsg-2ubuntu1.33","2.0.0+dfsg-2ubuntu1.34","2.0.0+dfsg-2ubuntu1.35","2.0.0+dfsg-2ubuntu1.36","2.0.0+dfsg-2ubuntu1.38"],"bundled":11},{"source":"osv","ecosystem":"Ubuntu:16.04:LTS","package":"qemu","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1:2.5+dfsg-5ubuntu10.22"}]}],"versions":["1:2.3+dfsg-5ubuntu9","1:2.3+dfsg-5ubuntu10","1:2.4+dfsg-4ubuntu1","1:2.4+dfsg-4ubuntu2","1:2.4+dfsg-4ubuntu3","1:2.4+dfsg-5ubuntu3","1:2.5+dfsg-1ubuntu2","1:2.5+dfsg-1ubuntu3","1:2.5+dfsg-1ubuntu4","1:2.5+dfsg-1ubuntu5","1:2.5+dfsg-5ubuntu1","1:2.5+dfsg-5ubuntu2","1:2.5+dfsg-5ubuntu4","1:2.5+dfsg-5ubuntu6","1:2.5+dfsg-5ubuntu7","1:2.5+dfsg-5ubuntu10","1:2.5+dfsg-5ubuntu10.1","1:2.5+dfsg-5ubuntu10.2","1:2.5+dfsg-5ubuntu10.3","1:2.5+dfsg-5ubuntu10.4","1:2.5+dfsg-5ubuntu10.5","1:2.5+dfsg-5ubuntu10.6","1:2.5+dfsg-5ubuntu10.7","1:2.5+dfsg-5ubuntu10.8","1:2.5+dfsg-5ubuntu10.9","1:2.5+dfsg-5ubuntu10.10","1:2.5+dfsg-5ubuntu10.11","1:2.5+dfsg-5ubuntu10.13","1:2.5+dfsg-5ubuntu10.14","1:2.5+dfsg-5ubuntu10.15","1:2.5+dfsg-5ubuntu10.16","1:2.5+dfsg-5ubuntu10.20","1:2.5+dfsg-5ubuntu10.21"],"bundled":11},{"source":"osv","ecosystem":"Ubuntu:14.04:LTS","package":"qemu","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.0.0+dfsg-2ubuntu1.41"}]}],"versions":["1.5.0+dfsg-3ubuntu5","1.5.0+dfsg-3ubuntu6","1.6.0+dfsg-2ubuntu1","1.6.0+dfsg-2ubuntu2","1.6.0+dfsg-2ubuntu3","1.6.0+dfsg-2ubuntu4","1.7.0+dfsg-2ubuntu1","1.7.0+dfsg-2ubuntu2","1.7.0+dfsg-2ubuntu3","1.7.0+dfsg-2ubuntu4","1.7.0+dfsg-2ubuntu5","1.7.0+dfsg-2ubuntu7","1.7.0+dfsg-2ubuntu8","1.7.0+dfsg-2ubuntu9","1.7.0+dfsg-3ubuntu1~ppa1","1.7.0+dfsg-3ubuntu1","1.7.0+dfsg-3ubuntu2","1.7.0+dfsg-3ubuntu3","1.7.0+dfsg-3ubuntu4","1.7.0+dfsg-3ubuntu5","1.7.0+dfsg-3ubuntu6","1.7.0+dfsg-3ubuntu7","2.0.0~rc1+dfsg-0ubuntu1","2.0.0~rc1+dfsg-0ubuntu2","2.0.0~rc1+dfsg-0ubuntu3","2.0.0~rc1+dfsg-0ubuntu3.1","2.0.0+dfsg-2ubuntu1","2.0.0+dfsg-2ubuntu1.1","2.0.0+dfsg-2ubuntu1.2","2.0.0+dfsg-2ubuntu1.3","2.0.0+dfsg-2ubuntu1.5","2.0.0+dfsg-2ubuntu1.6","2.0.0+dfsg-2ubuntu1.7","2.0.0+dfsg-2ubuntu1.8","2.0.0+dfsg-2ubuntu1.9","2.0.0+dfsg-2ubuntu1.10","2.0.0+dfsg-2ubuntu1.11","2.0.0+dfsg-2ubuntu1.13","2.0.0+dfsg-2ubuntu1.14","2.0.0+dfsg-2ubuntu1.15","2.0.0+dfsg-2ubuntu1.16","2.0.0+dfsg-2ubuntu1.17","2.0.0+dfsg-2ubuntu1.18","2.0.0+dfsg-2ubuntu1.19","2.0.0+dfsg-2ubuntu1.20","2.0.0+dfsg-2ubuntu1.21","2.0.0+dfsg-2ubuntu1.22","2.0.0+dfsg-2ubuntu1.24","2.0.0+dfsg-2ubuntu1.25","2.0.0+dfsg-2ubuntu1.26","2.0.0+dfsg-2ubuntu1.27","2.0.0+dfsg-2ubuntu1.28","2.0.0+dfsg-2ubuntu1.29","2.0.0+dfsg-2ubuntu1.30","2.0.0+dfsg-2ubuntu1.31","2.0.0+dfsg-2ubuntu1.32","2.0.0+dfsg-2ubuntu1.33","2.0.0+dfsg-2ubuntu1.34","2.0.0+dfsg-2ubuntu1.35","2.0.0+dfsg-2ubuntu1.36","2.0.0+dfsg-2ubuntu1.38","2.0.0+dfsg-2ubuntu1.39","2.0.0+dfsg-2ubuntu1.40"],"bundled":3},{"source":"osv","ecosystem":"Ubuntu:16.04:LTS","package":"qemu","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1:2.5+dfsg-5ubuntu10.28"}]}],"versions":["1:2.3+dfsg-5ubuntu9","1:2.3+dfsg-5ubuntu10","1:2.4+dfsg-4ubuntu1","1:2.4+dfsg-4ubuntu2","1:2.4+dfsg-4ubuntu3","1:2.4+dfsg-5ubuntu3","1:2.5+dfsg-1ubuntu2","1:2.5+dfsg-1ubuntu3","1:2.5+dfsg-1ubuntu4","1:2.5+dfsg-1ubuntu5","1:2.5+dfsg-5ubuntu1","1:2.5+dfsg-5ubuntu2","1:2.5+dfsg-5ubuntu4","1:2.5+dfsg-5ubuntu6","1:2.5+dfsg-5ubuntu7","1:2.5+dfsg-5ubuntu10","1:2.5+dfsg-5ubuntu10.1","1:2.5+dfsg-5ubuntu10.2","1:2.5+dfsg-5ubuntu10.3","1:2.5+dfsg-5ubuntu10.4","1:2.5+dfsg-5ubuntu10.5","1:2.5+dfsg-5ubuntu10.6","1:2.5+dfsg-5ubuntu10.7","1:2.5+dfsg-5ubuntu10.8","1:2.5+dfsg-5ubuntu10.9","1:2.5+dfsg-5ubuntu10.10","1:2.5+dfsg-5ubuntu10.11","1:2.5+dfsg-5ubuntu10.13","1:2.5+dfsg-5ubuntu10.14","1:2.5+dfsg-5ubuntu10.15","1:2.5+dfsg-5ubuntu10.16","1:2.5+dfsg-5ubuntu10.20","1:2.5+dfsg-5ubuntu10.21","1:2.5+dfsg-5ubuntu10.22","1:2.5+dfsg-5ubuntu10.24","1:2.5+dfsg-5ubuntu10.25","1:2.5+dfsg-5ubuntu10.26"],"bundled":3},{"source":"osv","ecosystem":"Ubuntu:18.04:LTS","package":"qemu","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1:2.11+dfsg-1ubuntu7.1"}]}],"versions":["1:2.10+dfsg-0ubuntu3","1:2.10+dfsg-0ubuntu4","1:2.10+dfsg-0ubuntu5","1:2.11+dfsg-1ubuntu1","1:2.11+dfsg-1ubuntu2","1:2.11+dfsg-1ubuntu4","1:2.11+dfsg-1ubuntu5","1:2.11+dfsg-1ubuntu6","1:2.11+dfsg-1ubuntu7"],"bundled":3}],"products":[{"vendor":"canonical","product":"ubuntu_linux"},{"vendor":"debian","product":"debian_linux"},{"vendor":"qemu","product":"qemu"}],"references":[{"url":"https://usn.ubuntu.com/3649-1/","tags":["vendor-advisory","x_refsource_UBUNTU","x_transferred","Third Party Advisory","advisory"]},{"url":"https://lists.debian.org/debian-lts-announce/2018/09/msg00007.html","tags":["mailing-list","x_refsource_MLIST","x_transferred","Mailing List","Third Party Advisory","advisory"]},{"url":"https://www.debian.org/security/2018/dsa-4213","tags":["vendor-advisory","x_refsource_DEBIAN","x_transferred","Third Party Advisory","advisory"]},{"url":"https://lists.gnu.org/archive/html/qemu-devel/2017-11/msg02982.html","tags":["mailing-list","x_refsource_MLIST","x_transferred","Mailing List","Patch","Third Party Advisory","fix","report"]},{"url":"https://usn.ubuntu.com/3575-1/","tags":["vendor-advisory","x_refsource_UBUNTU","x_transferred","Third Party Advisory","advisory"]},{"url":"http://www.securityfocus.com/bid/101923","tags":["vdb-entry","x_refsource_BID","x_transferred","Third Party Advisory","VDB Entry","advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2017-16845"},{"url":"https://usn.ubuntu.com/3575-1"},{"url":"https://usn.ubuntu.com/3649-1"},{"url":"https://github.com/advisories/GHSA-3whx-jj33-9r95"},{"url":"https://security-tracker.debian.org/tracker/CVE-2017-16845","tags":["advisory"]},{"url":"https://www.suse.com/support/update/announcement/2018/suse-su-20180762-1/","tags":["advisory"]},{"url":"https://bugzilla.suse.com/1040202","tags":["report"]},{"url":"https://bugzilla.suse.com/1068032","tags":["report"]},{"url":"https://bugzilla.suse.com/1068613","tags":["report"]},{"url":"https://bugzilla.suse.com/1070144","tags":["report"]},{"url":"https://bugzilla.suse.com/1071228","tags":["report"]},{"url":"https://bugzilla.suse.com/1073489","tags":["report"]},{"url":"https://bugzilla.suse.com/1074572","tags":["report"]},{"url":"https://bugzilla.suse.com/1076114","tags":["report"]},{"url":"https://bugzilla.suse.com/1076775","tags":["report"]},{"url":"https://bugzilla.suse.com/1076813","tags":["report"]},{"url":"https://bugzilla.suse.com/1082276","tags":["report"]},{"url":"https://bugzilla.suse.com/1083291","tags":["report"]},{"url":"https://www.suse.com/security/cve/CVE-2017-15119","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2017-15124","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2017-16845","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2017-17381","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2017-18043","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2017-5715","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2018-5683","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2018-7550","tags":["web"]},{"url":"https://www.suse.com/support/update/announcement/2018/suse-su-20180831-1/","tags":["advisory"]},{"url":"https://bugzilla.suse.com/1076179","tags":["report"]},{"url":"https://bugzilla.suse.com/1076814","tags":["report"]},{"url":"https://bugzilla.suse.com/1085598","tags":["report"]},{"url":"https://www.suse.com/security/cve/CVE-2017-18030","tags":["web"]},{"url":"https://ubuntu.com/security/CVE-2017-16845","tags":["report"]},{"url":"https://ubuntu.com/security/notices/USN-3575-1","tags":["advisory"]},{"url":"https://ubuntu.com/security/notices/USN-3649-1","tags":["advisory"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2017-16845","tags":["report"]},{"url":"https://ubuntu.com/security/CVE-2017-11334","tags":["report"]},{"url":"https://ubuntu.com/security/CVE-2017-13672","tags":["report"]},{"url":"https://ubuntu.com/security/CVE-2017-14167","tags":["report"]},{"url":"https://ubuntu.com/security/CVE-2017-15038","tags":["report"]},{"url":"https://ubuntu.com/security/CVE-2017-15118","tags":["report"]},{"url":"https://ubuntu.com/security/CVE-2017-15119","tags":["report"]},{"url":"https://ubuntu.com/security/CVE-2017-15124","tags":["report"]},{"url":"https://ubuntu.com/security/CVE-2017-15268","tags":["report"]},{"url":"https://ubuntu.com/security/CVE-2017-15289","tags":["report"]},{"url":"https://ubuntu.com/security/CVE-2017-17381","tags":["report"]},{"url":"https://ubuntu.com/security/CVE-2017-18043","tags":["report"]},{"url":"https://ubuntu.com/security/CVE-2018-5683","tags":["report"]},{"url":"https://ubuntu.com/security/CVE-2018-7550","tags":["report"]},{"url":"https://ubuntu.com/security/CVE-2018-7858","tags":["report"]}],"sources":{"cve":[{"id":"CVE-2017-16845","description":"hw/input/ps2.c in Qemu does not validate 'rptr' and 'count' values during guest migration, leading to out-of-bounds access.","status":"published","published":"2017-11-17T20:00:00Z","modified":"2024-08-05T20:35:21.195Z","updated_at":"2026-11-02T14:33:21.142987Z"}],"euvd":[{"id":"EUVD-2017-8019","description":"hw/input/ps2.c in Qemu does not validate 'rptr' and 'count' values during guest migration, leading to out-of-bounds access.","status":"published","published":"2017-11-17T20:00:00Z","modified":"2024-08-05T20:35:21Z","updated_at":"2026-11-03T02:23:11.533108Z"}],"ghsa":[{"id":"GHSA-3whx-jj33-9r95","title":"hw/input/ps2.c in Qemu does not validate 'rptr' and 'count' values during guest migration,...","description":"hw/input/ps2.c in Qemu does not validate 'rptr' and 'count' values during guest migration, leading to out-of-bounds access.","status":"published","published":"2022-05-13T01:16:20Z","modified":"2025-04-20T03:49:51Z","cvss":[{"version":"3.1","score":10,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:H","level":"critical"}],"cwes":["CWE-20"],"updated_at":"2026-11-02T15:01:56.152144Z"}],"nvd":[{"id":"CVE-2017-16845","description":"hw/input/ps2.c in Qemu does not validate 'rptr' and 'count' values during guest migration, leading to out-of-bounds access.","status":"published","published":"2017-11-17T20:29:00.37Z","modified":"2026-06-17T01:10:00.77Z","cvss":[{"version":"3.1","score":10,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:H","level":"critical","assessor":"primary"},{"version":"2.0","score":6.4,"vector":"AV:N/AC:L/Au:N/C:P/I:N/A:P","level":"medium","assessor":"primary"}],"cwes":["CWE-20"],"updated_at":"2026-11-02T14:04:08.635428Z"}],"osv":[{"id":"CVE-2017-16845","description":"hw/input/ps2.c in Qemu does not validate 'rptr' and 'count' values during guest migration, leading to out-of-bounds access.","status":"published","published":"2017-11-17T20:29:00.37Z","modified":"2026-10-24T10:30:53.462921309Z","cvss":[{"version":"3.1","score":10,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:H","level":"critical"}],"updated_at":"2026-11-02T15:44:04.853379Z"},{"id":"DEBIAN-CVE-2017-16845","description":"hw/input/ps2.c in Qemu does not validate 'rptr' and 'count' values during guest migration, leading to out-of-bounds access.","status":"published","published":"2017-11-17T20:29:00.37Z","modified":"2026-09-01T20:03:45.129094795Z","cvss":[{"version":"3.1","score":10,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:H","level":"critical"}],"updated_at":"2026-11-02T15:45:28.801885Z"},{"id":"UBUNTU-CVE-2017-16845","description":"hw/input/ps2.c in Qemu does not validate 'rptr' and 'count' values during guest migration, leading to out-of-bounds access.","status":"published","published":"2017-11-17T00:00:00Z","modified":"2026-02-04T02:31:06.941162Z","cvss":[{"version":"3.1","score":10,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:H","level":"critical"},{"version":"3.0","score":10,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H","level":"critical"}],"updated_at":"2026-11-02T15:54:14.563448Z"},{"id":"DLA-1497-1","title":"qemu - security update","status":"published","published":"2018-09-06T00:00:00Z","modified":"2026-03-09T01:23:01.174268Z","updated_at":"2026-11-02T15:46:09.777694Z"},{"id":"DSA-4213-1","title":"qemu - security update","status":"published","published":"2018-05-29T00:00:00Z","modified":"2026-03-09T02:10:12.301124Z","updated_at":"2026-11-02T15:46:16.862196Z"},{"id":"SUSE-SU-2018:0762-1","title":"Security update for qemu","description":"This update for qemu fixes the following issues:\n\nThis update has the next round of Spectre v2 related patches, which\nnow integrate with corresponding changes in libvirt. (CVE-2017-5715\nbsc#1068032)\n\nThe January 2018 release of qemu initially addressed the Spectre v2\nvulnerability for KVM guests by exposing the spec-ctrl feature\nfor all x86 vcpu types, which was the quick and dirty approach,\nbut not the proper solution.\n\nWe replaced our initial patch by the patches from upstream.\n\nThis update defines spec_ctrl and ibpb cpu feature flags as well as new\ncpu models which are clones of existing models with either -IBRS or -IBPB\nadded to the end of the model name. These new vcpu models explicitly\ninclude the new feature(s), whereas the feature flags can be added\nto the cpu parameter as with other features. In short, for continued\nSpectre v2 protection, ensure that either the appropriate cpu feature\nflag is added to the QEMU command-line, or one of the new cpu models is\nused.\n\nAlthough migration from older versions is supported, the new cpu\nfeatures won't be properly exposed to the guest until it is restarted\nwith the cpu features explicitly added. A reboot is insufficient.\n\nA warning patch is added which attempts to detect a migration\nfrom a qemu version which had the quick and dirty fix (it only\ndetects certain cases, but hopefully is helpful.)\nFor additional information on Spectre v2 as it relates to QEMU,\nsee:\n        https://www.qemu.org/2018/02/14/qemu-2-11-1-and-spectre-update/\n\nA patch is added to continue to detect Spectre v2 mitigation\nfeatures (as shown by cpuid), and if found provide that feature\nto guests, even if running on older KVM (kernel) versions which\ndo not yet expose that feature to QEMU. (bsc#1082276)\n\nThese two patches will be removed when we can reasonably assume\neveryone is running with the appropriate updates.\n\nSpectre fixes for IBM Z Series were included by providing more hw features\nto guests (bsc#1076813)\n\nAlso security fixes for the following CVE issues are included:\n\n- CVE-2017-17381: The Virtio Vring implementation in QEMU allowed local OS guest users to cause a denial of service (divide-by-zero error and QEMU process crash) by unsetting vring alignment while updating Virtio rings. (bsc#1071228)\n- CVE-2017-16845: The PS2 driver in Qemu did not validate 'rptr' and 'count' values during guest migration, leading to out-of-bounds access. (bsc#1068613)\n- CVE-2017-15119: The Network Block Device (NBD) server in Quick Emulator (QEMU), was vulnerable to a denial of service issue. It could occur if a client sent large option requests, making the server waste CPU time on reading up to 4GB per request. A client could use this flaw to keep the NBD server from serving other requests, resulting in DoS. (bsc#1070144)\n- CVE-2017-18043: Integer overflow in the macro ROUND_UP (n, d) in Quick Emulator (Qemu) allowed a user to cause a denial of service (Qemu process crash). (bsc#1076775)\n- CVE-2018-5683: The VGA driver in Qemu allowed local OS guest privileged users to cause a denial of service (out-of-bounds read and QEMU process crash) by leveraging improper memory address validation. (bsc#1076114)\n- CVE-2018-7550: The multiboot functionality in Quick Emulator (aka QEMU) allowed local guest OS users to execute arbitrary code on the QEMU host via an out-of-bounds read or write memory access. (bsc#1083291)\n- CVE-2017-15124: VNC server implementation in Quick Emulator (QEMU) was found to be vulnerable to an unbounded memory allocation issue, as it did not throttle the framebuffer updates sent to its client. If the client did not consume these updates, VNC server allocates growing memory to hold onto this data. A malicious remote VNC client could use this flaw to cause DoS to the server host. (bsc#1073489)\n\nAdditional bugs fixed:\n\n- Fix pcihp for 1.6 and older machine types (bsc#1074572)\n- Fix packaging dependencies (coreutils) for qemu-ksm package (bsc#1040202)\n","status":"published","published":"2018-03-21T16:41:39Z","modified":"2026-02-04T02:54:59.254158Z","updated_at":"2026-11-02T15:53:44.594517Z"},{"id":"SUSE-SU-2018:0831-1","title":"Security update for qemu","description":"\n  \nThis update for qemu fixes the following issues:\n\nThis update has the next round of Spectre v2 related patches, which\nnow integrate with corresponding changes in libvirt. (CVE-2017-5715\nbsc#1068032)\n\nThe January 2018 release of qemu initially addressed the Spectre v2\nvulnerability for KVM guests by exposing the spec-ctrl feature\nfor all x86 vcpu types, which was the quick and dirty approach,\nbut not the proper solution.\n\nWe replaced our initial patch by the patches from upstream.\n\nThis update defines spec_ctrl and ibpb cpu feature flags as well as new\ncpu models which are clones of existing models with either -IBRS or -IBPB\nadded to the end of the model name. These new vcpu models explicitly\ninclude the new feature(s), whereas the feature flags can be added\nto the cpu parameter as with other features. In short, for continued\nSpectre v2 protection, ensure that either the appropriate cpu feature\nflag is added to the QEMU command-line, or one of the new cpu models is\nused.\n\nAlthough migration from older versions is supported, the new cpu\nfeatures won't be properly exposed to the guest until it is restarted\nwith the cpu features explicitly added. A reboot is insufficient.\n\nA warning patch is added which attempts to detect a migration\nfrom a qemu version which had the quick and dirty fix (it only\ndetects certain cases, but hopefully is helpful.)\nFor additional information on Spectre v2 as it relates to QEMU,\nsee:\n\thttps://www.qemu.org/2018/02/14/qemu-2-11-1-and-spectre-update/\n\nA patch is added to continue to detect Spectre v2 mitigation\nfeatures (as shown by cpuid), and if found provide that feature\nto guests, even if running on older KVM (kernel) versions which\ndo not yet expose that feature to QEMU. (bsc#1082276)\n\nThese two patches will be removed when we can reasonably assume\neveryone is running with the appropriate updates.\n\n\nAlso security fixes for the following CVE issues are included:\n\n- CVE-2017-15119: The Network Block Device (NBD) server in Quick Emulator (QEMU), was vulnerable to a denial of service issue. It could occur if a client sent large option requests, making the server waste CPU time on reading up to 4GB per request. A client could use this flaw to keep the NBD server from serving other requests, resulting in DoS. (bsc#1070144)\n- CVE-2017-15124: VNC server implementation in Quick Emulator (QEMU) was found to be vulnerable to an unbounded memory allocation issue, as it did not throttle the framebuffer updates sent to its client. If the client did not consume these updates, VNC server allocates growing memory to hold onto this data. A malicious remote VNC client could use this flaw to cause DoS to the server host. (bsc#1073489)\n- CVE-2017-16845: The PS2 driver in Qemu did not validate 'rptr' and 'count' values during guest migration, leading to out-of-bounds access. (bsc#1068613)\n- CVE-2017-17381: The Virtio Vring implementation in QEMU allowed local OS guest users to cause a denial of service (divide-by-zero error and QEMU process crash) by unsetting vring alignment while updating Virtio rings. (bsc#1071228)\n- CVE-2017-18030: A problem in the Cirrus driver in Qemu allowed local OS guest privileged users to cause a denial of service (out-of-bounds array access and QEMU process crash) via vectors related to negative pitch. (bsc#1076179)\n- CVE-2017-18043: Integer overflow in the macro ROUND_UP (n, d) in Quick Emulator (Qemu) allowed a user to cause a denial of service (Qemu process crash). (bsc#1076775)\n- CVE-2018-5683: The VGA driver in Qemu allowed local OS guest privileged users to cause a denial of service (out-of-bounds read and QEMU process crash) by leveraging improper memory address validation. (bsc#1076114)\n- CVE-2018-7550: The multiboot functionality in Quick Emulator (aka QEMU) allowed local guest OS users to execute arbitrary code on the QEMU host via an out-of-bounds read or write memory access. (bsc#1083291)  \n\nAlso the following bugs were fixed:\n\n- Eliminate bogus use of CPUID_7_0_EDX_PRED_CMD which we've\n  carried since the initial Spectre v2 patch was added. EDX bit\n  27 of CPUID Leaf 07H, Sub-leaf 0 provides status on STIBP, and\n  not the PRED_CMD MSR. Exposing the STIBP CPUID feature bit to the\n  guest is wrong in general, since the VM doesn't directly control\n  the scheduling of physical hyperthreads. This is left strictly to\n  the L0 hypervisor.\n\n- Spectre fixes for IBM Z series by providing more hw features to guests\n  (bsc#1076814)\n- Pre-add group kvm for qemu-tools (bsc#1040202)\n- the qemu-tools package also needs a prerequire of group management\n  tools, from the shadow package. (bsc#1085598)\n\n\n","status":"published","published":"2018-03-27T14:28:56Z","modified":"2026-02-04T03:59:03.989751Z","updated_at":"2026-11-02T15:53:44.594517Z"},{"id":"USN-3575-1","title":"qemu vulnerabilities","description":"It was discovered that QEMU incorrectly handled guest ram. A privileged\nattacker inside the guest could use this issue to cause QEMU to crash,\nresulting in a denial of service. This issue only affected Ubuntu 14.04 LTS\nand Ubuntu 16.04 LTS. (CVE-2017-11334)\n\nDavid Buchanan discovered that QEMU incorrectly handled the VGA device. A\nprivileged attacker inside the guest could use this issue to cause QEMU to\ncrash, resulting in a denial of service. This issue was only addressed in\nUbuntu 17.10. (CVE-2017-13672)\n\nThomas Garnier discovered that QEMU incorrectly handled multiboot. An\nattacker could use this issue to cause QEMU to crash, resulting in a denial\nof service, or possibly execute arbitrary code on the host. In the default\ninstallation, when QEMU is used with libvirt, attackers would be isolated\nby the libvirt AppArmor profile. This issue only affected Ubuntu 14.04 LTS\nand Ubuntu 16.04 LTS. (CVE-2017-14167)\n\nTuomas Tynkkynen discovered that QEMU incorrectly handled VirtFS directory\nsharing. An attacker could use this issue to obtain sensitive information\nfrom host memory. (CVE-2017-15038)\n\nEric Blake discovered that QEMU incorrectly handled memory in the\nNBD server. An attacker could use this issue to cause the NBD server to\ncrash, resulting in a denial of service. This issue only affected Ubuntu\n17.10. (CVE-2017-15118)\n\nEric Blake discovered that QEMU incorrectly handled certain options to the\nNBD server. An attacker could use this issue to cause the NBD server to\ncrash, resulting in a denial of service. This issue only affected Ubuntu\n14.04 LTS and Ubuntu 16.04 LTS. (CVE-2017-15119)\n\nDaniel Berrange discovered that QEMU incorrectly handled the VNC server. A\nremote attacker could possibly use this issue to consume memory, resulting\nin a denial of service. This issue was only addressed in Ubuntu 17.10.\n(CVE-2017-15124)\n\nCarl Brassey discovered that QEMU incorrectly handled certain websockets. A\nremote attacker could possibly use this issue to consume memory, resulting\nin a denial of service. This issue only affected Ubuntu 17.10.\n(CVE-2017-15268)\n\nGuoxiang Niu discovered that QEMU incorrectly handled the Cirrus VGA\ndevice. A privileged attacker inside the guest could use this issue to\ncause QEMU to crash, resulting in a denial of service. (CVE-2017-15289)\n\nCyrille Chatras discovered that QEMU incorrectly handled certain PS2 values\nduring migration. An attacker could possibly use this issue to cause QEMU\nto crash, resulting in a denial of service, or possibly execute arbitrary\ncode. This issue only affected Ubuntu 16.04 LTS and Ubuntu 17.10.\n(CVE-2017-16845)\n\nIt was discovered that QEMU incorrectly handled the Virtio Vring\nimplementation. An attacker could possibly use this issue to cause QEMU to\ncrash, resulting in a denial of service. This issue only affected Ubuntu\n16.04 LTS and Ubuntu 17.10. (CVE-2017-17381)\n\nEric Blake discovered that QEMU incorrectly handled certain rounding\noperations. An attacker could possibly use this issue to cause QEMU to\ncrash, resulting in a denial of service. This issue only affected Ubuntu\n14.04 LTS and Ubuntu 16.04 LTS. (CVE-2017-18043)\n\nJiang Xin and Lin ZheCheng discovered that QEMU incorrectly handled the\nVGA device. A privileged attacker inside the guest could use this issue to\ncause QEMU to crash, resulting in a denial of service. (CVE-2018-5683)\n","status":"published","published":"2018-02-20T19:12:03Z","modified":"2026-02-10T04:41:16Z","updated_at":"2026-11-02T16:58:13.496563Z"},{"id":"USN-3649-1","title":"qemu vulnerabilities","description":"Cyrille Chatras discovered that QEMU incorrectly handled certain PS2 values\nduring migration. An attacker could possibly use this issue to cause QEMU\nto crash, resulting in a denial of service, or possibly execute arbitrary\ncode. This issue only affected Ubuntu 18.04 LTS. (CVE-2017-16845)\n\nCyrille Chatras discovered that QEMU incorrectly handled multiboot. An\nattacker could use this issue to cause QEMU to crash, resulting in a denial\nof service, or possibly execute arbitrary code on the host. In the default\ninstallation, when QEMU is used with libvirt, attackers would be isolated\nby the libvirt AppArmor profile. (CVE-2018-7550)\n\nRoss Lagerwall discovered that QEMU incorrectly handled the Cirrus VGA\ndevice. A privileged attacker inside the guest could use this issue to\ncause QEMU to crash, resulting in a denial of service. This issue only\naffected Ubuntu 17.10 and Ubuntu 18.04 LTS. (CVE-2018-7858)\n","status":"published","published":"2018-05-16T12:03:54Z","modified":"2026-02-10T04:41:20Z","updated_at":"2026-11-02T16:58:13.496563Z"}]}}
