Arvutiteaduse instituut
  1. Kursused
  2. 2022/23 kevad
  3. Infoturve (MTAT.07.028)
EN
Logi sisse

Infoturve 2022/23 kevad

  • Pealeht
  • Loengud ja praktikumid
  • Kodutööd ja reeglid
  • Terminoloogia
  • Eksam
  • Uudised
  • Viited

Nutiseadmete turvalisus iOS ja Androidi näitel

Sisukord

  • Ründamise motiivid ja statistika
    • Mobiilseadmeid mõjutavate ohtude raportid
  • Nutiseadmete turvapoliitikad
  • Nutiseadmete füüsiline turvalisus
    • Ekraanilukk
    • Seadme krüpteerimine
    • Seadme asukoha tuvastamine
  • Android
    • Rakenduste õigused
    • Ohud ja probleemid
    • Lisamaterjalid
  • iOS
    • Rakenduste õigused
    • Piraaditud rakendustega seotud ohud
    • Lisamaterjalid
  • iOS vs Android - avatud või suletud süsteem?
  • Privaatset suhtlemist võimaldavad rakendused
  • Kasulikud lingid
  • Moodle foorum ja tagasiside ankeet

Ründamise motiivid ja statistika

Mobiilseadmete ründamine muutub iga aastaga järjest atraktiivsemaks. Põhjuseks on mobiilseadmete levik maailmas ning nende tähtsuse kasv. Lauaarvutite ning sülearvutite kasutus on vähenenud, kuna nutitelefonide ning tahvelarvutite abil saab samuti suhelda, oste sooritada ning töötada. Seetõttu ühendavad inimesed oma nutiseadmetega järjest rohkem erinevaid rakendusi ning kuna seadmed muutuvad targemaks, siis koguvad nad ka ise järjest rohkem andmeid seadme kasutaja kohta.

Võib eeldada, et keskmise nutiseadme kasutajal on seadmega ühendatud meilikontod, erinevad suhtlusrakendused, sotsiaalmeediarakendused, pilveteenused, pangakonto haldamise rakendused. Selleks, et oleks võimalik paigaldada tasulisi rakendusi, on vaja seadmesse sisestada krediitkaardi number. Lisaks sellele on seadmes suure tõenäosusega ka selle sama seadmega tehtud fotod ning videod. Kui seadme omanik või mõni rakendus kasutab sisseehitatud positsioneerimisfunktsionaalsust, siis võib seadmes (või teenusepakkujal) olla ka info selle kohta kus seadme omanik on viibinud.

Miks rünnata nutiseadmeid?

  • juurdepääs andmetele - isikuandmed, paroolid, krediitkaardi number, fotod, emailid, jne.
  • identiteedivargus (sisselogitud teenuste kaudu), sõnumite saatmine ja kõnede tegemine.
  • kasutaja juurdepääsu piiramine tema enda telefonile, lunaraha nõudmine.

Järgnevast artiklist pärinev statistika on küll aegunud, kuna pärineb 2012 aastast, aga annab siiski ülevaate kahjurvara olemusest: “Dissecting Android Malware: Characterization and Evolution”. Artikkel kirjeldab 1260 erinevat pahavaralist Androidi rakendust, mis leiti 2010 aasta augustist kuni 2011 aasta oktoobrini.

  • 86% pahavaralistest rakendustest jäljendasid juba olemasolevaid rakendusi (repackaging)
  • 36.7% pahavaralistest rakendustest said endale administratiivsed õigused
  • 90% muutsid telefonid osaks botnetist
  • 45.3% saatsid sõnumeid või helistasid tasulistele numbritele
  • 51.1% korjasid kasutaja kohta infot
  • parim antiviirus tuvastas 79.6% pahavaralistest rakendustest
  • viletsaim antiviirus tuvastas ainult 20.2% pahavaralistest rakendustest

Mobiilseadmeid mõjutavate ohtude raportid


(ülal) Android pahavara jaotus keskkondade kaupa.

Populaarse antiviiruse tarkvara tootja F-Secure avaldab perioodiliselt aruandeid nutiseadmetelt leitud pahavara kohta. F-Secure 2013. aasta teise poole raportis (pdf) seisab, et selle perioodi vältel tuvastatud uutest pahalastest 97% olid Android platvormil ning ülejäänud 3% Symbianil. See tähendab, et iOS, Windows Phone ja Blackberry platvormidel ei tuvastatud ühtegi uut pahavara.

2013. aasta teises pooles kogus F-Secure üles 180 000 võimaliku pahavara näidise. Alloleval joonisel on välja toodud nende jaotus erinevate Android rakendusi pakkuvate keskkondade vahel ning lisaks see, kui suur osa neist raporteeritud näidistest tegelikult ka pahavaraks osutus. Nagu näha, siis Google Play keskkonnast pärit näidistest osutus vaid 0,1% tegelikuks pahavaraks.

2014. aasta teise poolaasta raportist (pdf) selgub, et leidub ka iOS jaoks loodud pahavaralisi rakendusi, kuid iOS pahavara on siiski palju vähem kui Androidil:


Mobiilne pahavara, 2014 II poolaasta.

