Android K: Kaikki uudet suojaus- ja tietosuojaominaisuudet tulevat Android 10:een

Google I/O: ssa saimme tietää Android Q: n tuomista parannuksista. Uusia suojaus- ja tietosuojaominaisuuksia ja parannuksia on kaikkialla uudessa Android-käyttöjärjestelmässä.

Jokainen uusi Android-käyttöjärjestelmän versio tuo parannuksia lähes jokaiseen osa-alueeseen, kuten suunnitteluun, ominaisuuksiin, sovellusliittymiin ja muihin. Google I/O: ssa aiemmin tässä kuussa saimme tietää kaikesta Android Q: n parannuksia tulee tuomaan, ja tietysti uusia yksityisyys- ja turvallisuusilmoituksia ei jätetty pois konferenssista. Alustan suojaus on yksi käyttöjärjestelmän tärkeimmistä näkökohdista, erityisesti käyttöjärjestelmässä, jonka tuomme mukanamme kaikkialle taskuissamme. Jos Android ei olisi turvallinen, emme luottaisi siihen puolet niin monista toiminnoista kuin meillä. NFC-maksut eivät tule kysymykseen, tiedostojen jakaminen olisi parhaimmillaan kyseenalaista ja muihin laitteisiin yhdistäminen olisi suorastaan ​​hulluutta. Huolimatta pitkään jatkuneesta version pirstoutumisesta, Google on onnistunut pitämään tietoturvaongelmien määrän mahdollisimman pienenä.

Androidista on kehittynyt käyttöjärjestelmä, joka on sekä monipuolinen että erittäin turvallinen. Mutta aina on tietysti parantamisen varaa. Tähän tietoturvaan vaikuttavat monet tekijät, ja muutamaa niistä parannetaan jollain tavalla Android Q: n avulla.


Salaus

Yksi perusturvamenetelmistä on tärkeää, että jokainen laite tukee vahvaa salausta. Monet OEM-valmistajat toimittavat näinä päivinä laitteilleen erillisen salauslaitteiston. Vaikka tämä on hyödyllistä, se on myös kallista. Sellaisenaan omistettu laitteisto on yleensä rajoitettu keskitason ja korkean tason laitteisiin. Tämä ei tarkoita sitä, että alhaiset laitteet ei voi tukee salausta, mutta ilman laitteistokiihdytettyä salausta yleinen käyttökokemus heikkenee hitaiden luku-/kirjoitusaikojen vuoksi. Siinä Adiantum tulee mukaan.

Adiantum

Helmikuussa Google julkisti Adiantumin vaihtoehtona salausalgoritmi halvempiin puhelimiin jotka eivät tue tavallisia AES-käskysarjoja. Adiantum on erityisesti suunniteltu toimimaan ilman erillistä laitteistoa. Se toimii kevyempi vaihtoehto Androidin tavalliselle AES-salaukselle. Googlen vertailuarvot kerro meille, että se on itse asiassa 5x nopeampi kuin AES, ja haittapuolena on, että se vaarantaa hieman turvallisuuden. Tämä tekee siitä ihanteellisen ehdokkaan alemman hintaluokan puhelimiin, kuten Android Go Editionin käyttämiin puhelimiin. Adiantum on tarkoitettu myös tuotteille, kuten älykelloille ja erilaisille esineiden internet-laitteille.

Tähän asti Adiantum oli valinnainen; valmistajat saattoivat ottaa sen käyttöön laitteissa, joissa on Android Pie, mutta se ei ollut oletussalausalgoritmi. Adiantum on nyt mukana Android Q: ssa. Tämä tarkoittaa, että kaikkien Q: lla käynnistyvien laitteiden on salattava käyttäjätiedot ilman poikkeuksia. Tämän seurauksena Android Q: lla käynnistyvillä laitteilla on taatusti tallennussalaus, oli se sitten Adiantumin kautta tai ei.

