Flipper Zero - Angriff auf den Einsatz von kabelloser Peripherie

Flipper Zero

Angriff auf den Einsatz von kabelloser Peripherie

Ralph Meier
von Ralph Meier
am 23. Februar 2023
Lesezeit: 7 Minuten

Keypoints

Flipper Zero ideal für Angriffe per eingesetzte kabellose Peripherie

  • Kabellose Peripherie bringt neben Komfort auch eine erhöhte Angriffsfläche
  • Hersteller von Peripherie mit 2.4GHz Frequenz verwenden proprietäre Pakete, Protokolle und sind selbst für sichere Übertragung verantwortlich
  • MouseJack ist eine Sammlung von Schwachstellen für kabellose Mäuse und Tastaturen, welche auch nach sieben Jahren in einer Vielzahl von eingesetzten Produkten weiterhin zu finden sind
  • Flipper Zero eignet sich gut für Angriffe mit notwendiger physischer Nähe, um per Funk ein gewünschtes Ziel anzugreifen

In diesem Artikel geht es um ein praktisches Beispiel, wie ein Computer durch angeschlossene kabellose Peripheriegeräte wie Mäuse oder Tastaturen angegriffen werden kann, als Beispiel für kabellose Peripherie dient die Logitech Unify-Technologie. Für ein Grundverständnis und um einen Überblick über die verschiedenen Module und Funktionen des Flipper Zeros zu erhalten, sollte folgender Artikel Flipper Zero – Was kann das kleine Hacking Tamagotchi zuerst gelesen werden. Die Inspiration zur Auseinandersetzung mit dem Thema Angriff auf Computer durch den Einsatz von kabellosen Peripheriegeräten kam durch ein Video.

Der Einsatz von kabellosen Tastaturen bringt eine erhöhte Angriffsfläche mit sich und je nach System sind öffentlich bekannte Schwachstellen vorhanden, zum Beispiel ist die Logitech Unify-Technologie von der Schwachstelle CVE-2019-13055 betroffen. Darin geht es um die Aufzeichnung des AES-Schlüsselmaterials bei der Erstkopplung eines Logitech Unify-Geräts mit einem Unify-Adapter und die Entschlüsselung der anschliessend getippten Zeichen.

MouseJack

MouseJack ist eine Sammlung von Schwachstellen, welche das Injizieren von Tastatureingaben und das Umgehen von Verschlüsselung beinhaltet. Offiziell wird MouseJack als CVE-2016-10761 gelistet. Eine Vielzahl von kabellosen Tastaturen und Mäusen, die über die Frequenz 2.4GHz kommunizieren, sind davon betroffen. Peripheriegeräte, die ausschliesslich über Bluetooth kommunizieren sind davon ausgeschlossen. Es liegt jedoch nicht primär an der eingsetzten Funkfrequenz, sondern am eingesetzten Chip im Empfänger, welcher an den Computer angeschlossen wird. Die Schwachstelle wurde von der Firma Bastille im Jahr 2016 entdeckt, sie listet auf ihrer Webseite auch betroffene Geräte mit Hersteller Statements und eine Behebung der Schwachstelle, wo es möglich ist, auf. Das Patchen des betroffenen Geräts ist jedoch nicht gerade einfach.

Funktionsweise

Jeder Hersteller ist selbst für die Kommunikation und die eingesetzte Security beim Pairing sowie der Übertragung zuständig. Bei einer Mausbewegung oder während dem Tippen werden die getätigten Bewegungen beziehungsweise Anschläge mittels Pakete, die genaue Umsetzung ist jedoch Hersteller abhängig, an den Wireless Empfänger am Computer übermittelt. Im Normalfall werden die getätigten Eingaben des Benutzers verschlüsselt Übertragen. Der Schlüssel wird dabei beim initialen Pairing zwischen Eingabegerät und Wireless Empfänger festgelegt. Die Verschlüsselte Übertragung verhindert das einfache Abhören von fremden Eingaben.

Injizieren von Tastatureingaben

Die getesteten Unify-Adapter, welche von der oben genannten MouseJack Schwachstelle betroffen waren, wurden zwar initial gepairt geliefert, konnten aber selbständig mit neuen Mäusen oder Tastaturen verbunden werden. Demnach machte es keinen Unterschied, ob der Unify-Adapter ausschliesslich mit einer Maus, einer Tastatur oder mit beiden gepairt war. Dies lässt daraus schliessen, dass beim ausschliesslichen Einsatz einer Maus nicht überprüft wird, ob die erhaltenen Befehle auch ausschliesslich Mausbewegungen oder das Betätigen von Maustasten sind. Daher ist es auch möglich beim Einsatz einer Funkmaus ungewollte Tastatureingaben auf dem Zielsystem vorzunehmen.

Bei der ursprünglichen Entdeckung der MouseJack Schwachstellen von Bastille wurde festgehalten, dass die meisten Hersteller die getätigten Tastatureingaben verschlüsseln, die Unify-Adapter jedoch nicht überprüfen, ob alle empfangen Benutzereingaben verschlüsselt sind. Beziehungsweise die Eingaben auch in unverschlüsselter Form entgegengenommen werden. Dies vereinfacht den Vorgang für Angreifer enorm, da sie sich nicht um den eingesetzten Schlüssel kümmern müssen, sondern lediglich die genaue Unify-Adapter-Adresse benötigten, um den gewünschten Payload zu versenden. Ein Pairing zwischen dem Gerät vom Angreifer und dem Unify-Adapter ist ebenfalls nicht nötig.