Kuna Apple rakenduste poodi on väga raske pahavaralisi rakendusi saata, siis on ründajad pidanud leidma pahavara levitamiseks teisi alternatiive. Näiteks 2014 aastal üritas üks pahavara perekond enda levitamiseks kasutada nakatunud arvutitega ühendatud telefone, mis tähendas seda, et pahavaral õnnestus telefoni pääseda läbi USB kaabli.

Vastavalt F-Secure 2015 aasta raportile on olnud ka juhtumeid, kus pahavara levitamiseks nakatatakse hoopis tarkvaraarendaja arvuti. Rakenduste looja arvuti nakatamisega võib ründaja saavutada olukorra kus arendaja teadmata nakatatakse tema poolt loodud rakendused pahavaraga.


Top 10 Android pahavara, F-Secure 2015 aasta ohtude raport

2016 aasta kohta käivat infot näete F-Secure raportitest:

  • F-Secure State of Cyber Security 2017
    • Another Reason 99% of Mobile Malware Targets Androids

2018/2019 aasta kohta käivat infot näete viidatud raportitest:

  • 2018 Mobile Threat Landscape
  • McAfee Mobile Threat Report
  • Nokia's Threat Intelligence Infographic (2019)

Nutiseadmete turvapoliitikad

Nutiseademte turvapoliitika peaks kirjeldama kuidas seadet võib kasutada. Ühe nutiseadmete turvapoliitika näite leiate järgneva lingi abil: Sample Mobile Device Security Policy.

Nutiseadmete kasutamise poliitika

Üldlevinud nutiseadmete kasutamise poliitikateks on Bring Your Own Device (BYOD), Choose Your Own Device (CYOD) ja Corporate Owned, Personally Enabled (COPE). Rohkem infot nende poliitikate kohta leiate artiklist: BYOD, CYOD, COPE, COBO — What Do They Really Mean?

  • BYOD lubab töötajatel kasutada nende enda nutiseadmeid ja seega see lahendus sobib asutustele, mis ei rakenda rangeid turvameetmeid. BYOD kasutamine ei ole kulukas ja sobib väikeettevõtetele. BYOD probleemiks on see, et töötajate üle pole kontrolli ja töötajad saavad kasutada väga erinevaid seadmeid, ning seetõttu pole turvaülemal ülevaadet töötajate seadmete turvalisusest.
  • CYOD lubab töötajatel kasutada enda nutiseadet juhul kui nutiseade on asutuse poolt heaks kiidetud. Seega saab asutus lubada ainult kõike turvalisemate nutiseadmete kasutamist ja lubada näiteks ainult paari erineva seadme kasutamist. Näiteks võib turvaülem otsustada, et lubatakse kasutada uuemaid iOS seadmeid ja Google Pixel (varasemalt Nexus) seeria tooteid, sest iOS seadmed on keskmisest kõrgema turvatasemega ja Google Pixel seadmed saavad kõige esimesena turvauuendusi. Selle poliitika kasutamine on firma jaoks kallim, aga võimaldab tõsta turvataset ilma töötajate vabadust oluliselt piiramata.
  • COPE lubab töötajatel kasutada ainult asutuse poolt antud nutiseadet, mis on vastava asutuse kontrolli all. Seega saab asutus valida, mis tarkvara antud seadmele paigaldatakse ja mida töötaja antud seadmega teha saab. Selle poliitika kasutamine on kallis ja seetõttu tuleks seda kasutada siis kui asutus vajab kõrgemat turvataset või rohkem kontrolli töötajate üle.

Dilberti koomiks (allikas)

Nutiseadmete füüsiline turvalisus

Mis võib juhtuda kui nutiseade satub ajutiselt ründaja kätte? Mida saab ründaja selle abil teha? Nutiseadme ajutise valdamise korral võib ründaja:

  • lugeda / kopeerida / kustutada privaatset infot, enamasti on nutiseadmetel juurdepääs kirjakastile
  • esineda nutiseadme omanikuna - saata nutiseadme omaniku nime alt kirju / sõnumeid / fotosid
  • saada automaatne juurdepääs erinevatele kasutaja poolt salvestatud kontodele
  • kasutada kasutaja kontoga seotud krediitkaarti (kulutada seadme omaniku raha)
  • paigaldada seadmesse pahavara
  • kasutada seadet kahefaktorilise autentimise jaoks
  • saada juurdepääs omaniku poolt kasutavatele pilveteenustele

Seega on väga oluline, et ründaja ei saaks vaba juurdepääsu nutiseadmele. Selle vältimiseks tuleb nutiseadmel aktiveerida ekraanilukk ja kasutada koodiks mittetriviaalset mustrit / PIN koodi / parooli. Ka lühiajaline kokkupuude seadmega võib anda ründajale piisavalt aega, et olukorda enda huvides ära kasutada. Seetõttu peaks nutiseadme ekraan olema alati lukus, et kaitsta ennast olukorras kus võõras või ebausaldusväärne inimene jääb seadmega üksi.

Ekraanilukk

Mustril põhinev lukk

