Az Android-eszköz gyökérzetével szélesebb körű alkalmazásokhoz és mélyebb hozzáféréshez juthat az Android rendszerhez. De néhány alkalmazás - például A Google Android Pay –Gyökeres eszközön egyáltalán nem fog működni.
A Google a SafetyNet nevet használja annak észlelésére, hogy az eszköze gyökerezik-e vagy sem, és blokkolja a hozzáférést ezekhez a funkciókhoz. A Google sem az egyetlen - rengeteg harmadik féltől származó alkalmazás sem fog működni gyökeres Android-eszközök , bár más módon is ellenőrizhetik a gyökér jelenlétét.
SafetyNet: Honnan tudja a Google, hogy gyökeret vert az Android telefonjára
ÖSSZEFÜGGŐ: Unod már, hogy ellopják a hitelkártyádat? Használja az Apple Pay vagy az Android Pay alkalmazást
Az Android-eszközök „ SafetyNet API , Amely része a Google Play-szolgáltatások a Google által jóváhagyott Android-eszközökre telepítve. Ez az API „hozzáférést biztosít a Google szolgáltatásaihoz, amelyek segítenek felmérni egy Android-eszköz egészségét és biztonságát” - állítja a Google. Ha androidos fejlesztő vagy, felhívhatod ezt az API-t az alkalmazásodban, és ellenőrizheted, hogy az Ön által használt eszközt hamisították-e.
Ezt a SafetyNet API-t arra tervezték, hogy ellenőrizze, hogy egy eszközt hamisítottak-e - függetlenül attól, hogy egy felhasználó gyökerezte-e, egyéni ROM-ot futtat-e, vagy például alacsony szintű rosszindulatú programmal fertőzte-e meg.
Azoknak az eszközöknek, amelyeket a Google Play Áruház és más telepített alkalmazások szállítanak, meg kell felelniük a Google Android „Compatibility Test Suite” -jának. Egy eszköz gyökérzete vagy egyedi ROM telepítése megakadályozza, hogy egy eszköz „CTS kompatibilis” legyen. A SafetyNet API így tudja megmondani, hogy root vagy-e - csupán a CTS kompatibilitását ellenőrzi. Hasonlóképpen, ha olyan Android-eszközt kap, amely soha nem érkezett a Google alkalmazásaihoz - például egy 20 dolláros tablet egyikét, amelyet közvetlenül egy kínai gyárból szállítottak -, akkor még akkor sem tekinthető „CTS-kompatibilisnek”, ha még nem gyökereztette le .
Ezen információk megszerzéséhez a Google Play Services letölt egy „snet” nevű programot, és a háttérben futtatja az eszközén. A program adatokat gyűjt az eszközéről és rendszeresen elküldi a Google-nak. A Google ezeket az információkat többféle célra használja fel, kezdve a szélesebb körű Android-ökoszisztéma képének elkészítésén át annak meghatározásáig, hogy eszközének szoftverét hamisították-e. A Google nem magyarázza el, hogy pontosan mit keres a snet, de valószínűleg a snet ellenőrzi, hogy a rendszer partícióját gyárilag módosították-e.
Ellenőrizheti készüléke SafetyNet állapotát egy alkalmazás letöltésével SafetyNet Helper minta vagy SafetyNet játszótér . Az alkalmazás megkérdezi a Google SafetyNet szolgáltatását az eszköz állapotáról, és elmondja a Google szerverétől kapott választ.
További műszaki részletekért olvassa el ezt a blogbejegyzést írta John Kozyrakis, a Cigital szoftverbiztonsági vállalat technikai stratégája. Beletúrt a SafetyNet-be, és elmagyarázza, hogyan működik.
Ez az alkalmazáson múlik
A SafetyNet opcionális az alkalmazásfejlesztők számára, és az alkalmazásfejlesztők dönthetnek úgy, hogy használják-e vagy sem. A SafetyNet csak akkor akadályozza meg az alkalmazás működését, ha az alkalmazás fejlesztője nem akarja, hogy gyökerezett eszközökön működjön.
A legtöbb alkalmazás egyáltalán nem fogja ellenőrizni a SafetyNet API-t. Még egy alkalmazás sem, amely ellenőrzi a SafetyNet API-t - a fenti tesztalkalmazásokhoz hasonlóan - nem áll le, ha rossz választ kapnak. Az alkalmazás fejlesztőjének ellenőriznie kell a SafetyNet API-t, és el kell utasítania az alkalmazást, ha megtudja, hogy az eszköz szoftverét módosították. A Google saját Android Pay alkalmazása jó példa erre.
Az Android Pay nem fog működni gyökeres eszközökön
A Google Android Pay mobilfizetési megoldása egyáltalán nem működik rootolt Android-eszközökön. Próbálja meg elindítani, és csak egy üzenet jelenik meg: „Az Android Pay nem használható. A Google nem tudja ellenőrizni, hogy eszköze vagy az azon futó szoftver Android-kompatibilis-e. ”
Természetesen nem csak a gyökérzetről szól - egyéni ROM futtatása szintén tévesztené ezt a követelményt. A SafetyNet API azt állítja, hogy nem „Android-kompatibilis”, ha olyan egyéni ROM-ot használ, amelyhez az eszköz nem jött.
ÖSSZEFÜGGŐ: Az ügy a gyökér ellen: Miért nem gyökereznek az Android-eszközök?
Ne feledje, hogy ez nem csak a gyökeresedést észleli. Ha készülékét valamilyen rendszerszintű kártevő fertőzte meg, amely képes kémkedni az Android Pay és más alkalmazások között, a SafetyNet API szintén megakadályozná az Android Pay működését, ami jó dolog.
Az eszköz gyökérzete megszakítja az Android normál biztonsági modelljét. Az Android Pay általában megvédi fizetési adatait az Android homokozó funkciói segítségével, de az alkalmazások kitörhetnek a gyökérzetű eszköz homokozójából . A Google-nak nincs módja tudni, hogy az Android Pay mennyire lenne biztonságos egy adott eszközön, ha gyökerezik vagy ismeretlen egyéni ROM-ot futtat, ezért blokkolják. Az Android Pay mérnöke elmagyarázta a problémát az XDA Developers fórumon ha kíváncsi vagy tovább.
Az alkalmazások egyéb módjai felismerhetik a gyökérzetet
A SafetyNet csak egy módja annak, hogy egy alkalmazás ellenőrizhesse, hogy fut-e gyökeres eszközön. Például a Samsung készülékei tartalmaznak egy KNOX nevű biztonsági rendszert. Ha gyökérkezeli az eszközt, a KNOX biztonság ki van kapcsolva. A Samsung Pay, a Samsung saját mobilfizetési alkalmazása, nem hajlandó működni a gyökérzetű eszközökön. A Samsung ehhez a KNOX-ot használja, de ugyanúgy használhatja a SafetyNet-et is.
Hasonlóképpen rengeteg harmadik féltől származó alkalmazás blokkolja az Ön használatát, és nem mindegyikük használja a SafetyNet-et. Lehet, hogy csak ellenőrzik az ismert gyökéralkalmazások és folyamatok jelenlétét egy eszközön.
Nehéz olyan naprakész listát találni azokról az alkalmazásokról, amelyek nem működnek, amikor egy eszköz gyökérzik. A RootCloak azonban biztosítja számos listák . Lehet, hogy ezek a listák elavultak, de a legjobbak, amelyeket találunk. Sok banki és egyéb mobiltárca-alkalmazás, amelyek blokkolják a hozzáférést a gyökérzetű telefonokon annak érdekében, hogy megvédjék banki adatait más alkalmazásoktól. A video streaming szolgáltatások alkalmazásai szintén elutasíthatják, hogy egy rootolt eszközön működjenek egyfajta DRM intézkedésként, és megpróbálják megakadályozni, hogy védett videofolyamot rögzítsenek.
Egyes alkalmazások átverhetők
A Google egy macska-egér játékot játszik a SafetyNettel, amelyet folyamatosan frissít, hogy megelőzze az embereket, akik megkerülik. Például az Android fejlesztő, a Chainfire új módszert hozott létre az Android készülékek gyökereztetésére a rendszerpartíció módosítása nélkül, az úgynevezett „rendszer nélküli gyökér”. A SafetyNet kezdetben nem észlelte az olyan eszközöket, amelyek megtörték volna, és az Android Pay működött, de a SafetyNet-t végül frissítették, hogy észleljék ezt az új gyökereztető módszert. Ez azt jelenti, hogy Android Pay már nem működik a rendszer nélküli gyökérrel együtt.
ÖSSZEFÜGGŐ: Felejtsd el a villogó ROM-okat: Használd az Xposed Framework-et az Android csípéséhez
Attól függően, hogy egy alkalmazás miként ellenőrzi a root hozzáférést, esetleg átverheti. Például állítólag vannak olyan módszerek, amelyek segítségével egyes Samsung-eszközök gyökeret eresztenek a KNOX biztonság megszakítása nélkül, ami lehetővé tenné a Samsung Pay használatának folytatását.
Azoknál az alkalmazásoknál, amelyek csak a gyökéralkalmazásokat keresik a rendszeren, van egy Xposed Framework nevű modul RootCloak állítólag amúgy is becsapja őket a munkába. Ez olyan alkalmazásokkal működik, mint a DirecTV GenieGo, a Best Buy CinemaNow és a Movies by Flixster, amelyek általában nem működnek gyökérzetű eszközökön. Ha azonban ezeket az alkalmazásokat frissítenék a Google SafetyNet használatára, akkor nem lenne könnyű ilyen módon átverni őket.
A legtöbb alkalmazás továbbra is normálisan fog működni, ha már gyökerezik az eszközön. A mobilfizetési alkalmazások jelentik a nagy kivételt, csakúgy, mint néhány más banki és pénzügyi alkalmazás. A fizetős video-streaming szolgáltatások időnként megpróbálják megakadályozni, hogy a videóikat is nézzék.
Ha egy szükséges alkalmazás nem működik a gyökérzetű eszközön, akkor mindig használhatja az eszközt. Az alkalmazásnak akkor kell működnie, miután visszaállította eszközét biztonságos, gyári állapotába.
Kép jóváírása: Danny Choo a Flickr-en