Sicherheitsproblematiken des BLE-Moduls bei Xiaomi-Scootern

16 August 2023
7
0
E-Scooter
Mi3
Dies ist mein erster Post in diesem Forum und ich möchte mich ersteinmal bei der Community für die vielen wertvollen Infos und Tools bedanken.

Nachdem ich mich mit meinem Mi3 vertraut gemacht habe, bin ich ziemlich schockiert über die Software-Sicherheit. Damit meine ich den Umstand, dass sich quasi jeder Remote mit dem Scooter verbinden kann (wobei höchstens einmal der Dash-Button zum Pairing betätigt werden muss) und dort von Auslesen über Unlock bis Firmware-Flash alles tun kann. Ich hatte gehofft Ideen und Lösungen dazu zu finden, aber es scheint garnicht oft diskutiert zu werden.

Ich habe außerdem diese interessante Untersuchung gefunden (espoofer) und hier noch keinen Thread dazu gesehen:
Paper: https://francozappa.github.io/publication/2023/espoofer/paper.pdf
Repo: https://github.com/Skiti/ESpoofer
Bei der Untersuchung werden weitere Schwachstellen der BLE-Firmware offengelegt.

Ich würde gerne Interessierte finden um die dort vorgeschlagenen Security-Fixes in der BLE-Firmware umzusetzen. Ich habe diverse IT-Kenntnisse aber leider bisher keine im Firmware-Reverse-Engineering. Bis jetzt habe ich nur einmal mit Ghidra draufgeschaut.
Post automatically merged:

So wie in dem Projekt (Protokoll-Downgrade auf BLE122) könnten eventuell einfache Fixes an den BLE-Firmwares gepatched werden. Ansonsten frage ich mich, ob ein OSS-Rewrite der BLE-Firmware für das Dashboard denkbar wäre oder völlig unrealistisch ist.
Leider können wir keine Fixes von Xiaomi erhoffen, weil die ja seit BLE157 immer gleichzeitig jegliche CFW verunmöglichen werden.
 
Hallo

sowas kommt täglich, bei mir, vor das einer Daten von meinem Scooter abgreifen will.

Mal im ernst wieviele Personen kennen diese Lücke und haben dann noch lust die Scooter zu manipulieren.

Mann kann sich auch im Sicherheitswahn verlieren und dann legt man den Hausschlüssel unter die Fussmatte, hauptsache der Scooter ist geschützt .

Ein Interesantes Thema ist es allerdings


Viele Grüße

Christoph
 
Hallo Christoph,

Also mir ist es schon passiert, dass jemand bei meinem Fahrrad die Luft rausgelassen hat oder bei meinem Moped fehlte der Benzinschlauch.
Ich möchte nicht so gern erleben, dass ich den Scooter nach einem Einkauf mit gebriggten Motorcontroller vorfinde, weil es irgendwer lustig fand. Man muss kein "Hacker" sein um diese SHUtils-App zu installieren.
Und dann erwarte ich so ein halbwegs sicheres Software-Lock-Feature eigentlich, denn das was Xiaomi macht ist so in etwa, wie ein Fahrzeug mit Generalzündschlüssel zu verkaufen und den Leuten vorzugaukeln sie könnten ein individuelles Passwort vergeben.

Natürlich respektiere ich, dass Leute solche Sicherheit am Scooter für überflüßig halten, aber ich versuche Interessierte zu finden, denen es wichtig ist so wie mir.

Grüße :)
 
Also beim Xiaomi sehe ich da weniger das Problem da man das BT Pairing ja via Tastendruck auf den Powerbutton bestätigen muss.
Beim Ninebot besteht tatsächlich Handlungsbedarf, da kann sich jeder in Reichweite ohne Bestätigung verbinden.

Und wenn mal jemand bei meinem Scotter am Dashboard rumdrücken will, gibts die Lösung welche Rodcruiser im Post #3 erwähnt hat.

Schlüsselschalter oder Funkunterbrecher.

 
ActSeven ActSeven Vielen Dank für den Tip und die Verlinkung. Dennoch wäre es besser, wenn die Scooter einfach eine vernünftige Firmware hätten.
Hier schreiben ja sogar Leute im Forum, dass man sich immer per App verbinden soll beim Fahren, damit sich niemand anders verbinden kann. Das finde ich schon alles schräg.
 