Android kasutab mustril põhinevat ekraanilukku. Selleks, et ekraanilukku eemaldada tuleb sisestada muster 3x3 (või üldisemalt NxN) väljal. Selle meetodi kasutamisel võib ründaja mustri ära arvata juhul kui muster on lihtne või kui see on näpujälgede tõttu ekraanilt välja loetav. Ründajal on 20 võimalust, et mustrit ära arvata, pärast seda saab telefoni avada Google konto abil. Näpujälgede põhist rünnet on uuritud artiklis Smudge Attacks on Smartphone Touch Screens.


Mustril põhinev lukk Androidil (vasakul) ja sellest tulenev probleem (paremal).

PIN koodil põhinev lukk

Nii Android kui ka iOS pakuvad PIN koodi põhist ekraani lukku. Androidis peab PIN kood koosnema neljast kuni 16 numbrist. Erinevalt Androidist nõuab iOS alates versioonist 9 vaikimisi kuuekohalist PIN koodi (simple passcode) või siis parooli.

Kui Androidi seadmel on PIN kood viis korda valesti sisestatud, siis tuleb oodata 30 sekundit enne kui on võimalik uuesti proovida, kuid muid takistusi PIN sisestamisel ei ole. Oletame, et viie neljakohalise PIN koodi sisestamiseks kulub 10 sekundit, siis tegelikult koos viitega kulub viie PIN koodi sisestamiseks 40 sekundit. Tunnis on 3600 sekundit, seega saab ühes tunnis proovida umbes 90 PIN koodi. Sellises tempos kuluks neljakohalise PIN arvamiseks maksimaalselt 111 tundi ja keskmiselt 55.5 tundi.


PIN-koodil põhinev lukk Androidil (vasakul) ja iOS (paremal, allikas).''

Paroolil põhinev lukk

Nii Android kui ka iOS pakuvad parooli põhist ekraani lukku. Androidil peab ekraaniluku parool koosnema vähemalt neljast sümbolist, iOS ekraaniluku parool vähemalt kuuest sümbolist. Android lubab kuni 16 sümbolist koosnevat parooli ja iOS kuni 37 sümbolist koosnevad parooli.

Kui Androidi seadmel on parool kood viis korda valesti sisestatud, siis tuleb oodata 30 sekundit enne kui on võimalik uuesti proovida, kuid muid takistusi parooli sisestamisel ei ole.

Sõrmejäljel põhinev lukk

Uuemad võimaldavad ekraanilukku eemaldada sõrmejälje abil. Sõrmejälje tuvastamise funktsionaalsus kannab iOS seadmetel (alates iPhone 5S, iPad Air 2, iPad mini 3 või uuem seade) nime Touch ID. Nii iOS kui uuematel Android seadmetel hoitakse salvestatud sõrmejälgede infot lokaalselt turvalises riistvara elemendis ja seda ei saadeta seadmest välja. Siiski on võimalik sõrmejälje lugejat ära petta kui ründaja leiab hea kvaliteediga sõrmejälje, mis kuulub seadme omanikule. Sellest kirjutatakse artiklis: Hackers claim to have defeated Apple's Touch ID print sensor.

Ka mitmed Androidi uuemad seadmed saanud endale sõrmejälje lugeja (näiteks Samsung Galaxy S5, OnePlus 2, Nexus 5X, Nexus 6P, jt).

Oluline on teada, et nii sõrmejälje põhine lukk kui ka näotuvastusel põhinev lukk on vaid mugavusvalikud ning nõuavad kas PIN või parooli olemasolu. Kui sõrmejäljega või näotuvastusega ekraaniluku avamine ebaõnnestub, siis küsib telefon vastavalt PIN koodi või parooli.

Näotuvastusel põhinev lukk

Alates Android 4.0 on võimalik kasutada näotuvastusel põhinevat ekraanilukku. Juhul kui näotuvastus ebaõnnestub, siis pakub seade võimalust ekraanilukk kas mustri või PIN koodi abil eemaldada. Kui näotuvastus on kolm korda järjest ebaõnnestunud, siis saab ekraanilukku eemaldada ainult kas mustriga või PIN koodiga.

Näotuvastuse põhist ekraanilukku on lihtne fotoga avada ja seega on see pigem mugavusfunktsionaalsus. Selleks, et näotuvastust oleks veidi raskem ära petta lisati Androidi võimalus nimega "Liveness check", mis kontrollib näotuvastuse ajal silmapilgutust. Kui "Liveness check" on sisse lülitatud ja seadme omanik silmi ei pilguta, siis seadet näotuvastusega avada ei saa. Silmapilgutamise tuvastamiseks saab kasutada videot või fotost tehtud animatsiooni kus seadme omaniku silmad pilguvad.

Seadme krüpteerimine

Ekraanilukk ilma andmete krüpteerimiseta ei kaitse seadmele salvestatud andmeid. Seetõttu tuleks nutiseadmel aktiveerida krüpteerimine, sest see kaitseb nutiseadmel olevaid andmeid juhul kui seade varastatakse või kui ründajal on piisavalt aega, et seadmel olevad andmed kopeerida. Lisaks sellele tuleks teha võimalikuks andmete kaugkustutamine, seda võib vaja minna kui seade varastatakse ja on kahtlus, et ründaja võib ekraaniluku avada või kui seadmel olevad andmed on krüpteerimata.

