15Jul
Rooting vaš Android uređaj daje vam pristup širokom rasponu aplikacija i dublji pristup sustavu Android. No neke aplikacije poput Googleovog Android Paya neće raditi na sve na uređaju ukorijenjenom.
Google koristi nešto što se zove SafetyNet kako bi otkrilo je li vaš uređaj ukorijenjen ili ne i blokira pristup tim značajkama. Google nije jedini, niti jedan od mnogih aplikacija treće strane neće raditi na ukorijenjenim Android uređajima, iako mogu provjeriti prisutnost korijena na druge načine.
SafetyNet: Kako Google zna da ste ukorili Android telefon
Uređaji Android nude "SafetyNet API", koji je dio slanja usluga usluge Google Play instaliran na Android uređajima koji su odobreni od strane Googlea. Ovaj API "omogućuje pristup Googleovim uslugama koje vam pomažu u procjeni zdravlja i sigurnosti uređaja Android", prema Googleu. Ako ste razvojni programer za Android, možete nazvati ovaj API u vašoj aplikaciji da biste provjerili je li uređaj na kojemu se trčanje neovlašteno izmijenio.
Ovaj SafetyNet API je dizajniran za provjeru je li uređaj bio neovlašteno - bez obzira na to je li korisnik ukorijenjen, ima prilagođenu ROM ili je zaraženo niskom razinom zlonamjernog softvera, na primjer.
Uređaji koji se isporučuju s Googleovom Trgovinom Play i drugim instaliranim aplikacijama moraju proći Googleov "Suite za testiranje kompatibilnosti" za Android. Rooting uređaj ili instaliranje prilagođene ROM-a sprječava da uređaj bude "CTS Compatible".Ovo je način na koji SafetyNet API može znati jeste li ukorijenjeni - to samo provjerava CTS kompatibilnost. Slično tome, ako dobijete Android uređaj koji nikada nije došao s Googleovim aplikacijama - poput one od onih 20 tableta koje se isporučuju izravno iz tvornice u Kini - uopće se ne smatra "kompatibilnim s CTS-om", čak i ako niste ukorijenili,
Da biste dobili ove informacije, usluga Google Play preuzima program pod nazivom "snet" i pokreće je u pozadini na vašem uređaju. Program prikuplja podatke s vašeg uređaja i redovito šalje Googleu. Google upotrebljava te informacije za različite svrhe, od dobivanja slike šireg ekološkog sustava Android kako bi utvrdio je li neovlašten ili neopterećen softver softvera vašeg uređaja. Google ne objašnjava točno što traži, ali vjerojatno provjerava je li vaša sistemska particicija izmijenjena iz tvorničkog stanja.
Sigurnosni status uređaja možete provjeriti tako da preuzmete aplikaciju kao što je SafetyNet Helper sample ili SafetyNet igralište. Aplikacija će zatražiti Googleovu uslugu SafetyNet o statusu vašeg uređaja i reći vam odgovor koji dobiva od Googleovog poslužitelja.
Za više tehničkih pojedinosti pročitajte ovaj blog post tvrtke John Kozyrakis, tehničkog stratega tvrtke Cigital. Ušao je u SafetyNet i objašnjava više o tome kako to funkcionira.
Odnosi se na aplikaciju
SafetyNet je opcionalan za razvojne programere aplikacija, a razvojni programeri aplikacija mogu ga koristiti ili ne. SafetyNet sprečava samo aplikaciju da funkcionira ako razvojni programer aplikacije ne želi da funkcionira na korjenitim uređajima.
Većina aplikacija uopće neće provjeriti SafetyNet API.Čak i aplikacija koja provjerava SafetyNet API - poput gore navedenih testnih aplikacija - neće prestati raditi ako dobiju loš odgovor. Razvojni programer aplikacije mora provjeriti SafetyNet API i učiniti aplikaciju odbiti funkcionirati ako uči da je vaš softver uređaja izmijenjen. Googleova aplikacija Android Pay dobar je primjer toga u akciji.
Android Pay neće raditi na ukradenim uređajima
Googleov Android Pay mobilno rješenje za plaćanje uopće ne funkcionira na ukorijenjenim Android uređajima. Pokušajte ga pokrenuti i vidjet ćete poruku koja kaže da se "Android Pay ne može upotrebljavati. Google ne može potvrditi da je vaš uređaj ili softver koji se pokreće na njemu kompatibilan s Androidom. "
Ne radi se samo o ukorjenjivanju, naravno, pokretanje prilagođenog ROM-a također bi vas spriječilo u tom zahtjevu. SafetyNet API će tvrditi da nije "kompatibilan s Androidom" ako koristite prilagođeni ROM s kojim uređaj nije došao.
Ne zaboravite, ovo ne samo da otkriva korijenje. Ako je vaš uređaj zaražen nekim zlonamjernim softverom na razini sustava s mogućnošću špijuniranja aplikacije Android Pay i drugih aplikacija, SafetyNet API sprečava funkcioniranje usluge Android Pay, što je dobro.
Rooting vaš uređaj razbija normalni sigurnosni model Androida. Android Pay obično štiti vaše podatke o plaćanju pomoću značajki za pješčanu bilješku Androida, no aplikacije mogu izaći iz pješčanika na usluzi s korijenom. Google nema načina da zna koliko će sigurni Android Pay biti na određenom uređaju ako je ukorijenjen ili pokrenuo nepoznatu prilagođenu ROM, pa je blokiraju. Inženjer Android Pay objasnio je problem na forumu za razvojne programere XDA ako vas ne zanima pročitati više.
Druge aplikacije na putu mogu otkriti korijen
SafetyNet je samo jedan od načina da aplikacija može provjeriti funkcionira li se na korijenskom uređaju. Na primjer, uređaji Samsung uključuju sigurnosni sustav pod nazivom KNOX.Ako korigirate uređaj, KNOX sigurnost je prekinuta. Samsung Pay, Samsungova mobilna aplikacija za plaćanje, odbiti će raditi na ukorijenjenim uređajima. Samsung koristi KNOX za to, ali jednako dobro može koristiti i SafetyNet.
Slično tome, mnogo aplikacija treće strane blokirat će vašu upotrebu, a ne sve one koriste SafetyNet. Oni mogu samo provjeriti prisutnost poznatih aplikacija i procesa na uređaju na uređaju.
Teško je pronaći up-to-date popis aplikacija koje ne funkcioniraju kada je uređaj ukorijenjen. Međutim, RootCloak pruža nekoliko popisa. Ti popisi mogu biti zastarjeli, ali one su najbolje one koje možemo pronaći. Mnogi su bankarski i drugi mobilni aplikacije za mobilne uređaje koji blokiraju pristup na telefonima ukorijenjenima kako bi zaštitili vaše bankovne podatke od drugih aplikacija. Aplikacije za usluge streaminga videozapisa također mogu odbiti funkcionirati na korijenskom uređaju kao neka vrsta mjere DRM-a, pokušavajući vas spriječiti snimanje zaštićenog videosadržaja.
Neke se aplikacije mogu zanemariti
Google je igrao igru mačke i miša s SafetyNetom, ažurirajući ga u nastojanju da ostane ispred ljudi koji su ga zaokružili. Na primjer, razvojni programer Android Chainfire stvorio je novu metodu ukorjenjivanja Android uređaja bez izmjene particije sustava, poznatog pod nazivom "korijen bez sustava".Sigurnosna mreža u početku nije otkrila takve uređaje kao što je bila neovlaštena, a Android Pay je radio - ali SafetyNet je konačno ažuriran kako bi otkrio ovu novu metodu korijenja. To znači da Android Pay više ne funkcionira zajedno s korijenom bez sustava.
Ovisno o tome kako aplikacija provjerava pristup rootu, možda ćete ga moći izigrati. Na primjer, navodno postoje metode za uklanjanje nekih Samsung uređaja bez zaustavljanja KNOX sigurnosti, što će vam omogućiti nastavak upotrebe Samsung Pay.
U slučaju aplikacija koje samo provjeravaju korijenske aplikacije na vašem sustavu, postoji Xposed okvirni modul pod nazivom RootCloak koji vam navodno dopušta da ih na bilo koji način trik. Ovo funkcionira s aplikacijama kao što su DirecTV GenieGo, Best Buy CinemaNow i Filmovi Flixster, koji obično ne funkcioniraju na uređajima ukorijenjenim. Međutim, ako su ove aplikacije ažurirane za upotrebu Googleovog SafetyNeta, ne bi se tako tako lako trikati na taj način.
Većina aplikacija i dalje će raditi normalno nakon ukrštanja uređaja. Mobilne aplikacije za plaćanje velika su iznimka, kao i neke druge bankovne i financijske aplikacije. Plaćene usluge prijenosa videozapisa ponekad vas pokušavaju blokirati da gledate i svoje videozapise.
Ako vam potrebna aplikacija ne funkcionira na vašem uređaju ukorijenjenom, možete uvijek iskopčati uređaj da ga upotrebljava. Aplikacija treba raditi nakon što vratite uređaj na njegovo sigurno, tvorničko stanje.
Image Credit: Danny Choo na Flickr