Jetpackin turvallisuuskirjasto

Jetpack on joukko Android-tukikirjastoja ja yksi uusimmista lisäyksistä on alfassa: Jetpack Security Library. Kirjasto yksinkertaistaa sovelluksesi suojausprosessia käsittelemällä asioita, kuten laitteiston tukemien avainsäilöiden hallintaa ja avaimien luomista ja vahvistamista.

TLS 1.3

Tallennus ei kuitenkaan ole ainoa alueen salaus, jota on parannettu. Viestintä muiden laitteiden kanssa on parantunut huomattavasti, kun TLS 1.3 -tuki oletuksena. TLS 1.3 on uusin verkon salausstandardi, jonka IETF viimeisteli elokuussa 2018. TLS 1.3 tarjoaa enemmän yksityisyyttä tiedonvaihdossa salaamalla enemmän neuvottelukättelyjä. Tämän lisäksi se on nopeampi kuin TLS 1.2, koska koko edestakainen matka on erotettu yhteyden muodostamisen kättelystä. Yhdessä tehokkaampien nykyaikaisten algoritmien kanssa tämä lisää nopeutta jopa 40 %.

TLS 1.3 Google Chromessa. Lähde: Google.

TLS on nyt päivitettävissä suoraan Google Playsta, koska se on osa "Conscrypt"-komponenttia. Voit lukea lisää siitä ja Project Mainlinesta tässä.

Koska luotamme niin moniin arkaluontoisiin tapahtumiin laitteissamme päivittäin, päivitetty TLS on tärkeämpi kuin koskaan. Säilytä kuten maihinnousukortit - ja jopa digitaaliset ajokortit jossain vaiheessa tulevaisuudessa - Androidissa tarkoittaa, että kaikkien laitteiden tulee salata käyttäjätiedot mahdollisimman hyvin. Adiantum ja pakotettu salaus tasoittavat tietä jopa kaikkein herkimpien tietojen tallentamiselle halvimmille laitteille. Mutta salaus ei ole ainoa tapa, jolla Google lisää Androidin turvallisuutta Q-julkaisussa.


Käyttöoikeudet ja tietosuojamuutokset Android Q: ssa

Kattava tallennustila

Scoped Storage on uusi suojakeino, jota käytetään estämään sovelluksia lukemasta/kirjoittamasta ulkoisessa tallennustilassa olevia tiedostoja, jotka eivät sisälly niiden omaan hiekkalaatikkokohtaiseen sovelluskohtaiseen hakemistoon. Googlen tavoite on kolmiosainen: parempi attribuutio siitä, mitkä sovellukset voivat hallita tiedostoja, sovellustietojen suojaus ja käyttäjätietojen suojaus.

Google kaksinkertaistaa MediaStore-sovellusliittymän jaetun ääni-, video- ja kuvasisällön. Oletuksena kaikki sovellukset voivat lisätä, muokata tai poistaa omia tiedostojaan MediaStoreen. Kuvat, MediaStore. Video ja MediaStore. Äänikokoelmat ilman käyttöoikeuksia. Android Q lisää myös uuden MediaStore. Lataukset kokoelma käyttäjien lataaman sisällön tallentamiseen, johon kaikki MediaStore APIa käyttävät sovellukset voivat osallistua. Vaikka hiekkalaatikkosovelluskohtaisiin hakemistoihin tallennetut tiedostot poistetaan asennuksen poistamisen yhteydessä, kaikki MediaStore-kokoelmiin lisätyt tiedostot säilyvät asennuksen poistamisen jälkeen.

Sovelluksen on käytettävä Storage Access Frameworkia, jotta voit käyttää toisen sovelluksen luomia tiedostoja – riippumatta siitä, onko tiedosto jossakin MediaStore-kokoelmista tai niiden ulkopuolella. Lisäksi kuvien EXIF-metatiedot poistetaan, ellei sovelluksellesi ole myönnetty uutta ACCESS_MEDIA_LOCATION-lupaa. Android Q: ssa sovellukset voivat myös hallita, mihin tallennuslaitteeseen media siirretään, kysymällä sen taltion nimeä käyttämällä getExternalVolume().

