Hjemmeside » hvordan » SafetyNet forklart Hvorfor Android Pay og andre apper ikke fungerer på rotte enheter

    SafetyNet forklart Hvorfor Android Pay og andre apper ikke fungerer på rotte enheter

    Roter Android-enheten gir deg tilgang til et bredere utvalg av apper og en dypere tilgang til Android-systemet. Men noen apps, som Google's Android Pay, virker ikke i det hele tatt på en rotfestet enhet.

    Google bruker noe som heter SafetyNet for å oppdage om enheten din er rotfestet eller ikke, og blokkerer tilgang til disse funksjonene. Google er ikke den eneste, heller - mange tredjepartsapps fungerer også ikke på rotte Android-enheter, selv om de kanskje ser etter rosens tilstedeværelse på andre måter.

    SafetyNet: Hvordan Google vet at du har røpt din Android-telefon

    Android-enheter tilbyr en "SafetyNet API", som er en del av Google Play Services-laget som er installert på Google-godkjente Android-enheter. Denne API-en gir tilgang til Google-tjenester som hjelper deg med å vurdere helsen og sikkerheten til en Android-enhet, ifølge Google. Hvis du er en Android-utvikler, kan du ringe denne APIen i appen din for å sjekke om enheten du kjører på, har blitt manipulert med.

    Denne SafetyNet API er utviklet for å kontrollere om en enhet har blitt manipulert - om den har blitt rotfestet av en bruker, kjører en tilpasset ROM, eller har blitt smittet med skadelig programvare på lavt nivå, for eksempel.

    Enheter som leveres med Googles Play-butikk og andre programmer som er installert, må passere Googles Android-kompatibilitetstest-suite. Roter en enhet eller installerer en egendefinert ROM forhindrer at en enhet blir "CTS-kompatibel". Slik kan SafetyNet API fortelle om du er forankret - den bare sjekker for CTS-kompatibilitet. På samme måte, hvis du får en Android-enhet som aldri kom med Googles apper, som en av de $ 20 tabletter som sendes direkte fra en fabrikk i Kina, vil den ikke bli vurdert som "CTS-kompatibel" i det hele tatt, selv om du ikke har rotfestet det.

    For å få denne informasjonen laster Google Play Services ned et program med navnet "snet" og kjører det i bakgrunnen på enheten din. Programmet samler inn data fra enheten din og sender den til Google regelmessig. Google bruker denne informasjonen til en rekke formål, fra å få et bilde av det brede Android-økosystemet for å avgjøre hvorvidt enhetens programvare har blitt manipulert. Google forklarer ikke nøyaktig hva snuten er på jakt etter, men det er sannsynlig at snett sjekker om systempartisjonen er endret fra fabrikkstaten.

    Du kan sjekke sikkerhetsstatusen til enheten din ved å laste ned en app som SafetyNet Helper Sample eller SafetyNet Playground. Appen vil spørre Googles SafetyNet-tjeneste om enhetens status og fortelle deg svaret som kommer fra Googles server.

    For mer tekniske detaljer, les dette blogginnlegget skrevet av John Kozyrakis, en teknisk strateg ved Cigital, et programvare sikkerhetsselskap. Han gravd til SafetyNet og forklarer mer om hvordan det fungerer.

    Det er opp til appen

    SafetyNet er valgfritt for app-utviklere, og apputviklere kan velge å bruke det eller ikke. SafetyNet forhindrer bare en app i å fungere hvis en apps utvikler ikke vil at den skal fungere på rotte enheter.

    De fleste apps vil ikke sjekke SafetyNet API i det hele tatt. Selv en app som sjekker SafetyNet API-som testappene ovenfor - vil ikke slutte å fungere hvis de mottar et dårlig svar. Appens utvikler må sjekke SafetyNet API og gjøre appen nektet å fungere hvis den lærer at enhetens programvare er blitt endret. Googles egen Android Pay-app er et godt eksempel på dette i aksjon.

    Android Pay vil ikke fungere på rote enheter

    Googles Android Pay-mobilbetalingsløsning virker ikke i det hele tatt på rotte Android-enheter. Prøv å starte den, og du vil bare se en melding som sier "Android Pay kan ikke brukes. Google kan ikke bekrefte at enheten din eller programvaren som kjører på den, er Android-kompatibel. "

    Det handler ikke bare om å rote, selvfølgelig, å kjøre en egendefinert ROM vil også gi deg avoul av dette kravet. SafetyNet API vil hevde at det ikke er "Android-kompatibelt" hvis du bruker en egendefinert ROM som enheten ikke fulgte med.

    Husk at dette ikke bare oppdager røtter. Hvis enheten din ble smittet av noe malware på systemetivå, med muligheten til å spionere på Android Pay og andre apper, vil SafetyNet API også forhindre at Android Pay fungerer, noe som er bra.

    Rooting enheten din bryter Android's normale sikkerhetsmodell. Android Pay beskytter normalt betalingsdataene dine ved hjelp av Android's sandboxingsfunksjoner, men apps kan bryte ut av sandkassen på en rotfestet enhet. Google har ingen måte å vite hvor sikker Android Pay ville være på en bestemt enhet hvis den er rotfestet eller kjører en ukjent tilpasset ROM, slik at de blokkerer den. En Android Pay Engineer forklarte problemet på XDA Developers forumet hvis du er nysgjerrig på å lese mer.

    Andre måter Apps kan oppdage rot

    SafetyNet er bare en måte en app kan sjekke om den kjører på en rotfestet enhet. For eksempel inkluderer Samsung-enheter et sikkerhetssystem kalt KNOX. Hvis du roter enheten din, blir KNOX-sikkerhet utløst. Samsung Pay, Samsungs egen mobilbetalingsapp, vil nekte å fungere på rotte enheter. Samsung bruker KNOX for dette, men det kan like godt bruke SafetyNet.

    På samme måte vil mange tredjepartsapps blokkerer deg fra å bruke dem, og ikke alle bruker SafetyNet. De kan bare se etter tilstedeværelse av kjente rotapplikasjoner og -prosesser på en enhet.

    Det er vanskelig å finne en oppdatert liste over apper som ikke fungerer når en enhet er rotfestet. Men RootCloak gir flere lister. Disse lister kan være utdaterte, men de er de beste vi kan finne. Mange er banktjenester og andre mobile lommebokapps, som blokkerer tilgang på rotte telefoner i et forsøk på å beskytte bankinformasjonen din fra å bli fanget av andre apper. Apper for videostreaming-tjenester kan også nekte å fungere på en rotfestet enhet som en slags DRM-måling, for å forhindre deg i å spille inn en beskyttet videostrøm.

    Noen apper kan bli lurt

    Google spiller et katt-og-mus-spill med SafetyNet, og oppdaterer den kontinuerlig i et forsøk på å holde seg foran folk som kommer seg rundt det. For eksempel har Android-utvikleren Chainfire opprettet en ny metode for å rote Android-enheter uten å endre systempartisjonen, kjent som "systemløs rot". SafetyNet oppdaget i utgangspunktet ikke slike enheter som manipulert, og Android Pay fungerte, men SafetyNet ble til slutt oppdatert for å oppdage denne nye rota-metoden. Dette betyr at Android Pay ikke lenger fungerer sammen med systemløs rot.

    Avhengig av hvordan en app sjekker for root-tilgang, kan du kanskje lure den. For eksempel er det angivelig metoder for å rote noen Samsung-enheter uten å utløse KNOX-sikkerheten, noe som gjør at du kan fortsette å bruke Samsung Pay.

    I tilfelle av apper som bare ser etter root-apper på systemet, er det en Xposed Framework-modul kalt RootCloak som angivelig tillater deg å lure dem til å fungere uansett. Dette fungerer med programmer som DirecTV GenieGo, Best Buy CinemaNow og Movies by Flixster, som vanligvis ikke fungerer på rotte enheter. Men hvis disse appene ble oppdatert for å bruke Googles SafetyNet, ville de ikke være så lett å lure på denne måten.


    De fleste appene vil fortsette å fungere normalt når du har rotfestet enheten din. Mobil betaling apps er det store unntaket, som er noen andre bank og finansiell apps. Betalte video-streaming-tjenester prøver noen ganger å blokkere deg fra å se på videoene sine også.

    Hvis en app du trenger ikke fungerer på din rotfestede enhet, kan du alltid fjerne enheten din for å bruke den. Appen skal fungere etter at du har returnert enheten til sikker, fabrikkstatus.

    Bildekreditt: Danny Choo på Flickr