Samsung Galaxy S4 schon gehackt

Kaum einen Monat nach Verkaufsstart hat der Sicherheitsexperte Dan Rosenberg einen Design-Fehler im Secure-Boot-Konzept von Samsung ausgemacht und kann nun auch auf verriegelten Smartphones beliebige Kernel booten.

In Pocket speichern vorlesen Druckansicht 137 Kommentare lesen
Lesezeit: 2 Min.
Von
  • Jürgen Schmidt

Seit etwa einem Monat ist das Samsung Galaxy S4 im Handel. In der Zwischenzeit wurde es schon 10 Millionen Mal verkauft – und mindestens ein Mal gehackt. Der Sicherheitsexperte Dan Rosenberg hat einen trivialen Design-Fehler in Samsungs Secure-Boot-Konzept ausgemacht, mit dem er beliebige Betriebssysteme laden kann.

Die meisten S4-Modelle sind unverriegelt und der Besitzer kann in Eigenregie etwa eine eigene Android-Version nach seinem Gusto installieren. Doch zumindest in den USA verkaufen AT&T und Verizon angepasste Samsung Galaxy S4 Modelle, die dessen Secure-Boot-Funktion nutzen, um nur vom Hersteller digital signierte Kernel zu laden. Dabei überprüft der Boot-Loader, ob das zu startende System eine gültige digitale Signatur (RSA-2048, SHA1) aufweist. Nach aktuellem Stand der Technik kann man weder RSA mit 2048-Bit-Schlüssel knacken, noch einen Kernel erstellen, der einen vorgegebenen SHA1-Hashwert erzeugt. (Das liegt nicht daran, dass der dann auch noch "funktionieren" muss; das entscheidende Stichwort ist Pre-Image-Attacken – die gibt es nämlich immer noch nicht).

Rosenberg musste für seinen Hack aber auch gar keine Krypto-Funktionen knacken. Bei seinem Reverse Engeneering hat er entdeckt, dass der Bootloader den zu prüfenden Kernel an eine Adresse im Speicher lädt, die er vorgeben kann. Konkret kann er sie so wählen, dass er damit die Funktion check_sig() des Boot-Loaders überschreibt, bevor dieser sie aufruft. Die soll eigentlich den erwähnten Signatur-Check durchführen und so manipulierte Kernel erkennen. Statt dessen räumt sie nach Rosenbergs geschickter Manipulation im Speicher ein wenig auf und meldet dann zurück "Alles Okay". (ju)