Kako funkcioniraju mjesečna ažuriranja sigurnosnih zakrpa za Android

Jeste li se ikada zapitali kako funkcioniraju mjesečna ažuriranja sigurnosnih zakrpa za Android? Nemojte se više pitati, jer imamo samo početnicu za razumijevanje cijelog procesa.

Google objavljuje mjesečne biltene o sigurnosti od kolovoza 2015. Ovi sigurnosni bilteni sadrže popis otkrivenih sigurnosnih ranjivosti koje su popravljene, a koje utječu na okvir Androida, jezgru Linuxa i druge komponente dobavljača zatvorenog koda. Svaku ranjivost u biltenima je ili otkrio Google ili otkrio tvrtki. Svaka navedena ranjivost ima broj uobičajenih ranjivosti i izloženosti (CVE), zajedno s pripadajućim reference, vrstu ranjivosti, procjenu ozbiljnosti i pogođenu verziju AOSP-a (ako primjenjiv). No unatoč naizgled jednostavnom procesu koji stoji iza funkcioniranja sigurnosnih zakrpa za Android, zapravo postoji donekle komplicirano kretanje iza kulisa koje vašem telefonu omogućuje mjesečno ili (nadamo se) skoro mjesečno zakrpe.

Što zapravo čini sigurnosnu zakrpu?

Možda ste primijetili da ih zapravo ima svaki mjesec 

dva razine sigurnosnih zakrpa. Format ovih zakrpa je GGGG-MM-01 ili GGGG-MM-05. Dok GGGG i MM očito predstavljaju godinu odnosno mjesec, "01" i "05" zbunjujuće zapravo ne označavaju dan u mjesecu u kojem je ta razina sigurnosne zakrpe objavljena. Umjesto toga, 01 i 05 zapravo su dvije različite razine sigurnosnih zakrpa koje se objavljuju na isti dan svakog mjeseca - razina zakrpe s 01 na kraju sadrži popravke za okvir Androida, ali ne zakrpe dobavljača ili uzvodne zakrpe jezgre Linuxa. Zakrpe proizvođača, kao što smo gore definirali, odnose se na popravke za komponente zatvorenog koda kao što su upravljački programi za Wi-Fi i Bluetooth. Razina sigurnosne zakrpe označena s -05 sadrži ove zakrpe dobavljača kao i zakrpe u jezgri Linuxa. Pogledajte tablicu ispod koja može pomoći u razumijevanju.

Razina mjesečne sigurnosne zakrpe

2019-04-01

2019-04-05

Sadrži travanjske zakrpe okvira

Da

Da

Sadrži travanjske zakrpe dobavljača + kernela

Ne

Da

Sadrži zakrpe ožujskog okvira

Da

Da

Sadrži ožujske zakrpe dobavljača + kernela

Da

Da

Naravno, neki proizvođači originalne opreme mogu odlučiti uključiti i vlastite zakrpe i ažuriranja u sigurnosna ažuriranja. Većina OEM-ova ima svoje mišljenje o Androidu, tako da ima smisla da imate, na primjer, ranjivost na Samsung telefonu koja ne postoji na Huaweiju. Mnogi od tih OEM-ova također objavljuju vlastite sigurnosne biltene.

  • Google Pixel
  • Huawei
  • LG
  • Motorola
  • HMD Global
  • Samsung

Vremenska traka sigurnosne zakrpe s Googlea na vaš telefon

Sigurnosne zakrpe imaju vremenski okvir koji otprilike obuhvaća oko 30 dana, iako ne može svaki OEM iskoristiti punu duljinu tog vremenskog okvira. Pogledajmo Sigurnosna zakrpa iz svibnja 2019 na primjer, i možemo raščlaniti cijeli vremenski okvir iza stvaranja ove zakrpe. Tvrtke poput Bitno uspjeti izvaditi njihova sigurnosna ažuriranja na isti dan kao Google Pixel, pa kako to rade? Kratak i jednostavan odgovor je da su oni Android partner. Sigurnosni bilten za svibanj 2019 objavljena je 6. svibnja, pri čemu i Google Pixels i Essential Phone dobivaju gotovo trenutna ažuriranja.