Google asetti alun perin Scoped Storage -rajoitukset kaikille Android Q: n sovelluksille riippumatta niiden tavoitesovellusliittymätasoista, mutta palautteen jälkeen yritys on antaa kehittäjille enemmän aikaa tehdä säätöjä. Täydelliset tiedot Scoped Storage -muutoksista löytyvät tällä sivulla, ja saat lisätietoja Googlen suosituksista jaetun tallennustilan parhaista käytännöistä katsomassa tätä Google I/O: ta puhua.

Varoitukset sovelluksista, jotka on kohdistettu API-tasolle < 23

Luparajoitukset eivät kuitenkaan lopu tähän. Alle 23 (Android Lollipop tai vanhempi) API-tasolle kohdistetun sovelluksen asentaminen saa käyttöjärjestelmän näyttämään käyttäjälle varoituksen, jos sovellus pyytää arkaluonteisia käyttöoikeuksia asennuksen yhteydessä. Ennen asennusta käyttäjillä on mahdollisuus määrittää manuaalisesti, mitkä luvat he haluavat myöntää sovellukselle ennen jatkamista. Näin ollen Android Q ei enää salli sovellusten kiertää suorituksenaikaisia ​​käyttöoikeuksia.

CopperheadOS: n tavoin myös Android Q: n varastossa oleva käyttöoikeus antaa nyt käyttäjän poistaa käytöstä kaikki pyydetyt vaaralliset luvat ennen sovelluksen käynnistämistä ensimmäistä kertaa. Tämä koskee vain sovelluksia, jotka on kohdistettu API-tasolle 22 tai sitä alempaan, eli ennen suoritusaikaisten käyttöoikeuksien käyttöönottoa (Android Marshmallowissa.)

Lopullinen SYSTEM_ALERT_DEPRECATION Bubbles API: n hyväksi

Bubbles API toiminnassa. Lähde: Google.

Peittokuvan lupaa (SYSTEM_ALERT_WINDOW) ei voida enää myöntää sovelluksille, jotka toimivat Android Q: ssa (Go Edition). Muiden kuin Go Edition -laitteiden osalta Google ajaa kehittäjiä kohti uutta Bubbles API: ta. Bubbles API on ominaisuus, joka esiteltiin Android Q Beta 2 joka mahdollistaa toiminnallisuuden, joka on kuin Facebook Messengerin chat-päät. Sovellusten ilmoitukset näkyvät pieninä kuplina näytön reunoilla, jotka laajenevat, kun käyttäjä napauttaa. Kuplassa sovellus voi näyttää toiminnon.

Tämä muutos oli välttämätön, koska sovellusten salliminen vapaasti piirtää peittokuvia muiden sovellusten päälle aiheuttaa selviä tietoturvariskejä. surullisen"Viitta ja tikari"exploit käytti tätä heikkoutta laajasti. Overlay API: n toimintoja on rajoitettu jo Android Oreossa, mutta nyt Android Q: n Go-versio on kokonaan poistanut pääsyn sovellusliittymään tulevasta julkaisusta, jotta se poistetaan kokonaan käytöstä.

Taustatoimintojen käynnistysrajoitukset

Taustalla olevat sovellukset eivät voi enää automaattisesti käynnistää toimintoa puhelimen ollessa lukitsematta, riippumatta niiden tavoitesovellusliittymätasosta. Voit lukea luettelon ehdoista, joilla sovellukset voivat nyt käynnistää toimintoja tässä. Taustasovellusten, jotka eivät täytä näitä ehtoja ja jotka haluavat käynnistää toiminnan kiireesti, on nyt ilmoitettava asiasta käyttäjälle ilmoituksella. Jos ilmoitus luodaan odottavalla koko näytön tarkoituksella, tarkoitus käynnistetään välittömästi, jos näyttö on pois päältä – hyödyllinen hälytyksissä tai saapuvissa puheluissa.

