Zum Hauptinhalt Zur Navigation

Karsten Nohl: USB-Geräte aller Typen lassen sich für BadUSB nutzen

Auf der Konferenz Pacsec hat der Berliner Sicherheitsforscher Karsten Nohl weitere Details zu dem von ihm BadUSB genannten Angriffsszenario auf PCs vorgeführt. Nicht nur USB -Sticks, sondern alle Geräte von der Webcam bis zum Hub lassen sich für BadUSB umprogammieren.
/ Nico Ernst
12 Kommentare News folgen (öffnet im neuen Fenster)
Der Berliner Sicherheitsforscher Karsten Nohl (Bild: Thomas Peter/Reuters)
Der Berliner Sicherheitsforscher Karsten Nohl Bild: Thomas Peter/Reuters

In einem Vortrag auf der Konferenz Pacsec in Tokio hat Karsten Nohl seine andauernde Arbeit an der Sicherheit von USB-Geräten vorgestellt. Bereits im August 2014 stellte er das Prinzip namens BadUSB auf der Black Hat vor, inzwischen haben andere Sicherheitsforscher dazu auch Code veröffentlicht .

Drehte sich bisher die Betrachtung vor allem um USB-Speichersticks, die sich vom Anwender ungewollt wie Tastaturen verhalten, so hat Nohl nun etliche andere Geräte untersucht. Dabei fand er, wie eine Wiki-Seite(öffnet im neuen Fenster) von Nohl zeigt, bei USB-Produkten aller Typen die Möglichkeit, BadUSB einzusetzen. Das reicht von Webcams über Hubs bis zu SD-Card-Readern, Sata-Adaptern und Mäusen.

In all diesen Geräten können USB-Controller sitzen, die selbst oder über einen Zusatzchip Flash-Speicher besitzen. Sind die Controller auch noch programmierbar, so ist ein Angriff über BadUSB möglich. Die Geräte können mit einer neuen Firmware im Betrieb ihre USB-Klasse wechseln. Wie in einem Video des Black-Hat-Vortrags zu sehen ist, verhält sich ein USB-Stick zunächst wie erwartet. Nach einigen Sekunden werden aber Tastaturbefehle ausgeführt, weil sich der Stick nun als Tastatur angemeldet hat. Für das Betriebssystem sieht das wie ein normaler Vorgang aus, ganz so, als ob der Stick abgesteckt und eine Tastatur angeschlossen worden wäre.

Damit ist dann jegliche Steuerung oder Infektion mit Malware möglich, weil die USB-Tastatur wie ein Anwender agiert. Nohl führte bereits auf der Black Hat vor, wie sich mit blitzschnell ausgeführten Shell-Befehlen Code aus dem Internet nachladen lässt. Nun hat er auch gezeigt, wie sich ein Linux-Image in einem geschützten Teil eines USB-Sticks verstecken lässt. Ist der Stick beim Booten angeschlossen, kann darüber eine Infektion des PCs geschehen, noch bevor das Betriebssystem oder ein Virenscanner laufen. Ein solcher Scanner, so Nohl, würde das Linux ohnehin nicht vorher erkennen, denn der Stick erscheint leer. Schon beim ersten Angriff über einen Stick, der sich in eine Tastatur verwandelt, hatte der Sicherheitsforscher den Speicher vorher mit Windows formatiert.

Solche Angriffe sind auch mit allen anderen Geräten, nicht nur USB-Sticks, möglich, wenn diese programmierbare Controller und Flash-Speicher enthalten. Selbst die Suche nach vermeintlich unverwundbaren Controllern hilft dabei nicht weiter: Nohl zeigte in seinem Vortrag zwei Modelle eines USB-Hubs, die den gleichen Chip verwendeten. Dieser besitzt keinen eigenen Speicher. In einem der Hubs war aber ein externer Flash-Baustein eingebaut, der vom Controller genutzt werden konnte. Rund die Hälfte aller USB-Controller, so schätzt Nohl, ist verwundbar. Das betrifft auch Geräte, die zunächst völlig unverdächtig erscheinen.

DNS-Umleitung per USB-Stick

In seinem Wiki hat der Entwickler einige Mäuse beschrieben, deren Firmware sich umprogrammieren lässt. Da die dafür nötigen Tools im Internet zu finden sind, ist es für Angreifer vergleichsweise einfach, die Software zu analysieren und für eigene Zwecke einzusetzen. Das setzt aber immer Kenntnisse in der Programmierung von Microcontrollern und der USB-Protokolle voraus, so dass BadUSB-Angriffe bisher wohl nur Spezialisten möglich sind. Nohl hatte bereits im August 2014 vor einem USB-Wurm gewarnt, der sich von einem Peripheriegerät zum andern verbreitet. Ein solcher ist bisher aber nicht bekannt.

Eine besonders perfide Methode zeigte Nohl auch noch, und zwar mit einer DNS-Umleitung über ein Netzwerk-Interface auf einem USB-Stick. Dabei antwortet der Stick zwar auf DNS-Anfragen, leitet diese aber nach Modifikation an das Standard-Gateway des Rechners um. Der PC holt sich dann über seine übliche Schnittstelle die Daten, aber von den Servern eines Angreifers. Es erscheint leicht, Benutzern damit gefälschte Webseiten unterzuschieben, selbst wenn sie beispielsweise die Adresse ihrer Bank korrekt und von Hand im Browser eingegeben haben.

Gegen solche Angriffe und auch das generelle Problem von BadUSB kann man sich mit technischen Maßnahmen kaum schützen. Einem USB-Gerät ist auch nicht anzusehen, welcher Controller darin steckt und ob er programmierbar ist. Gegen Geräte, die sich als Tastatur ausgeben, gibt es immerhin das kostenlose Programm USB Keyboard Guard(öffnet im neuen Fenster) von G-Data. Es zeigt aber auch lediglich eine Meldung an, wenn eine neue Tastatur gefunden wird, und blockiert diese bis zur Bestätigung des Anwenders. Der muss sich aber der Gefahr bewusst sein und die richtige Entscheidung treffen.

Ein derartiges Whitelisting von USB-Geräten bezeichnet auch Nohl in seinem aktuellen Vortrag ( PDF(öffnet im neuen Fenster) ) als eine Schutzmaßnahme. Sie sei aber auszuhebeln, weil nicht jedes Gerät eine eindeutige, per Software auslesbare Seriennummer besitzt, gibt der Sicherheitsforscher zu bedenken. Auch kryptographisch signierte Firmware lässt sich nicht ohne weiteres einsetzen, weil viele der Controller dafür nicht die nötige Rechenleistung bieten, meint der Entdecker von BadUSB. Zudem gibt es Milliarden von bereits verkauften USB-Geräten, die sich kaum alle aktualisieren lassen.

Damit bleibt bisher nur, beim Verwenden von neuen oder fremden USB-Geräten vorsichtig zu sein. In Sicherheitsbereichen von Firmen und Behörden sind – aber eher wegen Datendiebstahl durch auf USB-Sticks kopierte Daten – USB-Geräte schon lange verboten. Bei vielen Business-PCs lassen sich die Schnittstellen auch im BIOS abschalten. Für die meisten Anwender, die auf Peripherie angewiesen sind, ist das aber kein gangbarer Weg.

Abhilfe könnten hier nur die Hersteller von USB-Geräten schaffen, beispielsweise, indem sie garantieren und öffentlich technisch dokumentieren, dass sich die Firmware nicht ändern lässt. Dann wären zumindest für Geräte wie USB-Sticks, die oft an fremden PCs landen, Modelle bekannt, die sich nicht für BadUSB nutzen lassen.


Relevante Themen