Pwnd Blaster: Einen PC über Lautsprecher hacken, ohne den Lautsprecher überhaupt zu berühren
(blog.nns.ee)- Die Creative Sound Blaster Katana V2X kann von einem Angreifer innerhalb der Bluetooth-Reichweite von etwa 15 m ohne Pairing oder physischen Kontakt per CTP-Befehlen und Firmware-Updates in ein Überwachungsgerät oder eine Art Remote-Rubber-Ducky verwandelt werden
- CTP über USB verlangt eine Challenge-Response-Authentifizierung auf Basis eines statischen Schlüssels, doch der Bluetooth-Pfad akzeptiert dieselben CTP-Befehle über eine GATT-Characteristic ohne Authentifizierung und erlaubt das Auslesen von Informationen sowie das Ändern von Einstellungen
- Der Firmware-Container besteht aus
FBOOT,FMAINundCHK2; solange nur die SHA-256-PrüfsummeCHK2stimmt, wird gepatchte Firmware ohne Signaturprüfung akzeptiert - Der PoC lud etwa 10 Minuten lang per BLE eine benutzerdefinierte Firmware hoch, worauf der neu gestartete Lautsprecher wie eine USB-HID-Tastatur
echo pwnedeintippte und ausführte - Creative betrachtete das nach einer Kontaktaufnahme über SingCERT nicht als Schwachstelle und erklärte, dies „stelle kein Cybersicherheitsrisiko dar“; die neueste Firmware ist weiterhin verwundbar, und es gibt nur einen inoffiziellen Patch, der CTP-over-Bluetooth blockiert
Kern der Schwachstelle
- Die Katana V2X ist eine Soundbar, die per USB mit einem PC verbunden wird; die Creative-App ändert per CTP Einstellungen wie DSP, LED-Konfiguration und Audioquelle
- Um CTP-Befehle über USB zu schreiben, muss zunächst eine Challenge-Response-Authentifizierung durchlaufen werden; der Schlüssel ist ein statischer Wert, der aus den in die Creative App eingebetteten Binärdateien abgeleitet werden kann
- Firmware-Updates laufen ebenfalls über CTP; das ursprüngliche Firmware-Image wurde durch Mitschneiden des USB-Traffics mit Wireshark extrahiert
- Bei Bluetooth Low Energy kann man sich in manchen Fällen auch ohne Pairing mit einem Gerät verbinden und GATT-Characteristics lesen und schreiben; Pairing erzeugt Verschlüsselung, ist aber nicht immer für die Verbindung selbst erforderlich
- In der Katana-V2X-Firmware war der interne CTP-Handler nicht nur an USB, sondern auch an Bluetooth angebunden; als auf einem Laptop
5a 09 01 02in die Characteristic9e9daaec-3a10-4fe8-b69f-7397aff77886geschrieben wurde, ließ sich aus der Characteristic9e9daaeb-3a10-4fe8-b69f-7397aff77886der vollständige Firmware-Versionsstring auslesen
Firmware-Prüfung und OTA-Angriffskette
- Der Firmware-Container enthält
FBOOT, das mit dem Recovery-Modus zusammenhängt, die im normalen Boot ausgeführte Haupt-FirmwareFMAINsowieCHK2, eine SHA-256-Prüfsumme über den gesamten Container FBOOTundFMAINsind FreeRTOS-basierter Code, worauf der String/home/jieyi/mcuos2.5/kernel/freertos-8.2.3/hinweist;FMAINist etwa 6,5-mal größer alsFBOOT- Das Gerät akzeptierte gepatchte Firmware, solange
CHK2korrekt war; nachdem eine Firmware geflasht wurde, in der der StringWELCOMEzuPATCHEDgeändert war, zeigte das Segment-Display beim BootenPATCHEDan - Ein Python-Skript, das denselben Firmware-Update-Ablauf über BLE nachbildete, lud ohne Pairing oder Authentifizierung benutzerdefinierte Firmware hoch; wegen der BLE-Geschwindigkeit dauerte der Vorgang etwa 10 Minuten
- Der Lautsprecher besitzt ein Mikrofon, daher besteht theoretisch die Möglichkeit, dass eine benutzerdefinierte Firmware als unauffälliges Überwachungsgerät fungiert, Gespräche mithört und sie per Bluetooth an einen Empfänger weiterleitet
USB-Tastatur-Injektion
- Die Katana V2X arbeitet in ihrer normalen Konfiguration als vertrauenswürdiges Gerät, das per USB mit einem PC verbunden ist
- Das Gerät ist zwar nicht bereits eine vollständige Tastatur, meldet sich aber als HID-Consumer-Control-Gerät für Mediensteuerung wie Lautstärke und Wiedergabe/Pause
- Durch Hinzufügen eines zweiten Report-Descriptor-Eintrags zum USB-Report-Descriptor ließ sich erreichen, dass sich das Gerät auch als Tastatur meldet
- In der Firmware gab es bereits eine Routine zum Senden von HID-Daten, die sich durch Übergabe von Daten für Tastendruck und Tastenfreigabe zum Senden von Tastenanschlägen aufrufen ließ
- Statt den Ausführungsfluss aufwendig umzuleiten, wurde die FreeRTOS-Task
diagnostic, die im normalen Betrieb offenbar wenig bis nichts tat, überschrieben, damit der benutzerdefinierte Code beim Booten ausgeführt wird - Diese Task wartete etwa 20 Sekunden auf die Bereitschaft des USB-Subsystems, tippte dann im Abstand von etwa 20 ms
echo pwned, drückte Enter und beendete sich anschließend - Der finale Patch bestand aus 83 Byte für den USB-Report, 102 Byte ARM/Thumb-Assembler für den Tasteninjektor und 2 Byte pro zu sendendem Tastendruck
- In einem realen Angriff könnte man ein Programm wie
powershell.exeöffnen und eine bösartige Ein-Zeilen-Anweisung einfügen; wenn der Angreifer die Firmware-Update-Routinen für den normalen Modus und den Recovery-Modus deaktiviert, könnte das Entfernen der bösartigen Firmware und zukünftiges Patchen unmöglich werden - Bluetooth des Lautsprechers ist selbst im Energiesparmodus immer eingeschaltet, und es scheint keine Möglichkeit zu geben, es abzuschalten
Gegenmaßnahmen und Offenlegung
- Creative hatte keinen öffentlich bekannten Sicherheitskontakt, und auch allgemeine Kontaktmöglichkeiten waren außer dem Support-Formular auf der Website schwer zu finden
- Nach zwei Kontaktversuchen über das Support-Formular trat SingCERT als Vermittler auf
- Creative antwortete SingCERT erst fast zwei Monate später und erklärte, man sehe darin „keine Cybersicherheitsgefahr“ und betrachte es daher nicht als Schwachstelle
- Einen von Creative bereitgestellten Patch gibt es nicht, und auch die neueste Firmware ist verwundbar
- Die inoffizielle Gegenmaßnahme blockiert CTP-over-Bluetooth in der Firmware; dadurch dürfte die mobile Creative-App wahrscheinlich nicht mehr funktionieren
- v2x-patcher lädt die offizielle Firmware von den Creative-Servern herunter, patcht sie im Speicher und lädt sie per USB auf eine angeschlossene Katana V2X hoch
- Alle Tests und das gesamte Reverse Engineering wurden mit der Firmware-Version
1.3.230619.1820durchgeführt
Details zum Reverse Engineering
FMAIN.binwar kein einzelnes Image, sondern eine scatter-loaded Struktur, bei der unterschiedliche Dateioffsets an unterschiedliche Adressen geladen werden- Für die automatische Analyse in Ghidra waren die korrekte Basisadresse und Memory-Map nötig; nachdem nach einer Herleitung das Layout angewendet und per Geräte-Speicherauslese verifiziert wurde, ergaben sich gültige Analyseergebnisse
- String-Pointer wurden nicht direkt geladen, sondern über Paare aus
movwundmovt; ein Skript, das nach Paaren suchte, die in dasselbe Register laden, und bei Verweisen auf gültigen Speicher DATA-Referenzen erzeugte, erstellte etwa 13.000 Referenzen - Um zu testen, ohne die Firmware jedes Mal neu zu flashen, wurde der Echo-Handler des CTP-Opcodes
0x54überschrieben, sodass er Lese-, Schreib- und Ausführungsbefehle verarbeiten konnte - Der finale benutzerdefinierte Handler war 96 Byte groß und passte damit in die etwa 106 Byte des ursprünglichen Handlers
- Als mehrere Tastenanschläge per
mem-execim Kontext der USB-Verarbeitungs-Task ausgeführt wurden, summierten sich dievTaskDelay-Verzögerungen, worauf das Gerät wegen des Task-spezifischen Watchdogs neu startete - Nachdem der Tasten-Code nicht direkt in der USB-Task aufgerufen, sondern in die Service-Task
diagnosticinjiziert wurde, verschwand das Watchdog-Problem
1 Kommentare
Hacker-News-Kommentare
Es ist lustig zu sehen, wie viele Kommentare den Artikel offenbar nicht oder nicht richtig gelesen haben. Das ist im Grunde eine Situation wie ein öffentlich zugänglicher S3-Bucket auf einer Bluetooth-Geräteplatine
Die Arbeit selbst ist trotzdem wirklich beeindruckend. Ich hätte gedacht, es wäre deutlich schwieriger, ein per USB angeschlossenes Gerät in einen Angriffsvektor zu verwandeln, aber dass es schon reicht, eine Tastatur zu imitieren, ein lokales Terminal zu öffnen und bösartige Befehle auszuführen, ist schon ziemlich absurd. Es ist zwar kein Terminal mit Administratorrechten, daher ist der Schaden etwas begrenzt, aber unter Windows klicken Nutzer UAC-Prompts oft einfach weg, sodass man auf ziemlich vielen PCs wohl vollen Zugriff bekommen könnte
Laut einer E-Mail von SingCERT sagte der Hersteller angeblich: „Wir betrachten dies nicht als Schwachstelle, da es kein Cybersicherheitsrisiko erzeugt.“ Ohne Pairing per Funk beliebige Firmware auf ein per USB mit fremden Computern verbundenes Gerät schreiben zu können, soll also keine Sicherheitslücke sein
Da fragt man sich, wie viele andere Peripheriehersteller offenbar ohne Sicherheitsteam arbeiten. Von solchen Schwachstellen gibt es vermutlich noch viel mehr, sie wurden nur noch nicht entdeckt. Mein Bruder wurde einmal um 2 Uhr morgens geweckt, weil Kinder aus der Nachbarschaft sich mit seinem Bluetooth-Lautsprecher verbunden und Furzgeräusche in Endlosschleife auf voller Lautstärke abgespielt haben — das ist wohl nur die Spitze des Eisbergs bei bösartiger Bluetooth-Nutzung
Per Definition gibt es immer Schwachstellen mit niedrigem Risiko, weil die Auswirkung oder die Wahrscheinlichkeit gering ist. CVEs haben zwar Scores, aber das tatsächliche Risiko und ob ein Restrisiko vor oder nach Maßnahmen akzeptabel ist, hängt vom Anwendungskontext ab. „Kein Risiko => keine Schwachstelle“ ist vom Ansatz her falsches Schlussfolgern; allenfalls „keine Schwachstelle => kein Risiko“ ist zustimmungsfähig
Dass die Schnittstelle zum Reflashen aber über Bluetooth offenliegt, ist seltsam. Soweit ich weiß, braucht man physischen Zugriff, um einen Lautsprecher zu pairen
Korrektur: Ich lag falsch. Das ist ein BTLE-Endpunkt, der ohne Pairing funktioniert. Dann ist das eine völlig absurde Schwachstelle. Hoffentlich wird sie so gepatcht, dass die Möglichkeit, eigene Software auszuführen, nicht verloren geht
Der Artikel ist gut geschrieben und leicht verständlich, ein Überfliegen lohnt sich
Kurz gesagt wurde ein Weg gefunden, bei der Creative Sound Blaster Katana V2X Soundbar per Bluetooth beliebige Firmware neu zu schreiben, praktisch ohne echte Authentifizierung oder Nutzerinteraktion
Da die Soundbar per USB direkt mit dem Host-Computer verbunden ist, konnte der Firmware ein Descriptor hinzugefügt werden, sodass sie als Tastatur erkannt wird. Danach war es einfach, Tastenanschläge an den PC zu senden. Die Soundbar hat außerdem ein Mikrofon, also könnte ein Angreifer sie auch in eine Abhöreinrichtung verwandeln
Creative und SingCERT wurden informiert, aber das Unternehmen antwortete erst zwei Monate später mit: „Wir betrachten dies nicht als Schwachstelle, da es kein Cybersicherheitsrisiko erzeugt.“
Der Autor hat einen Firmware-Patcher veröffentlicht, der das fehlerhafte Übertragungsprotokoll deaktiviert. Das ist eine etwas grobe Lösung, die möglicherweise sogar Funktionen der offiziellen Bluetooth-App kaputtmacht, wirkt aber wie das Beste, was ohne Mitarbeit des Herstellers möglich ist
Selbst alteingesessene Hersteller bauen oft erst das Gerät und behandeln Software als nachträglichen Anbau. Sie kümmern sich kaum um Sicherheit, aber auch kaum um den Software-Lebenszyklus mit Patches, Updates und einem sich wandelnden Ökosystem
Ich habe sogar Fälle gesehen, in denen eine Gerätemarke die Software an eine kleine externe Entwicklungsfirma ausgelagert hatte, die dann geschlossen wurde, verschwand oder das Geschäft aufgab, und der Hersteller nicht einmal den Source Code besaß. Dann fehlt jede Fähigkeit, die Software, die das Gerät antreibt, weiter zu verbessern oder zu reparieren, und später stapeln sich Middleware, UI und provisorische Verbindungsschichten immer weiter übereinander
In Wirklichkeit sind es vermutlich nicht einmal nur „kleine externe Entwickler“, sondern nicht selten eher Supply-Chain-Hacker, die die Firmware geschrieben haben
Warum so klein denken? Man könnte auch den Lautsprecher selbst als Angreifer einsetzen
Jeder Script Kiddie mit irgendeinem LLM könnte vermutlich einen sich über die Supply Chain verbreitenden Wurm bauen. Man könnte Lautsprecher direkt auf dem Fabrikboden hacken und dann Rickroll-Musik oder Ähnliches abspielen lassen
Ich frage mich, ob Creative dann immer noch behaupten würde, das erzeuge „kein Cybersicherheitsrisiko“
Bonuspunkte gibt es, wenn beim Schließen der Sicherheitslücke auch die legitime Firmware-Flash-Funktion deaktiviert wird und der Hersteller die Lautsprecher zum Reparieren jailbreaken muss
Es sieht nicht gut aus, dass der Autor einen Third-Party-Patch veröffentlichen musste, weil der Hersteller es nicht als Schwachstelle ansieht
Damit man zum Opfer wird, muss man dieses Gerät besitzen, der Angreifer muss das wissen, und er muss sich in der Nähe befinden. Man denke an das Zitat aus Fight Club
A = Anzahl der im Feld befindlichen Lautsprecher
B = Anteil, der wahrscheinlich gehackt wird
C = durchschnittliche außergerichtliche Vergleichssumme
Entscheidung: Wenn die Kosten, keinen Rückruf oder keine Reparatur durchzuführen, höher sind als die Rückrufkosten, beginnt man mit dem Rückruf. Die größten Kosten wären, wenn die Leute künftig keine Lautsprecher mehr kaufen — und das scheint eher nicht wahrscheinlich
Wenn ich eine Organisation wie den Mossad leiten würde, würde ich einen großen Teil des Budgets dafür ausgeben, sämtliche Bluetooth-Geräte auf dem Markt aufzukaufen, unausgelastete israelische Informatikabsolventen darauf anzusetzen, solche Schwachstellen zu finden, und das Ganze dann in ein leicht verteilbares Toolset zu verwandeln.
Zum Beispiel würde ich wollen, dass ein Asset mit einem Mobiltelefon Zugang zu iranischen Regierungsbüros bekommt, durch das Gebäude läuft und so viele Computer wie möglich kompromittiert. Wenn ich darüber nachdenke, muss man wohl davon ausgehen, dass genau das tatsächlich schon passiert.
Das kommt faktisch fast einem vollständig vergesellschafteten Masterstudium der Informatik gleich, und als Signals-Intelligence-Organisation lernen sie genau solche Dinge. Nach 2–3 Jahren Dienst haben sie keine Studienkredite, der Staat stellt reichlich Startup-Seed-Finanzierung bereit, und das TLV-Ökosystem funktioniert wie eine kleine Bay Area.
Auch bei den Eltern zu wohnen ist gesellschaftlich akzeptierter, sodass ein erheblicher Teil der Menschen in ihren 20ern schuldenfrei ist, geringe monatliche Ausgaben hat, durch den Militärdienst starke technische Fähigkeiten mitbringt, sich in einem Gründerzentrum befindet und guten Zugang zu Kapital hat. Das Ergebnis sind besonders im Bereich Cybersicherheit viele Unicorns (https://www.techaviv.com/unicorns).
Im Vergleich dazu muss man sich in den USA vier Jahre lang auf ein Bachelorstudium konzentrieren, hohe Schulden aufnehmen, Miete zahlen und sich mühsam um Seed-Finanzierung bemühen. Die Denkweise „Man kann ja einfach ein paar Reste eines kaputten Systems verwerten“ verfehlt die Perspektive, überhaupt ein erfolgreiches System zu haben.
Wenn das keine Standardpraxis ist, wäre ich ziemlich überrascht. Es könnte nur sein, dass die Produktivität geringer ist als gedacht und sich der Aufwand daher nicht lohnt. Dieser Fall hier sieht aber so aus, als könne er durchaus Ergebnisse liefern, und man müsste ihn mit anderen Methoden vergleichen, die Nachrichtendienste nutzen und von denen wir nichts wissen.
Was ist leichter zu vermarkten, was ist leichter zu buggen? :-)
Ich schreibe Firmware, insbesondere für Geräte mit Bluetooth-Unterstützung, und bei uns im Unternehmen ist diese Website gesperrt.
Leute, die Technik lieben, kaufen sich einen ultra-smarten Lautsprecher, der mit allen Computern im Haus verbunden ist und sogar die ultra-smarte Kaffeemaschine steuert, damit frischer Kaffee gebrüht wird, wenn Miles Davis läuft.
Leute, die Technik verstehen, haben eine Axt neben dem Toaster.
Ich freue mich jetzt schon darauf, dass irgendein schlampig gemachter Kanal ungefähr vier Werktage später ein Video dazu auf meiner YouTube-Startseite auftauchen lässt.