Što znači biti Android partner

Ne može bilo koja tvrtka biti Android partner, iako doduše svaki veliki Android OEM to jest. Android partneri su tvrtke kojima je dodijeljena licenca za korištenje robne marke Android u marketinškim materijalima. Također im je dopušteno isporučivati ​​Googleove mobilne usluge (GMS - odnosi se na gotovo sve Googleove usluge) sve dok ispunjavaju zahtjeve navedene u Compatibility Definition Document (CDD) i proći Compatibility Test Suite (CTS), Vendor Test Suite (VTS), Google Test Suite (GTS) i nekoliko drugih testova. Postoje jasne razlike u procesu sigurnosne zakrpe za tvrtke koje nisu Android partner.

  • Zakrpe okvira za Android dostupne su im nakon što se spoje u AOSP 1-2 dana prije objave sigurnosnog biltena.
  • Uzlazne zakrpe za jezgru Linuxa mogu se birati kada postanu dostupne.
  • Popravci dobavljača SoC-a za komponente zatvorenog koda dostupni su ovisno o ugovorima s dobavljačem SoC-a. Imajte na umu da ako je dobavljač OEM-u dao pristup izvornom kodu komponente(a) zatvorenog koda, tada OEM može sam riješiti problem(e). Ako OEM nema pristup izvornom kodu, mora pričekati da dobavljač izda popravak.

Ako ste Android partner, odmah vam je puno lakše. Android partneri dobivaju obavijest o svim problemima s okvirom Androida i problemima s jezgrom Linuxa najmanje 30 dana prije objave biltena. Google osigurava zakrpe za sve probleme koje proizvođači originalne opreme mogu spojiti i testirati, iako zakrpe komponenti dobavljača ovise o dobavljaču. Na primjer, zakrpe za probleme Android okvira otkrivene u sigurnosnom biltenu iz svibnja 2019. dostavljene su Android partnerima barem već 20. ožujka 2019.*. To je mnogo dodatnog vremena.

*Napomena: Google može, i često to čini, ažurirati zakrpe za najnoviji sigurnosni bilten sve do javne objave. Ova se ažuriranja mogu dogoditi ako se pronađu nove ranjivosti i pogreške, ako Google odluči ukloniti određene zakrpe iz mjesečnog biltena zbog kvara kritičnih komponenti, ako Google ažurira zakrpu kako bi riješio pogrešku koju je stvorila prethodna verzija zakrpe i drugo razloga.

Zašto moram čekati toliko dugo da primim sigurnosnu zakrpu na svoj telefon?

Iako je istina da su Android partneri (čitaj: svi glavni OEM-ovi) primili sigurnosne zakrpe mnogo prije nego što izdanju, mnogi su bolno svjesni da vjerojatno neće primiti sigurnosno ažuriranje mjesecima nakon njega osloboditi. To se općenito svodi na jedan od četiri razloga.

  • Proizvođači originalne opreme će možda trebati izvršiti značajne tehničke promjene kako bi prilagodili sigurnosnu zakrpu jer ona može biti u sukobu s postojećim kodom.
  • Dobavljač sporo osigurava ažuriranje izvornog koda za komponente zatvorenog koda.
  • Certifikacija operatera može potrajati.
  • Tvrtke možda neće htjeti objaviti sigurnosnu nadogradnju, a da u isto vrijeme ne objave značajku.

Iako su sve ovo valjani razlozi za tvrtku da ne objavi sigurnosnu zakrpu, krajnjeg korisnika nije uvijek briga ni za što od toga. Doduše, ni krajnji korisnik ne brine uvijek o sigurnosnim zakrpama, iako bi trebali. Inicijative poput Project Treble, prošireni Linux LTS, i Glavni projekt pomažu eliminirati tehničke poteškoće spajanja ovih sigurnosnih zakrpa, ali to nije dovoljno da proizvođače originalne opreme dosljedno nastoje izdavati ažuriranja. Uz Generic Kernel Image ili GKI, dobavljači SoC-a i OEM-ovi imat će lakše spajanje uzvodnih zakrpa Linux kernela, iako vjerojatno nećemo vidjeti prve uređaje s GKI-jem do sljedeće godine.

