Vsi pametni telefoni in tablični računalniki Xiaomi bodo imeli omogočeno zaščito proti prevračanju. Kaj je to in kako preprečite, da bi vaša naprava zaradi tega pokvarila?
V juliju je Xiaomi razvalja MIUI 10 Global Beta 8.7.5 za osem naprav Xiaomi. Ko so uporabniki namestili posodobitev na svoj Xiaomi Redmi Note 5 Pro, so nevede utripala zgradba z vključeno zaščito proti prevračanju. Uporabniki, ki jim MIUI 10 Global Beta ni bila všeč, so bili neprijetno presenečeni, ko so poskušali znova namestiti najnovejši MIUI 9 Global Stable ROM: njihovi telefoni so bili zaklenjeni! To ni bila vrsta opeke, ki bi jo lahko popravili z obnovitvijo varnostne kopije TWRP, utripanjem novega ROM-a ali uporabo MiFlash za obnovitev na tovarniško sliko. To je trda, nepopravljiva opeka, ki zahteva uporabo načina EDL za popravilo. Toda način EDL ni dostopen, če nimate pooblaščenega računa, zato številni uporabniki niso mogli popraviti svojega telefona, razen če ga pošljejo pooblaščenemu servisnemu centru ali plačajo za uporabo računa nekoga pri EDL dostop. V tem članku vam bomo razložili vse, kar morate vedeti o Xiaomijevi novi zaščiti proti prevračanju, da se boste lahko izognili zaklepanju svojega novega telefona.
Zakaj Xiaomi zahteva dolge čakalne dobe za odklepanje zagonskega nalagalnika, avtorizacijo EDL in zaščito proti povrnitvi?
Kitajski elektronski velikan Xiaomi je najbolj priljubljena blagovna znamka pametnih telefonov v Indiji, zahvaljujoč njihovemu širokemu izboru naprav nizkocenovnega in srednjega razreda. Tako kot Huawei tudi Xiaomi prodaja ogromno pametnih telefonov na domačem trgu Kitajske. Veliko teh naprav se nikoli ne prodaja zunaj Kitajske, vendar to ljudem ne preprečuje, da bi jih uvažali. Neuradni trgovci na drobno za izdelke Xiaomi so se pojavili na Aliexpressu, Gearbestu in številnih drugih spletnih mestih, kar vsem zunaj Kitajske omogoča nakup najnovejših izdelkov Xiaomi. To je za podjetje predstavljalo izziv, saj programska oprema, ki jo pošiljajo na svoje kitajske naprave, imenovana »MIUI Kitajska,« ne vsebuje storitev Google Play, trgovine Google Play ali jezikov, ki niso angleščina oz Mandarin. Tako kdorkoli uvozi napravo Xiaomi iz Kitajske, ne bi smel dobiti Googlovih aplikacij in storitev izven škatle.
Vendar pa so trgovci na drobno tretjih oseb našli način, kako se temu izogniti, da bi lahko prepričali stranke, da prodajajo naprave Xiaomi z "uradnim" MIUI Global ROM. Trgovci na drobno bi kupovali naprave Xiaomi na veliko, odklepali zagonski nalagalnik, sami spreminjali programsko opremo ali bliskavico po meri ROM, kot je Xiaomi.eu (neuradni ROM-i, ki temeljijo na MIUI China, vendar z več jeziki in funkcijami), in nato prodajte napravo. Večina potrošnikov nikakor ne bi vedela, da uporabljajo neuradno/spremenjeno programsko opremo, in bi namesto tega krivili Xiaomi za pomanjkanje posodobitev ali napake, na katere naletijo. Še huje, nekateri trgovci namerno združijo zlonamerno ali oglaševalsko programsko opremo, da bi lahko zaslužili nekaj dodatnega denarja. Ta praksa je aktivno škodila ugledu Xiaomi, saj so bili tehnični ocenjevalci in potrošniki ujeti v sheme teh neuradnih trgovcev na drobno, zato so morali najti način, kako preprečiti sumljivim trgovcem na drobno pri prodaji spremenjenih naprav v razsutem stanju.
Ena od rešitev je popolna blokada odklepanja zagonskega nalagalnika, kar je a drastična poteza, ki jo je nedavno sprejel Huawei. Zaradi uspeha svoje znamke med navdušenci Xiaomi še ni blokiral odklepanja zagonskega nalagalnika. Namesto tega so uvedli nekaj ovir za zaščito uporabnikov pred dejanji zlonamernih trgovcev tretjih oseb.
Čakalni časi za odklepanje zagonskega nalagalnika
Najprej so implementirali čakalno dobo za odklepanje zagonskega nalagalnika. Naprave Xiaomi, razen Xiaomi Mi A1, Xiaomi Mi A2 in Xiaomi Mi A2 Lite, ki poganjajo standardni Android v okviru programa Android One zahtevajte uporabo Xiaomijevega lastniškega orodja Mi Unlock za odklepanje zagonski nalagalnik. Po pošiljanju vaše zahteve za odklepanje zagonskega nalagalnika vas Mi Unlock prisili, da počakate, preden potrdi vašo zahtevo in odklene zagonski nalagalnik. Čakalna doba je bila 3 dni, nato pa se je v začetku leta 2018 povečala na 15 dni, v zadnjem času pa se je čakalna doba podaljšala na 30 oz. kar 60 dni v nekaterih primerih. (Nova podznamka Xiaomi, Poco, znižali čakalno dobo do 3 dni po prejemu povratne informacije od skupnosti, čeprav skoraj vsi drugi morajo še dolgo čakati.) Dodajanje čakalne dobe procesu odklepanja zagonskega nalagalnika je učinkovito upočasnilo delovanje trgovcev tretjih oseb, vendar je prav tako razumljivo moteče za navdušence, ki želijo odkleniti zagonski nalagalnik za rootanje svoje naprave, flash ROM-e po meri in flash po meri jedrca.
Pooblastilo EDL
Nato je podjetje začelo zaklepati način EDL na svojih napravah. EDL pomeni Emergency Download Mode in je alternativni zagonski način na vseh napravah Qualcomm, ki se običajno uporablja za odstranitev opeke vaše naprave. Če želite uporabljati način EDL, morate najti tako imenovani "programer", ki ga je OEM (Xiaomi) pooblastil za uporabo v vaši napravi. Način EDL je zelo močan in zelo nizka raven, servisni centri pa ga redno uporabljajo za popravilo naprav. Vendar se je način EDL pogosto uporabljal tudi za bliskanje uradnih in spremenjenih globalnih ROM-ov MIUI na kitajskih napravah Xiaomi brez odklepanja zagonskega nalagalnika. V bistvu je način EDL postal še en način, s katerim so trgovci tretjih oseb lahko obšli Xiaomi. Xiaomi ne želi, da potrošniki kupujejo kitajske različice njihove strojne opreme z nameščenimi globalnimi ROM-i, zato so naredili dve stvari: Onemogočili so zagon globalnega ROM-a, če naprava ni globalna različica (z opozorilnim sporočilom »Tega MIUI ni mogoče namestiti v to napravo«) in je narejena tako, da načina EDL ni mogoče uporabljati, razen če imate pooblaščen Mi račun.
Nadgradnja: Imamo več podrobnosti o nedavnih omejitvah Xiaomi glede utripanja različice MIUI zunaj regije. Če razmišljate o uvozu pametnega telefona ali tabličnega računalnika Xiaomi, bi res morali preberite ta članek, da boste varni!
Zaščita proti prevračanju
Končno so v najnovejše različice MIUI za najnovejše naprave Xiaomi implementirali zaščito proti povrnitvi. Morda ste že slišali za zaščito proti prevračanju. Google dodano podporo za funkcijo v sistemu Android 8.0 Oreo in postalo obvezno za naprave, ki se zaženejo s sistemom Android Pie. Googlova zaščita pred povrnitvijo je funkcija Android Verified Boot 2.0 (znana tudi kot Verified Boot) in prepreči zagon naprave, če zazna, da je bila naprava posodobljena na starejšo, neodobreno programsko opremo graditi. Zaščita proti povrnitvi je potrebna, da preprečite napadalcem nalaganje starejše programske opreme v napravo, ki je dovzetna za izkoriščanje. Največja razlika med Googlovo in Xiaomijevo izvedbo je v tem, da je Googlova zaščita pred povrnitvijo onemogočena, če odklenete zagonski nalagalnik, medtem ko Xiaomijeve zaščite ni mogoče onemogočiti. Ko enkrat namestite gradnjo z omogočeno zaščito pred povrnitvijo na napravo Xiaomi, ni več poti nazaj. Na primer, zaščita proti povrnitvi je omogočena za Xiaomi Mi 8 in Xiaomi Redmi Note 5 Pro, začenši z MIUI 10 China 8.9.6 oziroma MIUI 10 Global Beta 8.7.5.
Zaščita proti povrnitvi bo preprečila nepooblaščenemu prodajalcu, da bi izkoristil izkoriščanja v starejših različicah MIUI, in tako zaščitila uporabnike pred izkoriščanjem. Vendar pa je mnoge ujela tudi nepripravljene, ker jo je Xiaomi uvedel v Redmi Note 5 Pro, ne da bi o tem predhodno obvestil uporabnike. Ker TWRP nima nobenih preverjanj, ki bi uporabnikom preprečila namestitev starejšega, nepooblaščenega MIUI različicah, je veliko ljudi pomotoma pokvarilo svoje naprave, ko so prešli z MIUI beta ROM na MIUI stabilen ROM. Vse trenutno podprte naprave Xiaomi bodo sčasoma dobile zaščito proti povrnitvi, zato je to izjemno pomembno da razumete, kako jo preveriti pred vrnitvijo na nižjo različico in kaj lahko storite, če je zaščita proti povrnitvi omogočeno.
Kako preveriti zaščito proti povrnitvi
Ko smo govorili o zaščiti proti povrnitvi, ki preprečuje napravi zagon starejše, nevarne programske opreme, smo rekli, da Verified Boot »zazna« prisotnost starejše programske opreme. To zaznavanje deluje tako, da ima Verified Boot indeks povrnitve, ki se primerja z indeksom povrnitve slik, ki bodo nameščene. Glede na primerjavo indeksov povrnitve se bo zgodilo naslednje:
- Če je trenutni indeks povrnitve nazaj manj kot indeks povrnitve nazaj v slikah, ki jih želite utripati, nato pa slike bodo utripale in trenutni indeks povrnitve se bo povečal da se ujema z novim indeksom povrnitve nazaj.
- Če je trenutni indeks povrnitve nazaj enaka na indeks povrnitve nazaj v slikah, ki jih želite prenesti, nato pa na slike bodo utripale in indeks povrnitve se ne bo spremenil.
- Če je trenutni indeks povrnitve nazaj večji kot indeks povrnitve nazaj v slikah, ki jih želite utripati, nato pa slike bodo zavrnjene če ste utripanje prek hitrega zagona ali Mi Flash. (TWRP ne preveri indeksov povrnitve pred utripanjem, zato so bile skoraj vse opeke rezultat znižanja prek TWRP.)
Zdaj, ko bolje razumete indeks povrnitve nazaj, tukaj je opisano, kako dejansko preverite trenutni indeks povrnitve v vaši napravi in sliko, ki jo želite preliti.
Kako najti trenutni indeks povrnitve
- Znova zaženite v način hitrega zagona
- Vnesite naslednji ukaz:
fastboot getvar anti
- Če je izhod prazen, potem funkcija za preprečevanje povrnitve še ni bila omogočena. Če v izhodu dobite številko, je to vaš trenutni indeks povrnitve.
Kako najti indeks povrnitve slik
- Prenesite ROM »fastboot«, ki je enak obnovitvenemu ROM-u, ki ga poskušate namestiti. Obnovitveni ROM ima v imenu datoteke vedno tržno ime naprave in se konča z .zip. ROM za hitri zagon ima vedno kodno ime naprave v imenu datoteke in se konča na .tar.gz.
- Izvlecite flash-all.bat iz arhiva .tar.gz. 7Zip to zlahka obvlada.
- Odprite flash-all.bat v urejevalniku besedil, kot je Notepad++, in poiščite naslednjo vrstico:
set CURRENT_ANTI_VER=#
- Ta številka (#) je indeks za povrnitev različice MIUI, ki jo želite flash. Če je ta številka enaka ali večja od vašega trenutnega indeksa povrnitve, potem je varno bliskati v TWRP, Mi Flash itd. Če je ta številka manjša od vašega trenutnega indeksa za povrnitev nazaj, potem NE FLASH TEGA ROM-a PREK TWRP.
Izogibanje polni opeki, ki je ni mogoče obnoviti, bi moralo biti preprosto, če preverite indekse za povrnitev pred znižanjem prek TWRP. Da bi bili varni, raje uporabite Mi Flash ali fastboot, če želite bliskati MIUI ROM-e kot svoj telefon bootloader ima vgrajene zaščite, ki vam preprečujejo, da bi se vrnili na različico z nižjo stopnjo povrnitve kazalo.
Kako zaščita proti povrnitvi vpliva na prilagojene ROM-e?
Če nameravate nikoli več utripati MIUI, se za vas ne bo veliko spremenilo. Če želite flash AOSP ROM, kot je LineageOS, Pixel Experience, Resurrection Remix, Carbon ROM, ipd., boste še vedno morali odkleniti zagonski nalagalnik prek Mi Unlock, zagnati TWRP in nato flash program po meri ROM. Edina opazna razlika je, kako namestite TWRP prek hitrega zagona. Ker vam zaščita proti povrnitvi preprečuje utripanje slike TWRP, morate najprej utripati »navidezno« sliko. Navidezna slika je prazna datoteka, ki ne služi nobenemu drugemu namenu kot pošiljanju ukaza zagonskemu nalagalniku, tako da ve, da lahko pozneje sprejme druge bliskavice. (Če pogledate skript flash-all iz prejšnjega razdelka, Xiaomi to uradno počne.) Druga možnost je, sliko TWRP lahko »hitro zaženete«, premaknete sliko TWRP v pomnilnik naprave, nato pa sliko TWRP zaženete od znotraj. TWRP. Ne ponujam podrobnih navodil za nobeno metodo, saj vas pozivam, da obiščete forum svoje naprave za navodila za posamezne naprave.
XDA Forum Index za vse naprave Xiaomi
Vendar obstaja eno opozorilo. Ni načina, da bi vnaprej ugotovili, ali je bil indeks povrnitve povečan zaradi posodobljenega zagonskega nalagalnika, modema, prodajalca ali drugih particij. Upoštevajte, da ROM-i po meri običajno spremenijo samo sistemske in zagonske particije, a da bo vaša naprava resnično varna z najnovejšimi posodobitvami varnostnih popravkov, občasno je treba bliskati najnovejše slike, ki so v najnovejših uradnih MIUI ROM-ih. Razvijalci ROM-ov po meri bodo morali ročno preveriti indeks povrnitve teh različic, preden vam priporočijo posodobitev – tako boste vedeli, kdaj vas nova posodobitev zaklene na določene različice MIUI, če se nameravate vrniti na MIUI iz AOSP ROM.
Kaj naj naredim, če pokvarim svoj telefon?
Če ste svoj telefon pokvarili s sprožitvijo zaščite proti prevračanju, imate zelo malo možnosti.
- Napravo pošljite v popravilo pooblaščenemu servisnemu centru. Servisni centri imajo dostop do obnovitve vaše naprave prek načina EDL.
- Upam, da obstaja način, kako zaobiti avtorizacijo EDL (v bistvu izkoriščanje), tako da lahko ročno obnovite svojo napravo s pravim programatorjem.
Kot lahko vidite, blokiranje telefona s sprožitvijo zaščite pred prevračanjem ni šala. Resnično morate biti previdni, preden preklopite katero koli starejšo različico MIUI.
Pogosto zastavljena vprašanja (FAQ)
- Čemu se izognem, če ne želim zakleniti svoje naprave?
- Ne nameščajte različice MIUI z indeksom povrnitve, nižjim od trenutnega indeksa povrnitve vaše naprave. Za navodila glejte zgoraj.
- Ne nameščajte uradnega MIUI Global ROM-a na kitajsko strojno opremo Xiaomi z zaklenjenim zagonskim nalagalnikom.
- Ali lahko vseeno namestim ROM-e AOSP po meri, jedra, Magisk, Xposed, Substratum, ARISE in druge modifikacije?
- ja
- Ali lahko vseeno preklapljam med MIUI Global Stable, MIUI Global Developer, MIUI China Stable in MIUI China Developer?
- Da, vendar morate pred namestitvijo starejše različice MIUI primerjati indekse povrnitve.
- Zakaj Xiaomi ne onemogoči zaščite proti povrnitvi, ko odklenete zagonski nalagalnik?
- To je dobro vprašanje.
- Zakaj Xiaomi močno blokira vaš telefon, če se sproži zaščita proti povrnitvi, česar Google ne počne?
- To je še eno dobro vprašanje.
- Zakaj Xiaomi ne prikaže standardnega opozorila Verified Boot, da bi uporabniku pokazal, da je bila programska oprema spremenjena?
- Zanima vas ta odlična vprašanja! Z vso resnostjo je to lahko nekoliko upravičeno, saj je možno onemogočiti ta začetni zaslon - vsaj na nekaterih napravah.
Posebna zahvala priznanemu razvijalcu XDA yshalsager in član XDA Junior franzteska za njihovo pomoč pri tem članku!