Android seadmes olevate andmete krüpteerimine

Androidi seade peaks toetama krüpteerimist alates Androidi versioonist 2.3.4. Alates Androidi versioonist 7 on krüpteerimine vaikimisi sisse lülitatud. Seadmes olevate andmete krüpteerimiseks tuleks valida: Settings -> Security -> Encrypt...

Oluline on tähele panna:

  • Pärast seadme krüpteerimist on iga kord ekraaniluku eemaldamiseks vaja sisestada PIN kood või parool, et seadmel olevaid andmeid kasutada (dekrüpteerida) saaks.
  • Parooli või PIN koodi kadumisel pole võimalik andmeid taastada.
  • Krüpteerimise poolt pakutav turvalisus sõltub kasutatava PIN või parooli turvalisusest, seega ei tohiks kasutada lihtsat PIN/parooli.
  • Terve seadme krüpteerimine võib võtta mitu tundi, selle aja jooksul peab seade olema vooluvõrgus ja laetuna. Telefoni väljalülitumisel tühja aku tõttu keset krüpteerimist võib osa andmeid või kõik andmed kaduma minna.
  • Juhul kui seadmes on ka SD-kaart, siis tuleks kindlaks teha, et ka see krüpteeriti, sest mõni seade nõuab SD-kaardi eraldi krüpteerimist.

Androidis kasutatavast krüpteeringust saab täpsemalt lugeda siit: Revisiting Android disk encryption ja The limitations of Android N Encryption.

iOS seadmes olevate andmete krüpteerimine

Alates iPhone 3GS, iPod Touch 3 gen. versioonidest lülitab ekraaniluku kasutamine automaatselt sisse ka andmete krüpteerimise. Samuti toimib see kõikidel iPad mudelitel. Alatest iOS versioonist 8 ei saa ka Apple ise enam krüpteeritud seadmeid dekrüpteerida, st neil pole tagavaravõtit.

Seadme asukoha tuvastamine

Android seadmete asukoha tuvastamine

Google pakub Androidi jooksutava seadme jälgimise võimalust läbi Google Find My Device. Selleks, et seadet jälgida peab see omama internetiühendust (mobiilne internet / wifi) ja lubama oma asukohta määrata.


Näide jälgitava seadme kuvamisest Android Device Manageri kaardil. Praeguseks kannab teenus uut nime ning ka kaardi välimus on muutunud, kuid sisuline pool jääb samaks.

Jälgimise käivitamiseks:

  1. Minge lehele https://www.google.com/android/find
  2. Nõustuge tingimusega, et teie asukoha andmed saadetakse Google-le
  3. Vaadake kaardilt, kus jälgitav seade paikneb
    1. kui see ei tööta, siis kontrollige, kas jälgitaval seadmel on internetiühendus
    2. kui see ei tööta, siis kontrollige, kas asukoha määramine on seadetes lubatud
      1. Settings -> Location access -> Access to my location
      2. Settings -> Location access -> GPS satellites
      3. Settings -> Location access -> Wi-Fi & mobile network location

iOS seadmete asukoha tuvastamine

iOS alates versioonist 5 sisaldab funktsionaalsust Find My (enne iOS 13 oli selle nimeks "Find My iPhone"). See võimaldab kuvada vastavat seadet kaardil, saata seadmele sõnumeid, kaugjuhtimise teel seadet lukustada või seadmel olevad andmed kustutada.

Vastava funktsionaalsuse aktiveerimiseks minge: Settings -> Apple ID -> Find My (On).

Oma seadme jälgimiseks saate kasutada rakendust "Find My" või minna veebilehele https://www.icloud.com/find. Seadme otsimiseks tuleb kõigepealt ennast Apple ID-d abil tuvastada ja pärast seda näete kaardil enda seadmeid. Vajutades seadet tähistavale täpile ilmub informatsiooni nupp, mille abil on võimalik seadet lukustada, seadmel heli mängida või seadmel olevad andmed kustutada. Apple ülevaade vastavast rakendusest asub siin: https://www.apple.com/icloud/find-my/.

Aktiveerimislukk iOS seadmetel

Alates iOS 7 on lisaks olemas veel ka seadme aktiveerimislukk (activation lock), mis sisuliselt seob seadme konkreetse Apple ID kontoga ning varastatud seadet ei saa kustutada ega uuesti kasutusele võtta ilma vastava konto parooli teadmata. Selle eesmärk on muuta iOS seadmete varastamine mõttetuks. Aktiveerimislukk on Find My üks osa.

Android


Android logo (allikas)

Põhjaliku ülevaate Androidi turvamudelist saab artiklist "Android Security, Pitfalls, Lessons Learned and BYOD". Lisaks tavalisele tavalisele Androidile on Nexus seeria telefonidel võimalik kasutada ka tugevdatud Androidi, mille nimeks on Copperhead. Copperhead kohta leiate infot selle kodulehelt.

Rakenduste õigused