ActSeven ActSeven Vielen Dank für den Tip und die Verlinkung. Dennoch wäre es besser, wenn die Scooter einfach eine vernünftige Firmware hätten.
Hier schreiben ja sogar Leute im Forum, dass man sich immer per App verbinden soll beim Fahren, damit sich niemand anders verbinden kann. Das finde ich schon alles schräg.
Das betrifft jedoch nur die Ninebots.
Bei Xiaomi Scootern kann sich solange ich das Pairing nicht bestätige gar keiner verbinden wäre ich fahre.
Die meisten nutzen zudem während der Fahrt sowieso ein Smartphone mit Handyhalterung am Lenker und diversen Apps (M365 Dashboart; Scootbatt; M365 Tools etc..) um Daten wie Geschw; GPS Geschw; Verbrauch; Akkustand; Streckenaufzeichnung usw. angezeigt zu bekommen bzw. zu speichern.
 
Der Nachteil an den verlinkten Lösungen ist, dass man dadurch sicher die Garantie verliert. Und es ist auch irgendwie ordentlich peinlich für Xiaomi, dass in einem Zeitalter in dem alles "Smart" und mit App sein soll, Leute tatsächlich ein manuelles Zündschloss nachrüsten müssen.
 
ActSeven ActSeven In dem Paper (dass direkt einen Exploit mitliefert) wird ein Protokoll-Downgrade Angriff durchgeführt, der das Pressen des Buttons zum Pairen überflüssig macht.

Also wenn ihr das Paper mal durchgeht, seht ihr, dass es schlimmer ist als eh schon gedacht.
Post automatically merged:

T tekashi6ix9ine Oh ja auch ein guter Tipp zumindest was das Flashen angeht.
 
Der Nachteil an den verlinkten Lösungen ist, dass man dadurch sicher die Garantie verliert
mag für die Schlüsselschalter Lösung gelten. Aber dann kauft man halt einen Vorbau und machts an dem.
Bei der Funklösung wird ja nur zwischen vorhandene Steckverbindung ein Modul gesteckt,

Und eine (Um)Programmierung der BLE, die nicht vom Hersteller stammt/ausgerollt wird? Ist doch auch die Garantie im Zweifelsfall futsch.
 
  • Hilfreich!
Reaktionen: Olli_69
Der Nachteil an den verlinkten Lösungen ist, dass man dadurch sicher die Garantie verliert. Und es ist auch irgendwie ordentlich peinlich für Xiaomi, dass in einem Zeitalter in dem alles "Smart" und mit App sein soll, Leute tatsächlich ein manuelles Zündschloss nachrüsten müssen.
Ach neeeee.... und du denkst, wenn du die Hersteller- Software (und dazu zählt auch die BLE) manipulierst- ob zum schlechten oder guten spielt keine Rolle- hast du noch Garantie, geschweige denn eine ABE??

Diskussionen zu einer Pin-Eingabe gibt es mehrere im Forum, wurde ausgiebig getestet und wieder verworfen - die meisten wollen es auch einfach nicht.
 
  • Hilfreich!
Reaktionen: Rodcruiser
@Roadcruiser Aber bei Softwareanpassungen, kann man ja einfach vor dem Einschicken Stock flashen. Ich glaube die Boards dort sind nicht so ambitioniert, dass beim connecten vom ST-Link programmer eine HW-Fuse durchgebrannt wird oder so eine Lösung, die dem Hersteller dauerhaft sichtbar macht, dass die Elektronik manipuliert wurde.
Post automatically merged:

Olli_69 Olli_69 Hast du einen Link für die PIN-Eingabe-Lösung? Gibt es dafür eine funktionierende Implementierung?
 
Aber bei Softwareanpassungen, kann man ja einfach vor dem Einschicken Stock flashen.
aha, dann schau mal wieviele Berichte von Usern es gibt, die den Scooter einschicken mußten, weil zB Elektrikproblem oder defektem Akku und dann Garantie wg "Softwaremanipulation" abgelehnt wurde.
Es ist auch nicht gesichert, dass der Hersteller ggf einen Flash, auch wenn rückgngig gemacht wurde, erkennen kann.
 
Wäre interessant voran sie das erkennen. Also ob die Betroffenen da am Dashbord gelötet haben oder soetwas. Oder ob da doch irgendwelche Maßnahmen in der Elektronik sind. Aber das ist ja hier ot.
 
mag für die Schlüsselschalter Lösung gelten. Aber dann kauft man halt einen Vorbau und machts an dem.
Bei der Funklösung wird ja nur zwischen vorhandene Steckverbindung ein Modul gesteckt,

Und eine (Um)Programmierung der BLE, die nicht vom Hersteller stammt/ausgerollt wird? Ist doch auch die Garantie im Zweifelsfall futsch.
Genau, so wie ich es in Kombi mit einem Drehgasgriff habe.
Gibt auch nur das Schloss (ohne Drehgasgriff).


https://rollerplausch.com/threads/u...g30d-g30d2-xiaomi-nachruesten.6949/post-87000