Reverse Engineering von Xiaomi OTA-Updates, um unveröffentlichte Updates zu finden

XDA Senior Member duraaraa hat versucht, gefälschte OTA-Anfragen von Xiaomi-Geräten zu erstellen, um auf nächtliche Builds von MIUI zuzugreifen.

In einem Versuch, Zugang zu erhalten Xiaomi's Nightlies – die unveröffentlichten, hauseigenen Versionen von Xiaomis MIUI-Betriebssystem – XDA Senior Member duraaraa Reverse Engineering des Over-the-Air (OTA)-Update-Frameworks des in China ansässigen Unternehmens. Die beiden in Arbeit befindlichen Exploits zwingen Xiaomi-Geräte dazu, einen nächtlichen Build anstelle der neuesten kommerziellen Firmware herunterzuladen, was theoretisch möglich wäre auf handelsüblichen Geräten installiert, wenn (1) die OTA-Anwendung von MIUI rückentwickelt wurde und (2) die Test-Builds mit denselben Schlüsseln wie die signiert wurden offizielle Builds.

Methode 1: Erstellen einer Xiaomi OTA-Update-URL

Die einfachere der beiden Methoden besteht darin, auf die OTA-Update-URL zuzugreifen, die Anweisungen zum Herunterladen des Updates an das Clientgerät sendet. Diese URL zum Beispiel

, enthält Flags, die Xiaomis OTA-Update-App mitteilen, wo sich Version 7.9.21 von MIUI 9, einem internen Testbuild, befindet.

{"UserLevel":9,"LatestVersion":{"type":"rom","device":"chiron_global","name":"XM-MIMIX2-GLOBAL 7.9.21","description":"MIUI\u5347\u7ea7","descriptionUrl":"http:\/\/update.miui.com\/updates\/updateinfo\/7.9.21\/chiron_global_0_7.9.21_4494ccfcc506caca9904efb74b489e0a.html","md5":"7f94ca393fae77c6171e6c7a551bea2e","filename":"miui_MIMIX2Global_7.9.21_7f94ca393f_7.1.zip","filesize":"1.6G","codebase":"7.1","version":"7.9.21","branch":"X"},"UpdateList":[{"type":"rom","device":"chiron_global","name":"XM-MIMIX2-GLOBAL 7.9.21","description":"","descriptionUrl":"http:\/\/update.miui.com\/updates\/updateinfo\/7.9.21\/chiron_global_0_7.9.21_4494ccfcc506caca9904efb74b489e0a.html","md5":"7f94ca393fae77c6171e6c7a551bea2e","filename":"miui_MIMIX2Global_7.9.21_7f94ca393f_7.1.zip","filesize":"1.6G","codebase":"7.1","version":"7.9.21","branch":"X"}],"IncrementalUpdateList":[],"MirrorList":["http:\/\/bigota.d.miui.com"],"Signup":{"version":"","total":"","rank":""},"AuthResult":0,"ForceUpdate":0

Als kürzlich in China mit der Einführung einer stabilen Version begonnen wurde – 8.5.7.0.NDECNEF – duraara nutzte den Exploit, um die Upgrade-URL der Firmware zu finden.

Methode 2: Erstellen einer Xiaomi OTA-Update-Anfrage

Die zweite, etwas komplexere Methode besteht darin, den Entschlüsselungsschlüssel des Xiaomi-Update-Servers abzugreifen. Dazu ist es erforderlich, die Updater-Anwendung zu dekompilieren und Xposed zum Erfassen und Analysieren des Netzwerkverkehrs zu verwenden.

Wenn der Entschlüsselungsschlüssel („miuiotavalided11“ zum Beispiel) vorhanden ist, könnte theoretisch jeder Benutzer eine gefälschte Upgrade-Anfrage generieren.

Erzwingen von Xiaomi OTA-Upgrades

duraaraa hat die beiden Methoden verwendet, um unveröffentlichte MIUI-Builds auf den Servern von Xiaomi zu finden, hat es aber noch nicht geschafft, Nightly herunterzuladen und auf einem Xiaomi-Gerät zu installieren. Er bittet Mitglieder der Entwicklungsgemeinschaft, sich an den Bemühungen zu beteiligen.

Um über neue Entwicklungen auf dem Laufenden zu bleiben und/oder Ihr Fachwissen zur Verfügung zu stellen, schauen Sie sich den Thread „XDA-Foren“ an.


Diskussion über Reverse Engineering von Xiaomi OTAs