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.
Uređaji Android nude "SafetyNet API", koji je dio slanja usluga usluge Google Play instaliran na Android uređajima koji su odobreni za Google. 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 osmišljen je za provjeru je li uređaj bio neovlašten - bez obzira na to je li korisnik ukorijenio, 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 kompatibilnost" 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 ,
Za dobivanje tih informacija usluge 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.
Možete provjeriti status SafetyNet uređaja tako da preuzmete aplikaciju kao što je SafetyNet Helper Sample ili SafetyNet Playground. 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 detalja, 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.
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.
Googleova Android Pay mobilna rješenja za plaćanje uopće ne funkcioniraju 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 izvodi na njemu kompatibilan s Androidom. "
Ne radi se samo o ukorjenjivanju, naravno, pokretanje prilagođene ROM-a također bi vas spriječilo u ovom zahtjevu. SafetyNet API će tvrditi da nije "kompatibilan s Androidom" ako koristite prilagođeni ROM s kojim uređaj nije došao.
Zapamtite, to ne samo da otkriva korijenje. Ako je vaš uređaj zaražen nekim zlonamjernim softverom na razini sustava s mogućnošću da špijunira Android Pay i druge aplikacije, SafetyNet API sprečava funkcioniranje usluge Android Pay, što je dobro.
Rooting vašeg uređaja razbija Androidov standardni sigurnosni model. 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 ukorijenjenom uređaju. 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.
SafetyNet je samo jedan od načina da aplikacija može provjeriti funkcionira li na uređaju ukorijenjenom. 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.
Google je igrao igru mačke i miša s SafetyNetom, stalno ga ažurirajući u pokušaju 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 ga možete 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 za streaming 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.
Slikovni kredit: Danny Choo na Flickr