Linux Kernel USB Subsystem Data Size Checks Handling Vulnerability [CVE-2018-20169]
- A vulnerability in the USB subsystem of the Linux Kernel could allow a local attacker to execute arbitrary code or cause a denial of service (DoS) condition on a targeted system.
The vulnerability is due to improper checks on the minimum and maximum size of data allowed when reading an extra descriptor by the USB subsystem of the affected software, related to the __usb_get_extra_descriptor in the drivers/usb/core/usb.c source code file. An attacker could exploit this vulnerability by inserting a USB device designed to submit malicious input to the targeted system. An exploit could allow the attacker to execute arbitrary code or cause a DoS condition.
Kernel.org has confirmed the vulnerability and released software updates.
Analysis
- To exploit this vulnerability, the attacker must have user-level access to the targeted system. This access requirement could reduce the likelihood of a successful exploit.
Vendor Announcements
- Kernel.org has released a changelog and a git commit at the following links: ChangeLog-4.19.9 and commit 704620afc70cf47abb9d6a1a57f3825d2bca49cf
Fixed Software
- Kernel.org has released software updates and a patch at the following link: Kernel 4.19.9 and USB: check usb_get_extra_descriptor for proper size
CVE number – CVE-2018-20169
![Linux Kernel USB Subsystem Data Size Checks Handling Vulnerability [CVE-2018-20169]](https://i0.wp.com/www.systemtek.co.uk/wp-content/uploads/2022/01/blank-profile-hi.png?resize=100%2C100)
Duncan is a technology professional with over 20 years experience of working in various IT roles. He has a interest in cyber security, and has a wide range of other skills in radio, electronics and telecommunications.