Skip to content

USB-Sicherheit 2016 - Zwei weitere Angriffe

Es geht weiter mit dem Update zu den Angriffen auf und über USB im aktuellen Jahr. Diesmal mit einem über WLAN steuerbaren USB-Device für die schon üblichen Angriffe und einem sich als Netzwerkkarte ausgebenden USB-Device, das in wenigen Sekunden Zugangsdaten ausspähen kann.

Ein bösartiges USB-Device mit WLAN-Steuerung

Rogan Dawes und Dominic White von SensePost haben auf der DEF CON 24 ein weiteres bösartiges USB-Device samt Software vorgestellt: "Universal Serial aBUSe: Remote Physical Access Attacks" (Präsentation als PDF, Beschreibung im SensePost-Blog, Video auf YouTube, Code auf GitHub).

Ihr Forschungsarbeiten verfolgten verschiedene Ziele:

  • Es sollte ein Ende-zu-Ende-Angriff werden, der
  • remote, also aus der Ferne, ausgelöst werden kann und
  • ohne Aktion des Benutzers auskommt.
  • Typische USB-Malware-Angriffsvektoren wie Angriffe über USB-Massenspeicher sollten nicht verwendet werden, da dafür bereits Gegenmaßnahmen existieren.
  • Es sollten keine Daten über das Netzwerk das Opfers geschickt werden, um ein Abfangen durch eine Firewall und eine Erkennung durch ein IDS zu vermeiden.
  • Die Kommunikation sollte über ein unverfängliches USB-Device erfolgen.
  • Es sollten möglichst wenig Spuren hinterlassen werden, z.B. indem der Code möglichst nur im Speicher vorhanden ist.

Herausgekommen ist dann eine spezielle Hardware auf Basis eines Microcontrollers, der über USB-Anschluss (für den Angriff auf den Ziel-Rechner) und WiFi-Schnittstelle (für die Kommunikation mit dem Angreifer) verfügt.

Gegenüber dem Ziel-Rechner gibt sich das Device als drei USB-Devices aus: Zum einen als Tastatur und Maus (HIDs, Human Interface Devices), zum anderen als "binary pipe"-Device. Die an den Rechner zu sendenden "Tastendrücke" und "Mausbewegungen" werden vom Angreifer über eine über WiFi aufgebaute VNC-Verbindung an das USB-Device geschickt. Dazu enthält die Firmware extra einen VNC-Server. Für die Übertragung binärer Dateien gibt es zusätzlich ein Telnet-Interface.

Alternativ könnte sich das Device auch als reiner Text-Drucker (dessen Treiber Windows automatisch und ohne Rückfrage beim Benutzer installiert) oder Sound-Karte (mit Audio-Ausgabe und Mikrofon-Eingabe, aber der Gefahr von Problemen durch das primäre Audio-Device des Rechners) ausgeben.

In der ersten Stufe des Angriffs werden die "Tastendrücke" an den Rechner geschickt, um z.B. über PowerShell Befehle auszuführen.

In der zweiten Stufe kann eine binäre Payload eingeschleust werden, die z.B. eine Shell öffnen oder Screenshots anfertigen kann. Die Kombination von Screenshots und simulierter Tastatur und Maus erlaubt den Zugriff auf das GUI, allerdings läuft das alles dann sehr langsam.

Eine alternative zweiter Stufe besteht darin, einen an localhost gebundenen TCP-to-USB-Proxy zu starten, über den dann netzwerk-basierte Payloads wie der Meterpreter eingesetzt werden können.
In diesem Fall werden in einer dritten Stufe die entsprechenden Payloads gesendet.

Nachdem das Device mit dem Rechner verbunden wurde, kann der Angriff jederzeit von außen gestartet werden. Der Angreifer muss also nur einmal Zugang zum Rechner haben, um das USB-Device einzustöpseln, danach erfolgen alle weiteren Aktionen über die Wifi-Verbindung zwischen USB-Device und Angreifer-Rechner.

Der USB-Stick, der eine Netzwerkkarte ist ...

Rob Fuller ("mubix") hat am 6. September die Beschreibung einen neuen Angriffs über USB veröffentlicht, bei dem das USB-Device innerhalb weniger Sekunden die Zugangsdaten des angegriffenen Rechners ausspäht. Und das sogar, wenn der gesperrt ist.

Diesmal gibt sich das Gerät nicht wie sonst so oft als HID aus, sondern als Netzwerk-Interface. Das wird von Windows sogar dann erkannt, wenn der Rechner gesperrt ist. Was eigentlich zu erwarten ist, denn die Sperre bedeutet ja nur, dass der Bildschirmschoner aktiv ist und erst aus geht, nachdem der Benutzer sich wieder angemeldet hat. System und ggf. Programme laufen in der Zwischenzeit ja ganz normal weiter. Aber zurück zum Angriff: Nachdem das neue "Netzwerk-Interface" von Windows erkannt wurde, wird es über DHCP eingerichtet.