Android nõudis varasemalt, et rakendused sisaldaksid nimekirja õigustest, mida nad võivad kasutada. Neid õigusi kuvatakse Google Play poes, juba paigaldatud rakendustes ja rakendusi paigaldades. Väga oluline on lugeda, mis õigusi paigaldatav rakendus tahab kasutada. Näiteks ei tohiks olla suvalisel mängul õigust saata SMS või teha telefonikõnesid. Olulised on nii õigused kui ka õiguste kombinatsioonid! Kui rakendus tahab kasutada liigseid õigusi, siis võib olla tegu pahavaraga. NB! Paljud rakendused kasutavad õigust Internetile reklaamide tõttu, kuna reklaamide allalaadimiseks on vaja võrguühendust.

Kahjuks ei olnud Androidi varasemate versioonidega (enne Android 6) võimalik paigaldada rakendusi nii, et lubatud oleks olnud ainult osa soovitud õigustest. Rakendust paigaldades tuli pakutavate õiguste nimekirjaga kas nõustuda või rakenduse paigaldamisest loobuda. Androidi põhjal arendatud CyanogenMod lubas anda rakendusele paigaldamisel ka alamosa nõutud õigustest.

Nimekiri kõikvõimalikest Androidi rakenduste õigustest on olemas siin: https://developer.android.com/reference/android/Manifest.permission.html. XDA foorumi teema Androidi õigustest koos selgitustega: http://forum.xda-developers.com/showthread.php?t=2341839. Tavakasutaja saab vaadata iga programmi õigusi eraldi või siis kasutada mõnda rakendust, mis kuvab kasutatavad õigused.

Iseseisev harjutus: Uurige Google Play ja enda seadme abil erinevate rakenduste õiguseid.

Alates versioonist 6 (Marshmallow) lubab Android juba paigaldatud rakendustelt eemaldada üksikuid privaatsuskriitilisi õigusi, näiteks kontaktide lugemine, asukoha küsimine, kaamera kasutamine jm. Kui rakendus püüab mõnda keelatud funktsionaalsust kasutada, siis küsitakse kasutajalt kinnitust.


Granulaarsemad rakenduste õigused alates Android versioonist 6 (allikas).

Ohud ja probleemid

Androidi ründevektorid

  • olemasolevate rakenduste ümberpakkimine / jäljendamine ja levitamine teistes marketites
  • rakendustele uuendusfunktsionaalsuse lisamine - pahavaraline osa võidakse laadida alles siis kui rakendus töötab ja seega muutub vastava pahavaralise rakenduse tuvastamine keerukamaks
  • pime allalaadimine (drive-by download, loe lähemalt)

Piraaditud rakendused

Piraaditud rakenduste paigaldamisel pole garantiid, et vastav rakendus oleks testitud ja ei sisaldaks pahavara. Vastupidi, piraaditud rakendused on üks parimaid viise pahavara levitamiseks. Kuna kasutajad tahavad saada tasuta funktsionaalsust, siis nad ei hooli väga palju turvariskidest. Samuti võib olla keeruline tuvastada, kas piraaditud rakendus sisaldab pahavara või on seda modifitseeritud ainult selleks, et see tasuta töötaks. Samuti ei ole alati piraaditud rakenduste puhul kogukonda, kes annaks rakendustele hinnanguid.

Androidi uuendamine on problemaatiline

Kuna Androidi lähtekood on avalik ja samuti on avalikud mõningad tarkvara vigu haldavad keskkonnad (bug trackers), siis saavad ründajad piisavalt infot, et tarkvaras olevaid vigu rünneteks kasutada. Seega tuleks ohtlikud vead kiiresti paigata, aga reaalsuses võib uuenduste loomiseks kuluda mitmeid kuid. Probleem seisneb selles, et uuenduste levitamine on seadmete tootjate jaoks kallis tegevus ja Androidi seadmete tootjaid on palju. Püsivara (firmware) uuendamiseks tuleb seda väga põhjalikult testida ning uuendatud püsivaraga seadmed mobiilioperaatorite jaoks uuesti sertifitseerida. Uuendatud püsivaraga seadmete sertifitseerimisele võib kuluda mitmeid kuid. Seetõttu paljude kasutajateni Android operatsioonisüsteemi uuemad versioonid ei jõuagi, kuigi riistvara sobiks küll. Seda illustreerib järgnev graafik Androidi versioonide levikust (Android versioonid käivad tähestikulises järjekorras: 4.1-4.3 Jelly Bean, 4.4 KitKat, 5 Lollipop, ...):


Android versioonide levik. Osakaal on antud kumulatiivsena. (Allikas: Android Studio ekraanitõmmis, jaanuar 2023)

Praktikas tähendab see kasutaja jaoks kahjuks seda, et uus seade saab toojalt vaid 1-2 tarkvarauuendust ning hiljem seadmele rohkem uuendusi, sh turvaaukude parandusi ei tule. Seda illustreerib praeguseks veidi vananenud, aga siiski relevantne Android 5 (Lollipop) ja iOS 8 kasutusse jõudmise võrdlus:


Android 5 ja iOS 8 kasutuselevõtu kiirus (Allikas: Apple).

Cambridge ülikoolis uuriti 20400 Androidi seadmelt kogutud andmeid ning selle põhjal leiti, et enamik seadmetest kasutab vananenud tarkvara, millel on turvaaugud. Rohkem infot vastava uuringu kohta leiate järgnevast artiklist: Security Metrics for the Android Ecosystem. Sarnast infot üritab endasi anda ka järgnev joonis, mis näitab, et suur osa Androidi seadmetest kasutab turvaauke sisaldavat tarkvara.


Turvaprobleeme omavad Androidi seadmed (allikas).

Olukord on siiski muutunud oluliselt paremaks seoses 2018 aasta veebruaris käivitunud programmiga Android Enterprise Recommended. Selle raames peavad seadmete tootjad täitma teatud tingimused, et saada vastavat märget. Näiteks selleks, et tingimustele vastata tuleb Google turvauuendused teha kättesaadavaks 90 päeva jooksul ning turvauuendusi pakkuda kuni kolm aastat pärast seadme esitlust. Enterprise solutions directory kuvab nimekirja seadmetest, mis on täitnud Android Enterprise Recommended nõuded. 27. veebruaril 2020 kandis vastavat silti 146 seadet 7833-st loetletust.

Tootja poolt modifitseeritud Android

Androidi seadmete tootjad sageli modifitseerivad tarkvara, näiteks kasutajaliidese komponente. See omakorda võib nõrgestada Androidi turvamudelit ja luua ründajate jaoks võimalusi seadme ründamiseks. Mõningaid näiteid tootjate poolt nõrgestatud turvamudelist leiab artiklist: "Android Security, Pitfalls, Lessons Learned and BYOD"

Projekt Treble (allikas)

Google proovib neid probleeme lahendada projektiga Treble. Selle projekti raames eraldatakse tootjapoolsed Androidi modifikatsioonid operatsioonisüsteemi kesksetest funktsionaalsustest. Seetõttu saavad tootjad saata Androidi uuendusi (näiteks turvauuendusi) lõppkasutajatele ilma, et oleks vaja endapoolseid muudatusi lisada. Projekt Treble toimib kõigil uutel Android seadmetel, mis omavad Android O (Oreo) versiooni. Rohkem infot vastava projekti kohta leiab siit: Android Developer's blog.

Soovitused Android seadme turvaliseks kasutamiseks:

  • lukustage ekraan (muster, PIN kood, parool, näotuvastus)
  • PIN kood või parool on antud juhul kõige turvalisemad. Miks?
  • paigaldage rakendusi ainult ametlikest allikatest
    • Google Play
    • Amazon Appstore
  • vaadake enne rakenduste paigaldamist tema populaarsust, hinnet ja kommentaare
  • rakendustel peaksid olema ainult need õigused, mida neil vaja läheb
  • ärge jagage rakendustele infot enda kohta
  • ärge hoidke privaatseid andmeid mälukaardil - mälukaardil ei kehti rakendusspetsiifilised piirangud ja seega saavad kõik rakendused mälukaardil kõigele ligi.
  • piraaditud rakendused võivad sisaldada pahavara, mida on raske tavakasutajal tuvastada
  • kui vajate suuremat turvataset, siis kasutage seadme krüpteerimist
  • märkige seadetes ära: disable USB debugging
  • kui te ei kasuta Bluetooth-i, siis lülitage see välja
  • ärge rootige oma seadet, kui selleks pole otsest vajadust

Lisamaterjalid

Androidi turvalisuse kohta saab hea ülevaate MIT kursuse 6.858 Computer Systems Security poolt pakutava video kaudu, mis on tasuta kättesaadav läbi MIT OpenCourseWare programmi. Viidatud video on lisamaterjal, mis on mõeldud tudengitele, kes tahaksid teada rohkem Androidi ehituse ja turvalisuse kohta. Paralleelselt videoga tasub lugeda artiklit, mille põhjal vastav loeng on kokku pandud: Understanding Android Security.

iOS

Rakenduste õigused


iOS rakendus küsib õigusi (allikas)

Erinevalt Androidist ei näidata kasutajale rakenduse paigaldamise ajal õigusi, mida see võib kasutada. See tuleneb iOS ja Androidi turvaarhitektuuri erinevast ülesehitusest. Android jätab turvalisuse tagamiseks vajaminevate otsuste tegemise kasutajale. iOS rakendused on põhjalikumalt testitud ja seega on neile antud ka suuremad õigused. Siiski küsitakse iga rakenduse kohta kasutajalt kinnitust kui vastav rakendus soovib (esmakordselt) ligi pääseda teatud isiklike andmetele, näiteks seadme asukoht, kasutaja kalender, pildid ja kontaktid, Bluetooth seaded, sotsiaalvõrgustikud, jne.

Piraaditud rakendustega seotud ohud