Taustaleikepöydän käyttörajoitus

Taustaleikepöydän käyttö on ei ole enää mahdollista. Mikään sovellus, joka ei ole etualalla tai ole asetettu oletussyöttötavaksi, ei voi lukea leikepöytääsi millään tavalla. Tämä iskee erityisen voimakkaasti sovelluksiin, kuten leikepöydän hallintaohjelmiin. Google sanoo, että tämä muutos vaikuttaa vain sovelluksiin, jotka on kohdistettu yksinomaan Android Q: lle, mutta testauksemme osoittavat, että rajoitus ei ole syrjivä. mikään kokeilemamme sovellus ei voinut nähdä leikepöytää.

Tämä muutos on tietysti järkevä. Kopioimme usein arkaluontoisia tietoja leikepöydälle, kuten salasanoja ja luottokorttitietoja, mutta on silti sääli nähdä leikepöydän ylläpitäjien menevän hukkaan.

Sijainnin käyttöoikeus vain sovelluksen ollessa käytössä

Uudet sijainnin käyttöoikeusasetukset

Uusi käyttäjäasetus sallii sovellusten saavuttaa sijaintisi vain sovelluksen ollessa käytössä. Uusin Android Q beta on myös lisännyt ilmoituksen, joka muistuttaa, oletko myöntänyt sovellukselle pysyvän käyttöoikeuden sijaintiin.

Roolit

Roolit

Uusi Roles-sovellusliittymä on lisätty. Roolit ovat pohjimmiltaan ryhmät, joilla on esiasetetut käyttöoikeudet. Esimerkiksi galleriaroolia käyttävillä sovelluksilla voi olla pääsy mediakansioihisi, kun taas sovellukset, joilla on soittajarooli, voivat käsitellä puheluita. Sovelluksissa, joille käyttäjä on myöntänyt tietyn roolin, on myös oltava vaaditut komponentit. Esimerkiksi galleriaroolia käyttävillä sovelluksilla on oltava toimintatarkoitussuodatin Android.tahallisuus.toiminta.MAIN ja luokan tarkoitussuodatin android.intent.category. APP_GALLERIA näkyäksesi galleriasovelluksena asetuksissa.

Anturit pois päältä Pika-asetukset-ruutu

Anturien pika-asetukset -ruutu

Siellä on uusi "Anturit pois" -pika-asetusruutu, joka kytkee lukemat pois päältä kaikki anturit (kiihtyvyysanturi, gyroskooppi jne.) laitteellasi todellisen yksityisyyden takaamiseksi. Tämä pika-asetukset-ruutu on oletuksena piilotettu, mutta se voidaan ottaa käyttöön menemällä kehittäjäasetusten "pika-asetusten kehittäjäruutuihin".

Rajoitukset tiedostoon /proc/net

Sovellukset eivät voi enää pääsy proc/net, jolloin netstatin kaltaiset palvelut eivät enää toimi. Tämä suojaa käyttäjiä haitallisilta sovelluksilta, jotka seuraavat, mihin verkkosivustoihin ja palveluihin he muodostavat yhteyden. Sovellusten, jotka tarvitsevat jatkuvan pääsyn, kuten VPN: t, on käytettävä NetworkStatsManager ja ConnectivityManager luokat.

Satunnaistetut MAC-osoitteet

MAC-osoitteesi on yksilöllinen tunniste, jota verkot käyttävät muistaakseen, mikä laite on mikä. Android Q: ssa laitteesi käyttää uutta, satunnaistettua MAC-osoitetta aina, kun muodostat yhteyden uuteen verkkoon. Tuloksena, verkot eivät voi seurata sijaintiasi yhdistämällä puhelimesi MAC-osoitteen WiFi-verkkoihin, joihin muodostat yhteyden. Sovellukset voivat edelleen saada laitteen todellisen tehdas-MAC-osoitteen getWifiMacAddress() komento.