Auf dem USB-Device läuft ein Linux-System mit einem speziellen Responder von Laurent Gaffié, der die Anfragen von Windows beantwortet. Das neue Netzwerk-Interface wird darüber als Default-Gateway und DNS-Server eingerichtet, außerdem wird eine präparierte Proxy-Konfigurations-Datei an den Rechner geschickt.

Gibt es mehr als ein Gateway bzw. eine Netzwerkverbindung, entscheidet Windows aufgrund von Metriken und OS X auf Grund einer Kombination von Metriken und Preferences, welches Gateway bzw. welche Verbindung verwendet wird. In Default-Fall werden kabelgebundene und neuere/schnellere Gateways/Netzwerkverbindungen bevorzugt. Der Angreifer kann also durch entsprechende Angaben dafür sorgen, dass der Rechner das neue Netzwerkinterface statt des vorhandenen verwendet.

Danach läuft der Netzwerkverkehr des angegriffenen Rechners über das USB-Device. Der Responder beantwortet weiter alle Anfragen und erzwingt wenn möglich immer erst mal eine Authentifizierung. Um sich gegenüber dem Responder zu authentifizieren, sendet Windows dann meist die Login Credentials an das USB-Device - und damit den Angreifer.

Normalerweise enthalten die zwar nicht das Passwort des Benutzers, aber dessen Hashwert. Der lässt sich unter Umständen knacken, z.B. wenn es einfache NTLM-Hashes sind. Oft ist das aber gar nicht nötig, denn sie lassen sich im Rahmen eines Pass-the-Hash-Angriffs direkt für die Anmeldung bei Diensten im lokalen Netz verwenden. Der Responder ist aber auch in der Lage, z.B. das Klartext-Passwort für einen E-Mail-Account einzusammeln.

Genau die gleichen Angriffe kann auch ein Angreifer durchführen, der einen Rechner im lokalen Netz kompromittiert hat oder ein entsprechendes Gerät mit dem Netzwerk verbinden kann. Neu ist hier "nur" der Angriffsweg, und der ist äußerst unauffällig. Man könnte das gleiche vermutlich auch erreichen, indem man einfach das Netzwerkkabel raus zieht und ein Gerät anschließt, dass analog zu mubix USB-Device über Ethernet agiert. Das wäre aber i.A. deutlich auffälliger als der Anschluss eines "USB-Sticks".

Mubix konnte folgende Systeme erfolgreich angreifen:

  • Windows 98 SE
  • Windows 2000 SP4
  • Windows XP SP3
  • Windows 7 SP1
  • Windows 10 (Enterprise und Home)
  • OS X El Capitan / Mavericks (ob der Angriff generell funktioniert oder nur mit mubix spezieller Konfiguration muss er noch testen)

Die Angriffe auf Windows 98 SE, 2000 SP4 und XP SP3 fallen ja eigentlich schon in die Kategorie "Leichenfledderei", zumindest XP SP3 wird aber wohl leider immer noch (zu) oft verwendet. Mit Windows 7 SP1 und Windows 10 sind aber auch aktuelle Systeme betroffen. Ob der Angriff auf OS X El Capitan und Mavericks generell möglich ist oder nur durch mubix individuelle Konfiguration der Systeme möglich war steht noch nicht fest. Ich tippe auf letzteres, da OS X normalerweise keinen Grund hat. Windows-Hashes zu verschicken.

Ob es wirklich zweckmäßig ist, bei aktivierter Sperre neue Hardware automatisch zu erkennen und zu konfigurieren, wage ich zu bezweifeln. Aus Sicherheitssicht ist das auf jeden Fall gefährlich und sollte unterbleiben. Vermutlich gibt aber auch gute Gründe, die dafür sprechen. Außerdem passiert das alles auch im normalen Betrieb ohne Nachfrage beim Benutzer, und das wird sich wohl kaum ändern (die passenden Stichworte sind dabei "Komfort" und "Support-Aufwand").

In der nächsten Folge werden weitere Angriffe vorgestellt.

Carsten Eilers

Trackbacks

Dipl.-Inform. Carsten Eilers am : USB-Sicherheit 2016 - Bösartige Sticks im Briefkasten und ein USB-Killer

Vorschau anzeigen
Außer den bereits vorgestellten Angriffen gab es dieses Jahr (und Ende letzten Jahres) einige weitere interessante Angriffe auf bzw. über USB. Der Einfachheit halber ab jetzt in umgekehrter chronologischer Reihenfolge, der neueste zu er

Dipl.-Inform. Carsten Eilers am : USB-Sicherheit 2016: Angriffe auf kabellose Tastaturen und Mäuse

Vorschau anzeigen
Bisher erfolgten die Angriffe auf und über USB immer über bösartige USB-Geräte, die an den Rechner angeschlossen wurden. Selbst das nach der Kompromittierung des Rechners über WLAN mit dem Angreifer kommunizierende USB-Device