CVE-2017-12190: Medium severity Linux Linux kernel vulnerability
biomapuseriov and biounmapuser do unbalanced pages refcounting if IO vector has small consecutive buffers belonging to the same page. bioaddpcpage merges them into one, but the page reference is never dropped, causing memory leak.
References:
http://seclists.org/oss-sec/2017/q4/52
https://bugzilla.suse.com/showbug.cgi?id=1062568
Discussion:
https://marc.info/?t=150605752800001&r=1&w=2
Proposed patch and reproducer:
https://www.mail-archive.com/linux-kernel@vger.kernel.org/msg1495884.html
https://www.mail-archive.com/linux-kernel@vger.kernel.org/msg1495887.html
Related upstream commits:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=95d78c28b5a85bacbc29b8dba7c04babb9b0d467
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=2b04e8f6bbb196cab4b232af0f8d48ff2c7a8058
Other sources
The biomapuseriov and biounmapuser functions in block/bio.c in the Linux kernel before 4.13.8 do unbalanced refcounting when a SCSI I/O vector has small consecutive buffers belonging to the same page. The bioaddpcpage function merges them into one, but the page reference is never dropped. This causes a memory leak and possible system lockup (exploitable against the host OS by a guest OS user, if a SCSI disk is passed through to a virtual machine) due to an out-of-memory condition.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
debian/linuxto a version that resolves this vulnerability.Fixed in 6.1.176-1Fixed in 6.1.187-1Fixed in 6.12.107-1Fixed in 7.1.13-1 - Upgrade
Upgrade
Linux kernelto a version that resolves this vulnerability.Fixed in 4.13.8
Event History
Frequently Asked Questions
What is CVE-2017-12190?
CVE-2017-12190 is a vulnerability in the Linux kernel that allows for unbalanced refcounting when a SCSI I/O vector has small consecutive buffers belonging to the same page.
How does CVE-2017-12190 affect Linux?
CVE-2017-12190 affects the Linux kernel versions before 4.13.8 and can result in a kernel crash or privilege escalation.
What is the severity of CVE-2017-12190?
CVE-2017-12190 has a severity rating of medium.
How can I fix CVE-2017-12190?
To fix CVE-2017-12190, you need to update your Linux kernel to version 4.13.8 or later.
Where can I find more information about CVE-2017-12190?
You can find more information about CVE-2017-12190 at the following references: [1] [2] [3].