Jailbreak muudab võimalikuks piraaditud rakenduste paigaldamise. Piraaditud rakenduste paigaldamisel pole garantiid, et vastav rakendus oleks testitud ja ei sisaldaks pahavara. Vastupidi, piraaditud rakendused on üks parimaid viise pahavara levitamiseks. Kuna kasutajad tahavad saada tasuta funktsionaalsust, siis nad ei hooli väga palju turvariskidest. Samuti võib olla keeruline tuvastada, kas piraaditud rakendus sisaldab pahavara või on seda modifitseeritud ainult selleks, et see tasuta töötaks.

Soovitused

  • lukustage ekraan (pin kood, parool), kusjuures parool võiks olla vähemalt 6 sümbolit pikk
  • ärge rootige (jailbreak) oma seadet
  • piraaditud rakendused võivad sisaldada pahavara, mida on raske tavakasutajal tuvastada

Lisamaterjalid

Kui keegi tahab saada rohkem infot iOS turvalisuse kohta, siis leiate informatsiooni Apple poolt loodud dokumendist: Apple Platform Security.

iOS vs Android - avatud või suletud süsteem?

Miks leitakse rohkem pahavaralisi Androidi rakendusi kui iOS (iPhone, iPadi) rakendusi? Põhjus seisneb selles, et Android ja iOS kasutavad erinevat loogikat rakenduste levitamiseks. Apple kasutab suletud süsteemi, kus kasutajatel on võimalik rakendusi allalaadida ainult Apple enda poest App Store. Google kasutab avatud süsteemi, mille kohaselt saavad kasutajad rakendusi alla laadida ja paigaldada erinevatest allikatest.

Apple iOS suletud süsteem

  • Üks allikas rakenduste paigaldamiseks - App Store
    • jailbreak annab võimaluse teiste rakenduste paigaldamiseks
    • kõik vastuvõetud rakendused signeeritakse digitaalselt Apple poolt
  • App Store seab piirangud vastuvõetavatele rakendustele
    • piirangute kirjeldused - https://developer.apple.com/app-store/review/
  • App Store vaatamiseks tuleb kasutada vastavat seadet või programmi iTunes
    • mõningaid rakendusi on võimalik näha ka veebipoe kaudu: App Store
  • App Store saadetud rakendusi kontrollitakse lähtuvalt piirangutest ning testitakse pahavara suhtes
    • siiski on võimalik kontrollsüsteemist mööda pääseda - http://www.theguardian.com/technology/appsblog/2013/aug/19/ios-malware-apple-iphone-ipad-jekyll
    • pahavaralisi rakendusi on leitud iOS-seadmetel tunduvalt vähem kui Android-seadmetel
  • Appid käivitatakse aedikutes (sandbox)
    • Kasutaja ei näe, mis õiguseid rakendus kasutada võib
    • iOS lähtekood on suletud

Google Android avatud süsteem

  • Võimalik paigaldada erinevaid rakenduste allikaid
    • näiteks Amazon Appstore http://www.amazon.com/mobile-apps/b?ie=UTF8&node=2350149011
    • Install Amazon Appstore http://www.amazon.com/gp/mas/get/android
  • Rakenduste avaldamine Google Play poes on lihtsam võrreldes Apple App Store-ga
    • Developer Distribution Agreement https://play.google.com/about/developer-distribution-agreement.html
    • Google Play https://play.google.com/store?hl=en
  • Rakendustel on kindlaks määratud õigused, iga rakendus käivitatakse eraldi aedikus (sandbox)
  • Rakendused signeeritakse arendajate poolt
  • Google Play poest ja sealt alla laetud rakendusi kontrollib pahavara suhtes Google Play Protect süsteem. Paljud pahavaralised rakendused avastatakse kogukonna poolt, eriti teistes rakenduste poodides.
  • Androidi lähtekood on avatud

Seega, Apple iOS pakub oma suletuse tõttu mõnevõrra suuremat turvalisust. Nii iOS kui Androidi seadmeid on võimalik rootida (iOS puhul kasutatakse sisuliselt sama asja kohta mõistet jailbreak). See võimaldab kasutajal tootja piirangutest mööda minna (näiteks pääseda ligi operatsioonisüsteemi failidele), aga samas võib rootimine muuta ka seadme ründamise lihtsamaks.

Rootimisega saab:

  • Android
    • paigaldada modifitseeritud operatsioonisüsteemi, näiteks GrapheneOS
    • eemaldada seadme või operaatori rakendusi
    • muuta mõningaid rakendusi kiiremaks
    • lubada seadme kasutamist teise operaatori võrgus
  • iOS
    • paigaldada rakendusi alternatiivsetest allikatest
    • pääseda juurde seadmel olevatele failidele
    • lubada seadme kasutamist teise operaatori võrgus

Privaatset suhtlemist võimaldavad rakendused

Enamasti krüpteerivad traditsioonilised suhtlusprogrammid ühendust klientide ja keskserveri vahel (sarnaselt toimivad näiteks Skype ja Google Hangouts). Seetõttu saavad teenusepakkujad edastatavaid sõnumeid lugeda ning vajadusel neid ka muuta. Seega võib vastavate programmide kasutamisel tekkida oht nii sõnumite konfidentsiaalsusele kui ka terviklusele. Antud probleemi lahendamiseks saab kasutada otspunktkrüpteerimist (end-to-end encryption), mis võimaldab luua krüpteeritud ühenduse suhtlevate osapoolte vahel nii, et keskserver ei saa sõnumeid lugeda ega muuta. Siiski on väga keeruline luua suhtlusprotokolle ja suhtlusrakendusi, mis toimiksid turvaliselt igas olukorras.