Alustan karkaisu Android Q: ssa

Yksi Android-virhe ei tarkoita, että hyökkääjillä on nyt täysi pääsy käyttöjärjestelmään tai että he voivat ohittaa kaikki suojajärjestelmät. Tämä johtuu osittain useista suojatoimista, kuten prosessin eristämisestä, hyökkäyspinnan vähentämisestä, arkkitehtuurin hajoamisesta ja hyväksikäytön lievennyksistä. Nämä suojatoimenpiteet tekevät haavoittuvuuksista vaikeampia tai jopa mahdottomia hyödyntää. Tämän seurauksena hyökkääjät tarvitsevat yleensä useita haavoittuvuuksia ennen kuin he voivat saavuttaa tavoitteensa. Aiemmin olemme nähneet hyökkäyksiä kuten DRAMMER jotka toimivat ketjuttamalla useita hyväksikäyttöjä yhteen.

Android Q ottaa tämänkaltaisia ​​suojatoimia ja soveltaa niitä herkemmille alueille, kuten media- ja Bluetooth-komponentteihin, sekä ytimeen. Tämä tuo mukanaan joitain merkittäviä parannuksia.

  • Rajoitettu hiekkalaatikko ohjelmistokoodekeille.
  • Lisääntynyt desinfiointiaineiden tuotantokäyttö vähentääkseen kokonaisia ​​haavoittuvuuksia epäluotettavaa sisältöä käsittelevissä komponenteissa.
  • Shadow Call Stack, joka tarjoaa takareunan ohjausvirtauksen eheyden (CFI) ja täydentää LLVM: n CFI: n tarjoamaa eteenpäin suuntautuvaa suojausta.
  • Osoitetilan asettelun satunnaistamisen (ASLR) suojaaminen vuodoilta käyttämällä XOM-muistia (eXecute-Only Memory).
  • Esittelyssä Scudo-vahvistettu allokaattori, joka vaikeuttaa useiden kasaan liittyvien haavoittuvuuksien hyödyntämistä.

Tämä on paljon ohjelmistojargonia. Asian luu on, että ensinnäkin ohjelmistokoodekit toimivat nyt hiekkalaatikoissa, joilla on vähemmän oikeuksia, mikä tarkoittaa vähemmän todennäköistä, että haittaohjelmat pystyvät suorittamaan komentoja, jotka voivat vahingoittaa laitettasi, kuten kotelossa / Ramppikuume jo vuonna 2015.

Rajoitettu hiekkalaatikko ohjelmistokoodekeille. Lähde: Google.

Toiseksi Android tarkistaa nyt rajojen ulkopuolisen matriisin pääsyn useammissa paikoissa sekä ylivuodot. Ylivuotojen estäminen ja prosessien ohjeistaminen epäonnistumaan turvallisesti vähentää käyttäjätilan haavoittuvuuksien prosenttiosuutta merkittävästi. Tämä tarkoittaa sitä, että jos haittaohjelma yrittää tahallaan saada jotain kaatumaan päästä käsiksi tietoihin, joita ei ole olemassa, Android tunnistaa nyt tämän ja poistuu ohjelmasta kaatuu.

Kolmanneksi Shadow Call Stack suojaa paluuosoitteet tallentamalla ne erilliseen varjopinoon, jolloin ne eivät ole tavallisten ohjelmien käytettävissä. Paluuosoitteet ovat tyypillisesti osoittimia toimintoihin, joten näiden osoitteiden suojaaminen on tärkeää sen varmistamiseksi, että hyökkääjät eivät pääse käsiksi toimintoihin, joihin heidän ei pitäisi pystyä.

