Multiple USB Vulnerabilities in the Linux Kernel

Google security researcher Andrey Konovalov discovered 79 USB-related vulnerabilities in the Linux kernel using Syzkaller, a tool developed by Google that uses afuzzing technique to find security bugs. Fourteen of the vulnerabilities were found in the USB subsystem and can be exploited via a specially crafted malicious USB device, allowing a local threat actor to run untrusted code and take control of systems running a Linux-based operating system. Several of the other vulnerabilities can result in a denial-of-service condition if exploited, while others could allow threat actors to elevate privileges or execute code. Many of the USB-related vulnerabilities found in the Linux kernel can be attributed to the widespread adoption of devices with USB interfaces, requiring Linux to support a wide range of drivers that may not have been properly or thoroughly tested. The NJCCIC recommends all Linux users and administrators review Konovalov’s research, consider utilizing a reputable software tool designed to protect systems against rogue USB devices, and whitelist approved USB drives. Additionally, we recommend only inserting trusted USB devices into Linux-based systems and configuring the kernel module loading system to prevent automatic loading of the USB storage driver if the feature is unneeded.