Signal on avatud lähtekoodiga privaatsust tagav suhtlemisrakendust, mis põhinev otspunktkrüpteerimisel. Selle rakenduse arenduse taga on krüptograafid ning selles kasutatakse uuenduslikke tehnoloogiaid kasutajate privaatsuse kaitsmiseks. Signal võimaldab teha krüpteeritud kõnesid ning krüpteeritud tekstisuhtlust. Signal on tasuta, avatud lähtekoodiga ja saadaval GPLv3 litsentsi alusel. Signali protokolli hakkasid kasutama ka tuntud suhtlusrakendused nagu WhatsApp, Facebook Messenger, Google Allo, Skype. Siiski on Signali protokoll koos otspunktkrüpteerimisega vaikimisi aktiveeritud ainult WhatsApp poolt. Seega tavapäraselt Skype kasutades Signali protokolli ja otspunktkrüpteeringut ei kasutata. Lisaks on oluline mõista, et Signal on rakendus, millel puuduvad ärilised eesmärgid erinevalt teistest eelnevalt loetletud rakendustest.

  • Signal Androidile
  • Signal iOS-ile

Lisaks eelnevatele pakub otspunktkrüpteerimist ka Apple iMessage protokoll, mida kasutatakse programmis Messages (sisse ehitatud macOS ja iOS). Erinevalt eelnevalt kirjeldatud protokollidest ei ole Apple iMessage protokoll avalik ning võtmete haldusega tegeleb Apple keskserver. 2016 aastal leiti iMessage protokollist mõningaid probleeme, nende kohta saate lugeda järgnevast blogipostitusest: Attack of the Week: Apple iMessage.

Kasulikud lingid

  • Raportid
    • F-Secure, Mobile Threat Report Q1 2014 (2014)
    • F-Secure Threat Report 2015 (2015)
    • Defending mobile devices for high level officials and decision-makers (2015)
    • Mobile Threat Intelligence Report Q1 2017 (2017)
    • Data Security on Mobile Devices: Current State of the Art, Open Problems, and Proposed Solutions (2021)
  • Nutiseadmete kahjurvara ja ründed
    • Smudge Attacks on Smartphone Touch Screens (2010)
    • A Survey of Mobile Malware in the Wild (2011)
    • Dissecting Android Malware: Characterization and Evolution (2012)
    • Hackers claim to have defeated Apple's Touch ID print sensor (2013)
    • AndroidVulnerabilities.org (2015)
    • 234 Android Applications Are Currently Using Ultrasonic Beacons to Track Users (2017)
    • Yet Another Android Malware Infects Over 4.2 Million Google Play Store Users (2017)
    • So You Think You Can Secure Your Mobile Phone With a Fingerprint? (2017)
  • Erinevad artiklid
    • Managing smart phone security risks (2010)
    • Permission Re-Delegation: Attacks and Defenses (2011)
    • The iPhone Has Passed a Key Security Threshold (2012)
    • Is Apple Picking a Fight With the U.S. Government? (2014)
    • The FBI spent $1.3M to crack the iPhone — this hacker spent just $100 (2016)
    • The bumpy road towards iPhone 5c NAND mirroring (2016)
    • MAC randomization: A massive failure that leaves iPhones, Android mobes open to tracking (2017)
    • Secret chips in replacement parts can completely hijack your phone’s security (2017)
  • iOS turvamudel
    • Apple Platform Security
    • iOS, Your OS, Everybody’s OS: Vetting and Analyzing Network Services of iOS Applications
  • Androidi turvamudel
    • "Android Security, Pitfalls, Lessons Learned and BYOD" (2013)
    • ABS: Android security underpinnings
    • Revisiting Android disk encryption (2014)
    • Security Metrics for the Android Ecosystem (2015)
    • The limitations of Android N Encryption (2016)
    • Here comes Treble: A modular base for Android (2017)
  • Ülevaade turvalistest sõnumivahetusrakendusest (lisaks muule jälgimisega seonduvale)
    • EFF surveillance self-defence
  • Arvutiteaduse instituut
  • Loodus- ja täppisteaduste valdkond
  • Tartu Ülikool
Tehniliste probleemide või küsimuste korral kirjuta:

Kursuse sisu ja korralduslike küsimustega pöörduge kursuse korraldajate poole.
Õppematerjalide varalised autoriõigused kuuluvad Tartu Ülikoolile. Õppematerjalide kasutamine on lubatud autoriõiguse seaduses ettenähtud teose vaba kasutamise eesmärkidel ja tingimustel. Õppematerjalide kasutamisel on kasutaja kohustatud viitama õppematerjalide autorile.
Õppematerjalide kasutamine muudel eesmärkidel on lubatud ainult Tartu Ülikooli eelneval kirjalikul nõusolekul.
Courses’i keskkonna kasutustingimused