Naprave Qualcomm imajo način EDL, za katerega se je izkazalo, da ga je mogoče izkoristiti, če imate prava orodja, ki so jih izdali proizvajalci originalne opreme.
Naprave z nabori čipov Qualcomm imajo a primary Bootloader (PBL), ki običajno zažene sistem Android, vsebuje pa tudi alternativni način zagona, znan kot način EDL. Način EDL je Qualcommov Ezdružitev Dlastna obremenitev Mode in omogoča an Ooriginal Eoprema Mproizvajalca (OEM), da vsili programsko opremo flash v napravi. Tega ni mogoče spreminjati (način samo za branje) in ima popoln nadzor nad pomnilnikom naprave. Številni proizvajalci originalne opreme, vključno z OnePlus in Xiaomi, so izdali orodja (znana kot programerji), ki uporabljajo način EDL in protokol, znan kot Firehose za odstranitev opeke naprave, medtem ko so druga orodja podjetij, kot je Nokia, pricurljala. Firehose lahko uporablja številne ukaze za flash naprave, skupaj z zmožnostjo pregleda podatkov v pomnilniku naprave. Varnostni raziskovalci Roee Hay (@roeehay) in
Noam Hadad od Aleph Research so s tem načinom odkrili kritične ranljivosti naprave, ki napadalcu dejansko odobrijo popoln dostop do naprave.Pomembno je omeniti, da ta izkoriščanje zahteva fizični dostop do naprave, vendar je še vedno izjemno nevarno in ga verjetno ni mogoče popraviti. Napadalci so uporabili raven dostopa, dodeljeno načinu EDL, da bi obšli varni zagon na Nokii 6 in premagali verigo zaupanja in pridobitev popolne izvedbe kode v vsakem delu zagonskega zaporedja, vključno z operacijskim sistemom Android sama. Teoretizirajo, da deluje na enak način na drugih napravah, raziskovalcem pa je tudi uspelo odkleniti in rootati več naprav Xiaomi brez izgube podatkov.
Na katere naprave vpliva to izkoriščanje?
Prvič, naprave, ki so prizadete.
Seznam prizadetih naprav.
- LG G4
- Nokia 6 (d1c)
- Nokia 5
- Nexus 6 (šamu)
- Nexus 6P (ribič)
- Moto G4 Plus
- OnePlus 5 (cheeseburger)
- OnePlus 3T
- OnePlus 3
- OnePlus 2
- OnePlus X
- OnePlus One
- ZTE Axon 7
- ZUK Z1
- ZUK Z2
- Xiaomi Note 5A (ugglite)
- Xiaomi Note 5 Prime (ugg)
- Xiaomi Note 4 (mido)
- Xiaomi Note 3 (jason)
- Xiaomi Note 2 (škorpijon)
- Xiaomi Mix (litij)
- Xiaomi Mix 2 (chiron)
- Xiaomi Mi 6 (sagit)
- Xiaomi Mi 5s (kozorog)
- Xiaomi Mi 5s Plus (natrij)
- Xiaomi Mi 5x (tiffany)
- Xiaomi Mi 5 (dvojček)
- Xiaomi Mi 3 (cancro)
- Xiaomi Mi A1 (tissot)
- Xiaomi Mi Max2 (kisik)
- Xiaomi Redmi Note 3 (kenzo)
- Xiaomi Redmi 5A (riva)
- Xiaomi Redmi 4A (rožnat)
Preberi več
Izkoriščanje telefona Android
Zagonsko zaporedje tipičnega telefona Android Qualcomm
Pomembno je, da najprej razumete zagonsko zaporedje tipične naprave Android, preden razložite, kako jo je mogoče izkoristiti. The Software Bootloader (SBL) je digitalno podpisan zagonski nalagalnik, katerega pristnost se preveri, preden se naloži v imem. imem je hitri pomnilnik na čipu, ki se uporablja za odpravljanje napak in DMA (dneposredno memory access) in je v lasti naborov čipov Qualcomm.
Nekatere naprave imajo eXnategljiv Bootloader (XBL) namesto SBL, vendar je postopek zagona skoraj enak. SBL ali XBL nato zažene ABOOT, ki implementira hitri zagon. Po tem se naloži tudi TrustZone (varnost na podlagi strojne opreme). TrustZone preveri pristnost ABOOT s pomočjo korenskega potrdila, ki temelji na strojni opremi. SBL (ali v nekaterih primerih XBL) je zasnovan tako, da zavrne nepravilno podpisan (ali nepodpisan) ABOOT.
Ko je pristnost potrjena, ABOOT preveri pristnost /boot in /recovery, preden zažene jedro Linuxa. Nekaj sistemskih priprav je opravljenih, nato pa se izvajanje kode prenese na jedro. ABOOT je splošno znan kot »Android Bootloader« in ko odklenemo zagonski nalagalnik naprave, onemogočimo to preverjanje pristnosti v ABOOT-u.
Dostop do načina EDL
Medtem ko imajo nekatere naprave preprosto kombinacijo strojne opreme (ali še huje, preprost lastniški ukaz za hitri zagon, ki je prisoten v mnogih naprave Xiaomi), druge, kot so naprave Nokia, morajo skrajšati zatiče, znane kot "testne točke", ki so prisotne na glavnem delu naprave. tabla. Pred varnostnim popravkom iz decembra 2017 je bilo mogoče preprosto zagnati »adb reboot edl« na številnih napravah (vključno z Nexusom 6 in 6P) in vstopiti v način EDL. To je bilo od takrat popravljeno.
Druge naprave lahko uporabljajo tudi tisto, kar je znano kot kabel "deep flash", ki je poseben kabel z določenimi nožicami v kratkem stiku, da pove sistemu, naj se namesto tega zažene v načinu EDL. Stare naprave Xiaomi lahko uporabljajo to metodo, skupaj z Nokia 5 in Nokia 6. Tudi druge naprave se bodo zagnale v načinu EDL, če ne uspejo preveriti SBL.
Uporaba načina EDL za pridobitev polnega dostopa na OnePlus 3/3T
Način EDL je mogoče uporabiti na več načinov v napravi, večinoma za odstranitev opeke naprav s prisilnim utripanjem. Kot je razloženo zgoraj, bi moralo biti teoretično varno za vsakogar, da dostopa do tega načina, saj je najslabši scenarij ta, da bo ABOOT zavrnil programsko opremo, ki ni uradno podpisana s strani proizvajalca. Čeprav je to res, je dejansko mogoče pridobiti popoln nadzor nad OnePlus 3 ali 3T in njegovimi datotekami v dokazu koncepta izkoriščanja, ki so ga pokazali raziskovalci.
To bo storjeno z dvema zelo nevarnima ukazoma, ki ju je OnePlus pustil dostopna v starejši različici ABOOT (Android zagonski nalagalnik), da odklenete zagonski nalagalnik naprave (brez opozorila, prikazanega uporabniku ob zagonu) in onemogočite dm_vernost. dm_verity je znan tudi kot preverjeni zagon in je del varnega zagonskega zaporedja v napravi Android. Ta dva ukaza sta naslednja.
fastboot oem disable_dm_verity
fastboot oem 4F500301/2
Upoštevajte spodnji preprost postopek v 4 korakih, ki uporablja protokol Firehose.
- Najprej zaženite napravo v načinu EDL. To je mogoče storiti prek adb na OxygenOS 5.0 ali nižjem ali z uporabo preproste kombinacije tipk strojne opreme.
- Prenesite staro sistemsko sliko spodaj OxygenOS 4.0.2.
- Flash aboot.bin prek firehose (ne pozabite, da aboot.bin implementira hitri zagon, kot smo že omenili)
- Zdaj boste lahko onemogočili varen zagon in odklenili zagonski nalagalnik brez brisanja naprave preprosto z uporabo dveh zgornjih ukazov za hitri zagon.
Če se spomnite, je bilo prej ugotovljeno, da je OnePlus pustil dva nevarna ukaza za hitri zagon pred skoraj enim letom, enega, ki je odklenil zagonski nalagalnik, in enega, ki je onemogočil varen zagon. Čeprav je res, da napadalec v napravo ne more namestiti zlonamerne programske opreme, oni lahko znižajte napravo imeti starejša, ranljiva programska oprema za napade. Napadalec lahko preprosto zažene zgornje ukaze za hitri zagon popoln dostop na napravo.
In to je to, zagonski nalagalnik je odklenjen, varni zagon je izklopljen in ni prav nobene izgube podatkov. Če bi napadalec želel narediti še korak dlje, bi lahko zagnal zlonamerno jedro po meri, ki omogoča korenski dostop do naprave, za katerega uporabnik ne bi nikoli vedel.
Firehose deluje prek protokola Qualcomm Sahara, ki sprejema programator s podpisom OEM in tako bi bil izveden zgornji napad. Ko je povezan z napravo, deluje kot SBL prek USB-ja. Večina programerjev uporablja Gasilna cev za komunikacijo s telefonom v načinu EDL, kar so raziskovalci izkoristili za popoln nadzor nad napravo. Raziskovalci so to uporabili tudi za odklenite napravo Xiaomi preprosto z utripanjem spremenjene slike ki je odklenil zagonski nalagalnik. Nato so zagnali jedro po meri, ki je omogočilo korenski dostop in zagnalo SELinux v permisivnem načinu ter ekstrahiralo sliko šifriranih uporabniških podatkov iz naprave.
Zaključek
Ni znano, zakaj proizvajalci originalne opreme izdajo te programerje podjetja Qualcomm. Programerji Nokie, LG, Motorola in Google so pricurljali, namesto da bi bili izdani, vendar je raziskovalcem uspelo prekiniti celotno verigo zaupanja na Nokii 6 in pridobiti popoln dostop do naprave s podobnimi metodami izkoriščanje. Prepričani so, da je napad mogoče prenesti na katero koli napravo, ki podpira te programerje. Če je mogoče, bi morali proizvajalci originalne opreme uporabljati varovalke qFuse strojne opreme, ki preprečujejo povrnitve programske opreme, tako da sprožijo, ko se strojna oprema naprave povrne nazaj, in lahko opozorijo uporabnika, da se je to zgodilo. Zainteresirani si lahko spodaj ogledajo celoten raziskovalni dokument in preberejo tudi celotno uporabo Nokie.
Vir: Aleph Research