Neljänneksi, ASLR on suojausmenetelmä, joka satunnaistaa, missä ohjelmat on tallennettu muistiin, mikä tekee siitä vaikeampi selvittää, mihin ohjelmia on tallennettu muistiin muiden ohjelmien sijainnin perusteella ohjelmia. Vain eXecute -muisti vahvistaa tätä tekemällä koodista lukukelvottoman.

Lopuksi Scudo on dynaaminen keon allokaattori, joka hallitsee muistia ennakoivasti tavalla, joka tekee kasaan perustuvista haavoittuvuuksista paljon vaikeampaa hyödyntää. Voit lukea siitä lisää tässä.


Todennus

Päivitykset BiometricPromptiin Android Q: ssa

Google esitteli uuden BiometricPrompt APIn yli vuosi sitten, vuonna Android P -kehittäjän esikatselu 2. Sen oli tarkoitus olla yleinen Android-kehote biometrisille lukituksen avausmenetelmille. Ideana on, että laitteet, jotka tukevat muutakin kuin vain sormenjälkien skannausta, esim. Irisskannaus Samsungin Galaxy S -linjalla pystyy käyttämään näitä menetelmiä, kun sovellukset pyytävät vahvistusta.

Android Q lisää vankan tuen kasvojen ja sormenjälkien todentamiselle sekä laajentaa API: ta tukemaan implisiittistä todennusta. Eksplisiittinen todennus edellyttää, että käyttäjä todentaa jollakin tavalla ennen jatkamista, kun taas implisiittinen todennus ei vaadi enempää käyttäjän toimia.

BiometricPrompt API implisiittinen ja eksplisiittinen kulku. Lähde: Google.

Tämän lisäksi sovellukset voivat nyt tarkistaa, tukeeko laite biometristä todennusta yksinkertaisella funktiokutsu, jolloin he eivät tuhlaa aikaa BiometricPromptin kutsumiseen laitteissa, jotka eivät sitä tee tukea sitä. Ihanteellinen käyttötapa tälle olisi, jos sovellukset haluavat antaa "Ota biometrinen kirjautuminen käyttöön" -asetuksen sen perusteella, tukeeko laite biometristä todennusta vai ei.

Sähköisen ID-tuen rakennuspalikoita

Aiemmin tänä vuonna löysimme todisteita siitä, että Google on työskentelee sähköisten henkilöllisyystodistusten tuen parissa Androidissa. Google kertoi meille I/O: ssa ominaisuuden edistymisestä. Google sanoo työskentelevänsä ISO: n kanssa mobiiliajokorttien käyttöönoton standardoimiseksi, ja sähköiset passit ovat työn alla. Google tarjoaa kehittäjille Jetpack-kirjaston, jotta identiteettisovelluksia voidaan tehdä.


Project Mainline Android Q: ssa

Project Mainline on Googlen merkittävä hanke vähentääkseen tiettyjen järjestelmämoduulien ja sovellusten pirstoutumista. Google hallitsee noin 12 järjestelmäkomponentin päivityksiä Play Kaupan kautta. Olemme keskustelleet Project Mainlinesta perusteellisesti edellisessä artikkelissa jos olet kiinnostunut lukemaan lisää.


Johtopäätös

Tietoturva on aina ollut keskeinen osa Androidin kehitystä. Google on tehnyt vaikuttavaa työtä pitääkseen Androidin ajan tasalla uusimpien suojausominaisuuksien kanssa sekä tehnyt joitakin omia innovaatioitaan. He jatkavat tätä kehitysprosessia Android Q: n kanssa, ja se on täynnä suojausominaisuuksia, jotka on tehty varmistamaan, että tietosi ovat turvallisempia kuin koskaan ennen.


Lähde 1: Mitä uutta Android Q Securityssa [Google]

Lähde 2: Suojaus Androidissa: Mitä seuraavaksi [Google]

Lähde 3: Jonotus Hardening Enhancements [Google]

Mishaal Rahmanin ja Adam Conwayn panoksella.