USB-Sicherheitstool entdeckt 26 Bugs in unterschiedlichen Betriebssystemen
USB-Treiberpakete sind Komponenten, die Computer dabei unterstützen, über den Universal Serial Bus (USB) mit externen Geräten zu kommunizieren. USB-Verbindungen – verwendet mit Geräten wie externen Festplatten, Tastaturen, Mäusen oder Kameras – können Computer für Angriffe öffnen, wenn ihre Betriebssysteme Schwachstellen enthalten.
Um solche Schwachstellen aufzudecken, haben die Forscher der EPFL ein Software-Sicherheitstool namens Fuzzer entwickelt, mit dem sie die Fähigkeit eines Computers testen können, einen Angriff zu vereiteln, indem er ein USB-Gerät nachahmt. Das Tool, USBFuzz genannt, liefert Bits von Zufallsdaten an einen Zielcomputer, bevor es selbstständig beobachtet, wie gut die Software des Computers mit den unerwarteten Eingaben umgeht.
Die Arbeiten wurden von Mathias Payer, Leiter des HexHive-Labors an der School of Computer and Communication Sciences (IC), und HexHive-Forscher Hui Peng, derzeit Doktorand an der Purdue University, durchgeführt.
«Fuzzing ist ein etablierter Ansatz zum Testen von Softwaresystemen. USBFuzz erweitert diesen Ansatz nun auf das Testen externer Peripheriegeräte über die Software-Hardware-Barriere hinweg», erklärt Payer. «Peripheriegeräte sind bekanntermassen schwer zu testen, und USBFuzz bietet dafür einen automatisierten Ansatz», erklärt Payer.
Bereits angelaufene Lösungen
Mit diesem Ansatz haben Payer und Peng bereits 26 neue Schwachstellen identifiziert, die potenziell von böswilligen Akteuren ausgenutzt werden könnten. Sechzehn davon waren neue, hochgradig sicherheitsrelevante Speicherfehler in Linux-Betriebssystemen, die bereits umfangreichen Fuzzing-Tests unterzogen worden waren. Drei Schwachstellen wurden im MacOS-Betriebssystem, vier in Windows und eine in FreeBSD gefunden.
«Die Entdeckung von Fehlern in FreeBSD, Windows und MacOS zeigt, wie erfolgreich wir uns ergänzen und demonstriert die Portabilität von USBFuzz», so die Forscher in einem Vortrag, der auf dem Usenix-Sicherheitssymposium im August 2020 vorgestellt werden soll.
Neben der Identifizierung der Schwachstellen haben Payer und Peng auch Softwarelösungen oder Patches entwickelt. Die Forscher sagen, dass sie derzeit mit den Sicherheitsteams von Linux, Android, Microsoft und Apple zusammenarbeiten, um die entdeckten Schwachstellen zu melden und zu beheben. Bislang wurden bereits 11 der neuen Speicherfehler behoben.
«Wir sind tief beeindruckt von der Reaktionsfähigkeit und Offenheit der Linux-Kernel-Sicherheitsgemeinschaft. Unsere Fehlerberichte wurden gut aufgenommen, und wir haben mit ihnen zusammengearbeitet, um Patches für die einzelnen Treiber zu entwickeln», sagt Payer.