Angriff auf einen Computer mit verbundenem kabellosen Peripheriegerät

Da im Inspirationsvideo, welches zu diesem Artikel führte, ein Flipper Zero eingesetzt wurde, war das Ziel diesen Angriff nachzubauen. Der eigentlich Angriff wird jedoch vom NRF24L01+ Wireless-Funkmodul durchgeführt, der Flipper Zero übernimmt lediglich die Steuerung des Funkmoduls.

Testsetup

Als Testsetup wurde ein Windows Notebook mit einem Logitech Unify-Adapter und einer Logitech M525 Maus sowie später einer Logitech K800 Tastatur eingesetzt. Um den Angriff auszuführen, wurde ein Flipper Zero mit einem NRF24L01+ Wireless-Funkmodul, das via GPIO-Pins verbunden war, eingesetzt. Als Firmware auf dem Flipper Zero kam ein Fork der Flipper Firmware von RogueMaster zum Einsatz, dies weil da die notwendigen Scripts für den Betrieb des NRF24L01+ Wireless-Funkmoduls über die GPIO-Pins bereits vorhanden sind.

Die Verkabelung zwischen Flipper Zero und NRF24L01+ Wireless-Funkmodul wurde nach dem verlinkten Schema umgesetzt. Nach der Verkabelung sah dies wie in der Darstellung abgebildet aus.

Flipper Zero mit verbundenem NRF24L01+ Wireless-Funkmodul

Nach dem Verbinden über die GPIO-Pins kann die Adresse des Unify-Adapters mit dem NRF24 Sniffer Script herausgefunden werden und danach mit dem NRF24 MouseJack Script angegriffen werden. Das MouseJack Script fragt beim Start um ein Ducky Script als Payload, welches ausgeführt wird und die Tastatureingaben unverschlüsselt an den Unfiy-Adapter schickt.

Es kann zum Beispiel folgendes Ducky Script verwendet werden:

DELAY 1000
GUI r
DELAY 500
STRING http:\\www.scip.ch
DELAY 500
ENTER

Ducky Scripts werden im Artikel Angriffe über Peripheriegeräte genauer erläutert.

Einfluss von Flipper Zero in Kombination mit MouseJack

Durch die geringe Grösse des Flipper Zeros ist ein Angriff auf kabellose Peripheriegeräte beziehungsweise deren angeschlossenen Computer oder andere Ziele, welche eine gewisse physische Nähe benötigen, einiges einfacher umzusetzen. Der Flipper Zero passt nämlich auch mit Zusatzmodul oder dem oben gezeigten Wireless-Funkmodul problemlos in eine Jacken- oder Umhängetasche. Dadurch ist er bei einem Angriff mit physischer Nähe deutlich unauffälliger. In einem Grossraumbüro, in welchem mehrere Personen kabellose Peripherie einsetzen, die von MouseJack Schwachstellen betroffen sind, ist die Wahrscheinlichkeit für einen unscheinbaren, erfolgreichen Angriff sehr hoch.

Fazit

Kabellose Geräte bringen eine höhere Angriffsfläche mit sich, sollten daher stehts auf dem aktuellen Firmwarestand gehalten werden und in sensitiven Bereichen sollte für den Dauerbetrieb eine kabelgebundene Tastatur und Maus vorgezogen werden. Die MouseJack Schwachstellen sind zur Zeit dieses Artikels bereits über sieben Jahre alt und bei der Prüfung von Geräten im eigenen Umfeld stehts präsent und ausnutzbar. Ebenfalls werden zum Zeitpunkt dieses Artikels weiterhin neue Geräte mit verwundbarem Logitech Unify-Adapter verkauft. Durch den geringen Formfaktor des Flipper Zeros und die Unterstützung einer Vielzahl von Funkfrequenzen, sowie der einfachen Erweiterbarkeit über die GPIO-Pins, eignet sich das Gerät perfekt für Angriffe auf kabellose Ziele mit notwendiger physischer Nähe zum Zielgerät.

Über den Autor

Ralph Meier

Ralph Meier hat eine Lehre als Applikationsentwickler, Fokus Webentwicklung mit Java, bei einer Schweizer Grossbank absolviert und danach einen Bachelor of Science ZFH in Informatik an der ZHAW School of Engineering abgeschlossen. Er fokussiert sich auf die sicherheitstechnische Untersuchung von Webapplikationen. (ORCID 0000-0002-3997-8482)

Links

Sie brauchen professionelles Vulnerability Management?

Unsere Spezialisten kontaktieren Sie gern!

×
Dynamische Analyse von Android Apps

Dynamische Analyse von Android Apps

Ralph Meier

Burp Bambdas & BChecks

Burp Bambdas & BChecks

Ralph Meier

Disk Cloning

Disk Cloning

Ralph Meier

Das BIOS

Das BIOS

Ralph Meier

Sie wollen mehr?

Weitere Artikel im Archiv

Sie brauchen Unterstützung bei einem solchen Projekt?

Unsere Spezialisten kontaktieren Sie gern!

Sie wollen mehr?

Weitere Artikel im Archiv