Google'i Project Mainline Android Q-s aitab kiirendada turvavärskendusi

Google I/O 2019 arendajakonverentsi ajal kuulutas Google välja Project Mainline’i – jõupingutusi Android Q moodulite kaudu turvavärskenduste kiirendamiseks.

Androidi versiooni killustatus on üks suurimaid väljakutseid, mida Google peab lahendama. Kuigi Google Pixeli nutitelefonid on tänu Pixeli ja Pixeli uskumatutele pingutustele turul ühed kõige turvalisemad nutitelefonid. AOSP insenerid ja paljud teised nutitelefonid on vananenud OS-i versioonide või aegunud turvapaiga tõttu ärakasutamise suhtes haavatavad tasemed. Gartneri viimane aruanne näitab, et Android 9 Pie on veel uskumatult turvaline OS ainult umbes 10% kõigist nutitelefonidest on välja antud.

2019. aasta mobiilioperatsioonide ja seadmeturbe ülevaade: platvormide võrdlus. Allikas: Gartner. Läbi: Google.

Google tegeleb versioonide killustatuse vastu selliste algatustega nagu Projekt Treble, Androidi oluline ümberarhitektuur, mille tulemuseks on Android OS-i raamistiku komponentide ja müüja HAL-i komponentide eraldamine, laiendatud Linuxi kernel LTS

, kohustuslikud turvapaiga värskendused 2 aastat ja Android Enterprise soovitatav. Google I/O 2019. aastal teatas ettevõte oma uusimast algatusest turvavärskenduste kiirendamiseks: Project Mainline for Android Q.

Project Mainline: Android Q süsteemimoodulite värskendamine Google Play kaudu

Viimase paari kuu jooksul oleme jälginud midagi nimega "APEX"AOSP-s. APEX või Android Pony EXpress, on uus paketitüüp, mis sarnaneb APK-ga. Androidi rakenduse asemel on APEX aga koduks omakeelsele või klassiraamatukogule, eelkompileeritud kood, mida saavad kutsuda Androidi rakendused, riistvara abstraktsioonikihid (HAL) ja Android Kestus (ART). Sarnaselt APK-ga saab APEX-pakette kasutajatele serveerida Androidis traditsiooniliste pakettide installimeetodite kaudu: Google Play pood/paketihaldur või ADB.

APEX-mooduleid saab alglaadimisprotsessis kasutada palju varem kui APK-põhiseid mooduleid ning turvalisuse suurendamiseks toetavad neid ka dm-verity ja Android Verified Boot. APEX-paketti kasulike koormuse kujutiste paigaldamiseks on vaja Linuxi tuuma silmusdraiverit, seega vajavad seadmed Linuxi kerneli versiooni 4.9+. APEX-pakettide haldamiseks on vaja uut APEX-deemonit, mis on kasutusele võetud Android Q-ga. Kuigi seadmed, mis uuendavad operatsioonisüsteemile Android Q koos Linuxi kerneliga 4.4, võivad toetada APEX-i (nagu Google Pixel 3), peavad originaalseadmete tootjad selle toimimiseks liitma täiendavaid plaastreid. Enamasti toetavad Project Mainline'i ainult Android Q-ga käivituvad seadmed.

GNU/Linuxi distributsioonid on pikka aega saanud süsteemikomponente värskendada sõltumatult täielikest süsteemivärskendustest, kuid Android on nende värskendamiseks alati süsteemivärskendust nõudnud. Google otsustas mitte levitada neid pakette traditsiooniliste Linuxi paketihaldussüsteemidega (nt dpkg ja rpm), kuna need ei kaitse pakette pärast installimist dm-verity abil.

Kuna seadmetootjatel kulub värskenduste juurutamiseks palju aega, võivad paljudel seadmetel olla päevi, nädalaid või isegi kuid vananenud süsteemikomponendid. Jaotades need komponendid APEX-pakettidena, saab Google mööda minna OEM-ide pikast ootamisest süsteemivärskenduste väljalaskmiseks.

Project Mainline'i eelised. Allikas: Google.

Google ei kontrolli siiski kõiki süsteemikomponente. Ettevõte on teinud koostööd oma OEM-i partneritega, et valida süsteemirakenduste komplekt (APK-dena) ja süsteemikomponendid (APEX-ina) paketid) modulariseerimiseks, et need saaksid parandada turvalisust, privaatsust ja järjepidevust kõigi kasutajate jaoks, kelle seadmed käivituvad Android Q. Kuigi Google ei ole täpselt avaldanud, kuidas nad algse süsteemikomponentide komplekti välja mõtlesid, on nad seda teinud andis meile Android Q-ga käivitatavate seadmete süsteemikomponentide loendi, mida saab värskendada Google:

  • Turvalisus: meediumikoodekid, meediumiraamistiku komponendid, DNS-i lahendaja, konskript
  • Privaatsus: Documents UI, Permission Controller, ExtServices
  • Järjepidevus: ajavööndi andmed, ANGLE (arendajad lubavad), mooduli metaandmed, võrgukomponendid, kinnisportaali sisselogimine, võrguloa konfigureerimine

Conscrypti, Java turbeteegi ja meediumikomponentide kohesed uuendused, mis "moodustasid peaaegu 40% hiljuti parandatud haavatavustest", muudavad Androidi seadmed turvalisemaks. Lubade kontrolleri värskendused parandavad privaatsust. Ajavööndi andmete standardiseerimine aitab hoida Android-seadmeid üle maailma samal lehel, kui riik otsustab oma ajavööndit muuta. Lisaks saavad mänguarendajad kasu mängu standardiseerimisest NURK.

Google alustab nende süsteemikomponentidega, kuid võib tulevastes Android-väljaannetes neid lisada. Nendest 13 komponendist tarnitakse APEX-pakettidena Conscrypt, Timezone data, Media Codecs ja Media Framework komponendid. Ülejäänud 9 komponenti on süsteemi APK-d. Kuigi nii APEX-i kui ka APK-d on saadaval Google Play kaudu, tuleb APEX-paketti värskendada nõuab taaskäivitamist. Google ei ole veel jaganud kasutajaliidese voogu selle kohta, kuidas see juhtub, kuid kui seadmed hakkavad Android Q-ga käivitama, saame tõenäoliselt rohkem teavet Project Mainline ja APEX pakettide kohta.