Ali zanimljiva informacija koju većina ne zna je da glavni proizvođači originalne opreme mora pružiti "najmanje četiri sigurnosna ažuriranja" u roku od godinu dana od pokretanja uređaja i ukupno 2 godine ažuriranja. Google nije potvrdio ove konkretne uvjete, ali je tvrtka potvrdila da su "radili na ugradnji sigurnosnih zakrpa u [svoje] OEM ugovore". Što se tiče Android Enterprise Recommended (AER) uređaja, uređaji moraju dobiti sigurnosna ažuriranja u roku od 90 dana od izdavanja tijekom 3 godine. Za nabavu su potrebni robusni AER uređaji 5 godina sigurnosnih ažuriranja. Android One uređaji trebali bi dobivati ​​sigurnosna ažuriranja svaki mjesec tijekom 3 godine.

Što je u sigurnosnoj zakrpi?

Sigurnosna zakrpa samo je još jedno ažuriranje, iako općenito puno manje s promjenama pojedinačnih okvira i modula sustava, a ne poboljšanja ili promjene na razini cijelog sustava. Svakog mjeseca Google proizvođačima originalne opreme uređaja daje zip datoteku koja sadrži zakrpe za sve glavne verzije Androida koje su trenutno još podržane, zajedno sa paketom sigurnosnih testova. Ovaj testni paket pomaže proizvođačima originalne opreme pronaći rupe u sigurnosnim zakrpama, kako bi bili sigurni da im ništa ne nedostaje i da su zakrpe spojene na odgovarajući način. Kako mjesec bude odmicao, Google može napraviti manje izmjene kao što je odluka da je jedna određena zakrpa izborna, posebno ako postoje problemi s njenom implementacijom.

Što je s prilagođenim ROM-ovima?

Ako vaš pametni telefon ne dobiva mnogo sigurnosnih ažuriranja, to ne znači nužno da je bolje da se prebacite na prilagođeni ROM. Iako je istina da ćete dobiti sigurnosna ažuriranja koja inače ne biste dobili, to je samo pola priče. Otključavanje pokretačkog programa ostavlja vas podložnima fizičkim napadima na vaš uređaj, čak i ako je na strani softvera sigurnost pojačana. To ne znači da ne biste trebali koristiti prilagođene ROM-ove, samo postoje druge nedoumice kada je u pitanju njihovo korištenje koje se ne primjenjuju ako je vaš bootloader zaključan. Ako vas više brine softverska strana stvari, onda vam je ipak bolje s prilagođenim ROM-om koji dobiva česte sigurnosne zakrpe.

Ali sjećate se da smo govorili o razlici između zakrpa GGGG-MM-01 i GGGG-MM-05? Razina zakrpe -05 sadrži zakrpe za jezgru Linuxa kao i zakrpe dobavljača - zakrpe primijenjene na softver zatvorenog koda. To znači da su prilagođeni programeri ROM-a prepušteni na milost i nemilost OEM-u za kojeg razvijaju, i izda li OEM ažurirane blobove ili ne. To je u redu za uređaje koje proizvođač još uvijek ažurira, ali za uređaje koji nisu, primijenjene zakrpe mogu se primijeniti samo na Android framework i Linux kernel. Ovo je razlog zašto LineageOS' Sučelje povjerenja prikazuje dvije razine sigurnosnih zakrpa - jedna je platforma, a druga je dobavljač. Iako prilagođeni ROM-ovi za nepodržane uređaje ne mogu u potpunosti integrirati sve najnovije zakrpe, oni će biti sigurniji od starijeg, zastarjelog ROM-a.