15Jul

SafetyNet paskaidroja, kāpēc Android Pay un citas programmas nedarbojas sakņotās ierīcēs

Android ierīces ieslēgšana ļauj piekļūt plašākam lietotņu klāstam un dziļākai piekļuvei Android sistēmai. Bet dažas lietotnes, piemēram, Google Android Pay, nedarbosies sakņotā ierīcē.

Google izmanto kaut ko, ko sauc par "SafetyNet", lai noteiktu, vai jūsu ierīce ir sakneta vai nav, un bloķē piekļuvi šīm funkcijām. Google nav vienīgais, vai nu daudzas trešo pušu lietotnes arī nedarbosies sakņotās Android ierīcēs, lai gan tās var pārbaudīt root piekļuvi citos veidos.

SafetyNet: Kā Google pazīst, ka esat sakņojies savā Android tālruņa Android ierīču

Android ierīcēs piedāvā "SafetyNet API", kas ir daļa no Google Play pakalpojumu slāņa, kas instalēta Google apstiprinātās Android ierīcēs.Šis API "nodrošina piekļuvi Google pakalpojumiem, kas palīdz novērtēt Android ierīces veselību un drošību", saskaņā ar Google. Ja esat Android izstrādātājs, savā lietotnē varat izsaukt šo API, lai pārbaudītu, vai tiek ietekmēta ierīce, kurā jūs izmantojat.

Šī drošības tīkla API ir izstrādāta, lai pārbaudītu, vai ierīce ir tikusi manipulēta - vai nu tā ir sakņota lietotāja, tiek izmantota pielāgota ROM vai ir inficēta ar, piemēram, zema līmeņa ļaunprogrammatūru.

Ierīcēm, kas tiek piegādātas kopā ar Google Play veikalu un citām instalētajām lietotnēm, ir jānodod Google Android "Saderības pārbaudes komplekts".Ierīces saknešana vai pielāgotas ROM instalēšana neļauj ierīcei būt "CTS Compatible".Tādā veidā SafeNet API var pateikt, vai esat sakņojas, tā vienkārši pārbauda CTS saderību. Tāpat, ja Android ierīcei, kurai nekad nav pievienojušās Google lietotnes, piemēram, viena no tām 20 ASV dolāru tabletēm, kas tiek piegādātas tieši no rūpnīcas Ķīnā, tas netiks uzskatīts par "CTS saderīgu" vispār, pat ja jūs to neesat piesaistījis.

Lai iegūtu šo informāciju, Google Play pakalpojumi lejupielādē programmu ar nosaukumu "snet" un palaiž to fonā savā ierīcē.Programma apkopo datus no ierīces un regulāri nosūta to uzņēmumam Google. Google izmanto šo informāciju dažādiem mērķiem, lai iegūtu priekšstatu par plašāku Android ekosistēmu, lai noteiktu, vai jūsu ierīces programmatūra ir mainīta. Google nepaskaidro, ko tieši snet meklē, bet visticamāk, ka snet pārbauda, ​​vai jūsu sistēmas nodalījums ir pārveidots no rūpnīcas stāvokļa.

Jūs varat pārbaudīt savas ierīces SafeNet statusu, lejupielādējot tādu lietotni kā SafetyNet Helper Sample vai SafetyNet Playground. Lietojumprogramma lūgs Google SafeNet pakalpojumu par jūsu ierīces statusu un pateiks jums atbildi, ko tā saņem no Google servera.

Lai iegūtu plašāku tehnisko informāciju, izlasiet šo emuāra ierakstu, ko izstrādājis programmatūras drošības kompānijas Cigital tehniskais stratēģis John Kozyrakis. Viņš iekāpa SafeNet un izskaidro vairāk par to, kā tas darbojas.

Tas ir pēc lietojumprogrammas

SafetyNet ir opcionāls lietotņu izstrādātājiem, un lietotņu izstrādātāji to var izvēlēties vai nē.SafeNet tikai novērš lietotnes darbību, ja lietotnes izstrādātājs nevēlas, lai tā darbotos sakņotās ierīcēs.

Lielākā daļa lietotņu vispār nemēģinās pārbaudīt SafetyNet API.Pat lietotne, kas pārbauda drošības tīklu API, piemēram, iepriekš minētās testa lietotnes, neapstāsies, ja tās saņems sliktu atbildi. Lietojumprogrammas izstrādātājam ir jāpārbauda SafeNet API un jāpadara lietotne atteikšanās darboties, ja tā uzzina, ka jūsu ierīces programmatūra ir mainīta. Google paša Android Pay lietotne ir labs piemērs tam, kā rīkoties.

Android Pay nedarbosies sakņotos ierīcēs

Google Android Pay mobilo maksājumu risinājums vispār nedarbojas sakņotās Android ierīcēs. Mēģiniet to palaist, un jūs vienkārši redzēsit ziņojumu, kurā teikts: "Android Pay nevar izmantot. Google nevar pārbaudīt, vai jūsu ierīcē vai tajā izmantotā programmatūra ir saderīga ar Android. "

