Reverse Engineering Xiaomi OTA-opdateringer for at finde ikke-udgivne opdateringer

XDA Senior Member duraaraa har forsøgt at lave falske OTA-anmodninger fra Xiaomi-enheder for at få adgang til natlige builds af MIUI.

I et forsøg på at få adgang til Xiaomi's nightlies - de uudgivne, interne versioner af Xiaomis MIUI-operativsystem - XDA Senior Member duraaraa reverse-engineer det Kina-baserede selskabs over-the-air (OTA) opdateringsramme. De to igangværende udnyttelser tvinger Xiaomi-enheder til at trække en natlig build i stedet for den nyeste kommercielle firmware, hvilket i teorien kunne være installeret på hyldeenheder, hvis (1) MIUI's OTA-applikation var omvendt manipuleret, og (2) testbuildene blev signeret med de samme nøgler som officielle byggerier.

Metode 1: Udarbejdelse af en Xiaomi OTA Update URL

Den simpleste af de to metoder involverer adgang til OTA-opdaterings-URL'en, som sender instruktioner til klientenheden om, hvordan man downloader opdateringen. Denne URL f.eks, indeholder flag, der fortæller Xiaomis OTA-opdateringsapp, hvor man kan finde version 7.9.21 af MIUI 9, en intern testbuild.

{"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

Da en stabil udgivelse begyndte at rulle ud i Kina for nylig -- 8.5.7.0.NDECNEF -- duraara brugte udnyttelsen til at finde firmwarens opgraderings-URL.

Metode 2: Udarbejdelse af en Xiaomi OTA-opdateringsanmodning

Den anden metode, som er lidt mere kompleks, involverer at få fat i Xiaomi-opdateringsserverens dekrypteringsnøgle. Det kræver, at opdateringsprogrammet dekompileres og Xposed bruges til at fange og analysere netværkstrafik.

Når dekrypteringsnøglen ("miuiotavalided11", for eksempel) er på plads, kan enhver bruger i teorien generere en falsk opgraderingsanmodning.

Tvinger Xiaomi OTA-opgraderinger

duraaraa brugte de to metoder til at finde uudgivne MIUI-builds på Xiaomis servere, men det er endnu ikke lykkedes at downloade og installere en nightly på en Xiaomi-enhed. Han beder medlemmer af udviklingssamfundet om at deltage i indsatsen.

For at holde styr på nye udviklinger og/eller frivillig din ekspertise, tjek XDA Forums-tråden.


Diskussion om reverse engineering Xiaomi OTA'er