Kazalo:
- Nov zasuk starega pristopa
- Zaznavanje anomalije
- Zadrževanje zlonamerne programske opreme
- Rezultati testov
- Prednosti PREC
- Izziv
Trgi aplikacij Android so za uporabnike priročen način za pridobivanje aplikacij. Trgi so tudi priročen način, kako negativci dostavijo zlonamerno programsko opremo. Lastniki tržnic po svojih zaslugah poskušajo z varnostnimi ukrepi, kot je Google Bouncer, izluhniti slabe aplikacije. Na žalost večina - vključno z Bouncerjem - ni kos tej nalogi. Slabi fantje so skoraj takoj ugotovili, kako naj povejo, kdaj Bouncer, emulacijsko okolje, preizkuša njihovo kodo. V prejšnjem intervjuju je Jon Oberheide, soustanovitelj podjetja Duo Security in oseba, ki je Google obvestila o težavi, pojasnil:
"Da bi bil Bouncer učinkovit, ga je treba razlikovati od mobilne naprave resničnega uporabnika. V nasprotnem primeru bo zlonamerna aplikacija lahko ugotovila, da deluje z Bouncerjem in ne bo izvajala njegove zlonamerne uporabne obremenitve."
Drug način, kako bedaki norčijo Bouncerja, je z uporabo logične bombe. Skozi svojo zgodovino so logične bombe pustošile na računalniških napravah. V tem primeru koda logične bombe tiho prepreči preverjanje zlonamerne programske opreme, podobno kot neuspeh Bouncerja, da aktivira koristno obremenitev, dokler se zlonamerna aplikacija ne namesti na dejansko mobilno napravo.
Izhodišče je, da so trgi aplikacij za Android, razen če postanejo učinkoviti pri odkrivanju koristnih obremenitev zlonamerne programske opreme v aplikacijah, v resnici glavni distribucijski sistem zlonamerne programske opreme.
Nov zasuk starega pristopa
Raziskovalna skupina ameriške univerze v Severni Karolini Tsung-Hsuan Ho, Daniel Dean, Xiaohui Gu in William Enck je morda našla rešitev. V svojem prispevku PREC: Practical Root Exploit Containment for Android Devices je raziskovalna skupina predstavila svojo različico sheme zaznavanja anomalij. PREC je sestavljen iz dveh komponent: prvega, ki deluje z detektorjem zlonamerne programske opreme trgovine, in tistega, ki se z aplikacijo naloži na mobilno napravo.
Komponenta trgovine z aplikacijami je edinstvena po tem, da zaposluje tisto, kar raziskovalci imenujejo "klasično spremljanje sistemskih klicev". Ta pristop lahko dinamično prepozna sistemske klice iz komponent visokega tveganja, kot so knjižnice drugih proizvajalcev (tiste, ki niso vključene v sistem Android, vendar priložene preneseni aplikaciji). Tukaj je logika, da številne zlonamerne aplikacije uporabljajo lastne knjižnice.
Sistemski klici iz visoko tvegane kode tretjih oseb, pridobljene s tem nadzorom, in podatki, pridobljeni v postopku odkrivanja trgovine v aplikacijah, PREC omogočajo oblikovanje običajnega modela vedenja. Model je naložen v storitev PREC v primerjavi z obstoječimi modeli za natančnost, previsoko uporabo in robustnost za mimikrične napade.
Posodobljeni model je nato pripravljen za prenos z aplikacijo vsakič, ko aplikacijo zahteva kdo, ki obišče trgovino z aplikacijami.
To se šteje za fazo spremljanja. Ko se PREC model in aplikacija preneseta na napravo Android, PREC stopi v postopek uveljavitve - z drugimi besedami, odkrivanje nepravilnosti in zadrževanje zlonamerne programske opreme.
Zaznavanje anomalije
Ko se aplikacija in PREC model spravita na napravo Android, PREC spremlja kodo drugih proizvajalcev, zlasti sistemske klice. Če je zaporedje sistemskih klicev drugačno od tistega, ki ga spremljamo v trgovini z aplikacijami, PREC določa verjetnost, da je nenormalno vedenje izkoriščanje. Ko PREC ugotovi, da je dejavnost zlonamerna, preide v način zadrževanja zlonamerne programske opreme.Zadrževanje zlonamerne programske opreme
Če je pravilno razumljeno, zadrževanje zlonamerne programske opreme naredi PREC edinstven, ko gre za protivirusno programsko opremo Android. Zaradi narave operacijskega sistema Android aplikacije proti zlonamerni programski opremi ne morejo odstraniti zlonamerne programske opreme ali jo dati v karanteno, ker vsaka aplikacija prebiva v peskovniku. To pomeni, da mora uporabnik zlonamerno aplikacijo ročno odstraniti tako, da najprej najde zlonamerno programsko opremo v razdelku Application v sistemskem upravitelju naprave, nato odpre stran s statistiko aplikacije za zlonamerno programsko opremo in se dotakne možnosti »Odstrani«.
PREC je edinstven zaradi tega, kar raziskovalci imenujejo "mehanizem drobnega omejevanja na osnovi zamude". Splošna ideja je upočasniti sumljive sistemske klice z uporabo skupine ločenih niti. To sili izkoriščanje časa, da se prikaže stanje "Program se ne odziva", v katerem aplikacija Android operacijski sistem končno ustavi.
PREC bi lahko programirali tako, da bo ubil niti sistemskih klicev, vendar bi lahko prekinil običajne aplikacije aplikacije, če detektor anomalije naredi napako. Namesto da bi to tvegali, raziskovalci vstavijo zamudo med izvedbo niti.
"Naši poskusi kažejo, da večina koreninskih izkoriščanja postane neučinkovita, potem ko zlonamerni izvorni niz upočasnimo do določene točke. Pristop, ki temelji na zamiku, lahko lažne alarme obravnava bolj elegantno, saj benigna aplikacija ne bo trpela zaradi prekinitve ali prenehanja zaradi prehodnih lažnih alarmi, "razlaga papir.
Rezultati testov
Za oceno PREC so raziskovalci zgradili prototip in ga preizkusili na 140 aplikacijah (80 z izvorno kodo in 60 brez izvorne kode) - plus 10 aplikacij (štiri znane aplikacije za korensko izkoriščanje iz projekta Malware Genome in šest prepakiranih aplikacij za izkoriščanje korenin) - ki je vsebovala zlonamerno programsko opremo. Zlonamerna programska oprema je vključevala različice DroidDream, DroidKungFu, GingerMaster, RATC, ZimperLich in GingerBreak.
Rezultati:
- PREC je uspešno odkril in zaustavil vse preizkušene korenske podvige.
- Na benignih aplikacijah brez izvorne kode je sprožil nič lažnih alarmov. (Tradicionalne sheme porabijo 67-92% lažnih alarmov na aplikacijo.)
- PREC je zmanjšal lažno stopnjo alarma na benignih aplikacijah z izvorno kodo za več kot en red več kot tradicionalni algoritmi za odkrivanje anomalije
Prednosti PREC
PREC je poleg tega, da se je dobro preizkusil v testih in posredoval izvedljivo metodo, da bi vseboval zlonamerno programsko opremo za Android, očitno boljše številke, ko je šlo za lažne pozitivne rezultate in izgubo zmogljivosti. V prispevku je bilo v prispevku navedeno, da PREC "klasični sistem spremljanja nalaga manj kot 1% režijskih stroškov, algoritem za odkrivanje anomalij SOM pa nalaga do 2% režijskih stroškov. Na splošno je PREC lahek, zaradi česar je praktičen za pametne naprave."
Trenutni sistemi odkrivanja zlonamerne programske opreme, ki jih uporabljajo trgovine z aplikacijami, niso učinkoviti. PREC zagotavlja visoko stopnjo natančnosti odkrivanja, nizek odstotek lažnih alarmov in zadrževanje zlonamerne programske opreme - nekaj, kar trenutno še ne obstaja.
Izziv
Ključ do tega, da PREC deluje, je odkup s tržnic aplikacij. Gre le za ustvarjanje baze podatkov, ki opisuje, kako aplikacija deluje normalno. PREC je eno orodje, ki ga lahko uporabimo za dosego tega. Potem, ko uporabnik prenese želeno aplikacijo, informacije o uspešnosti (profil PREC) gredo skupaj z aplikacijo in bodo uporabljene za izhodišče vedenja aplikacije, medtem ko je nameščena na napravi Android.