Tas nav tikai par sakarus, protams, palaižot pielāgotu ROM, jūs arī neievērosit šo prasību. SafetyNet API apgalvo, ka tā nav "Android saderīga", ja jūs izmantojat pielāgotu ROM, kuru ierīcē nebija.

Atcerieties, ka tas ne tikai atklāj saknes. Ja jūsu ierīce ir inficēta ar kādu sistēmas līmeņa ļaunprogrammatūru, kas spēj spiegot lietotnē Android Pay un citas lietotnes, SafeNet API arī novērsīs Android Pay funkcionēšanu, kas ir laba lieta.

Ierīces sakārtošana pārtrauc Android standarta drošības modeli. Lietotne Android Pay parasti aizsargā jūsu maksājumu datus, izmantojot Android sandboxes funkcijas, taču lietotnes var izkļūt no smilškastēm uz piesaistītas ierīces. Google nav veids, kā uzzināt, cik drošu Android Pay būs konkrētā ierīcē, ja tā sakņojas vai darbojas nezināms pielāgotais ROM, tāpēc viņi to bloķē.Android Pay inženieris izskaidroja problēmu XDA Izstrādātāju forumā, ja jūs interesē lasīt vairāk.

Citi veidi, kā lietotne var noteikt saknes.

SafetyNet ir tikai viens veids, kā lietotne var pārbaudīt, vai tā darbojas sakņotā ierīcē.Piemēram, Samsung ierīces ietver drošības sistēmu ar nosaukumu KNOX.Ja jūs saknes savu ierīci, KNOX drošība tiek izslēgta. Samsung maksa, Samsung paša mobilo maksājumu lietotne, atsakās darboties sakņotās ierīcēs.Šajā ziņā Samsung izmanto KNOX, taču tas varētu arī izmantot SafeNet.

Tāpat daudzas trešo pušu lietotnes bloķēs jūs tos izmantot, un ne visi no tiem izmanto SafeNet. Viņi var vienkārši pārbaudīt, vai ierīcē ir zināmas saknes lietotnes un procesi.

Ir grūti atrast atjauninātu sarakstu ar lietotnēm, kas nedarbojas, kad ierīce ir sakņota. Tomēr RootCloak piedāvā vairākus sarakstus.Šie saraksti var būt novecojuši, taču tie ir labākie, ko mēs varam atrast. Daudzi no tiem ir bankas un citas mobilās seifu lietotnes, kas bloķē piekļuvi sakņotajiem tālruņiem, mēģinot aizsargāt jūsu bankas informāciju no citām lietotnēm. Lietotnes videoreklāmu straumēšanas pakalpojumiem var arī atteikties darboties sakņotā ierīcē kā sava veida DRM pasākumu, cenšoties nepieļaut ierakstīšanu aizsargātajā video straumē.

Dažas lietotnes var tikt sagrozītas

Google spēlē kaķu un peles spēli ar programmu SafetyNet, pastāvīgi atjauninot to, cenšoties palikt priekšā cilvēkiem, kas to apzinās. Piemēram, Android izstrādātājs Chainfire ir izveidojis jaunu Android ierīču vadīšanas metodi, nemainot sistēmas nodalījumu, kas pazīstams kā "bez sistēmas root".SafetyNet sākotnēji nekonstatēja šādas ierīces, jo tās tika konfiscētas, un Android Pay strādāja, bet drošības tīkls beidzot tika atjaunināts, lai noteiktu šo jauno sakņu metodi. Tas nozīmē, ka Android Pay vairs nedarbojas kopā ar sistēmas bez saknes.

Atkarībā no tā, kā lietojumprogramma pārbauda root piekļuvi, iespējams, to varēsiet viltus. Piemēram, tiek ziņots, ka dažas no Samsung ierīcēm sakņojas, neizslēdzot KNOX drošību, kas ļaus jums turpināt lietot Samsung Pay.

Attiecībā uz lietojumprogrammām, kuras vienkārši pārbauda jūsu sistēmas saknes lietojumprogrammas, ir Xposed Framework modulis ar nosaukumu RootCloak, kas, kā tiek ziņots, ļauj jums vilkt tos darbā.Tas darbojas ar tādām lietotnēm kā DirecTV GenieGo, Best Buy CinemaNow un Flixster filmas, kuras parasti nedarbojas sakņotās ierīcēs. Tomēr, ja šīs lietojumprogrammas tika atjauninātas, lai izmantotu Google SafeNet, šādā veidā tās nebūtu tik viegli apgūt.

Lielākā daļa lietotņu turpinās darboties normāli, kad būsiet piesaistījis ierīci. Mobilo maksājumu lietotnes ir liels izņēmums, tāpat kā citas bankas un finanšu lietotnes. Apmaksāti video straumēšanas pakalpojumi dažreiz mēģina bloķēt jūs arī skatīties viņu videoklipus.

Ja jūsu vajadzīgā lietotne nedarbojas jūsu sakņotajā ierīcē, jūs vienmēr varat atvērt savu ierīci, lai to izmantotu. Lietojumprogrammai jādarbojas pēc tam, kad esat atpakaļ jūsu ierīci drošā, rūpnīcas stāvoklī.

attēla kredīts: Danny Choo par Flickr