Google proširuje podršku za Linux kernel kako bi Android uređaji bili sigurniji duže vreme
Android, kao i mnogi drugi operativni sistemi, koristi open-source Linux kernel.
Google se obavezao da podržava svoje verzije za 4 godine
Postoji nekoliko različitih vrsta izdanja Linux kernela, ali najvažniji za Android su izdanja sa dugoročnom podrškom (LTS), jer se redovno ažuriraju sa važnim ispravkama grešaka i bezbednosnim zakrpama. Počevši od 2017. godine, trajanje podrške za LTS izdanja Linuxa produženo je sa dve godine na šest godina, ali početkom prošle godine, ovo produženje je poništeno. Srećom, Google je najavio da će ubuduće podržavati svoja LTS kernel izdanja četiri godine. Evo zašto je to važno za sigurnost Android uređaja.
Linux kernel koji se nalazi na većini Android uređaja je izveden iz jedne od Googleovih Android Common Kernel (ACK) grana. Ove ACK grane se kreiraju iz glavne grane Android kernela svaki put kada se novo LTS izdanje proglasi uzvodno. Na primer, android15-6.6 ACK grana je kreirana ubrzo nakon što je verzija 6.6 proglašena najnovijom LTS verzijom, pri čemu „android15“ u nazivu označava Android izdanje sa kojim je kernel povezan (u ovom slučaju, Android 15). Google navodi tri razloga zašto održava svoje verzije svakog Linux kernel LTS izdanja.
Prvo, Googleove verzije mogu sadržavati backportove i cherry-pickove uzvodnih funkcionalnosti potrebnih za Android funkcije. Drugo, mogu isporučivati funkcije koje su spremne za Android uređaje čak i kada su još u razvoju. Na kraju, mogu uključivati određene funkcije dobavljača ili OEM-a koje su korisne za druge Android partnere.
Nakon njihove kreacije, ACK-ovi nastavljaju da se ažuriraju od strane Google-a kako bi primili ispravke grešaka za Android-specifičan kod, kao i LTS spajanja sa uzvodnih kernel grana. Ranljivosti koje utiču na Linux kernel, a koje su otkrivene u mesečnom Android biltenu o bezbednosti, kao što su one navedene u biltenu iz jula 2024. godine, rešavaju se ovim ažuriranjima. Međutim, nije uvek moguće identifikovati kada je ispravka greške zapravo ispravka bezbednosne ranjivosti, jer zakrpa koja ispravlja grešku može takođe zatvoriti bezbednosnu rupu koju podnosilac možda nije bio svestan ili nije želeo da otkrije da postoji.
Google pokušava da identifikuje ove slučajeve kada se dogode, ali je nemoguće uhvatiti ih sve, što dovodi do situacija u kojima su ispravke stigle na uzvodni Linux mesecima pre nego što su stigle na Android uređaje. Zbog toga Google podstiče Android OEM-ove da redovno izvode LTS ažuriranja kako ne bi bili zatečeni otkrivanjem iznenadne bezbednosne ranjivosti. Jasno je da su LTS izdanja Linux kernela izuzetno važna za sigurnost Android uređaja, jer pomažu Google-u i OEM-ovima da se nose sa bezbednosnim ranjivostima, poznatim i nepoznatim. Što je duže trajanje podrške za LTS izdanja Linux kernela, to Google i, sledstveno, OEM-ovi mogu duže održavati svoje uređaje ažurnim sa bezbednosnim zakrpama.
Nažalost, iako je duže trajanje podrške dobro za Google i OEM-ove, to predstavlja veliki pritisak na programere i održavaoce Linux kernela, od kojih su mnogi neplaćeni volonteri. Plus, ako isključimo Android i ugrađene uređaje, nema mnogo uređaja koji koriste starije verzije Linuxa. U suštini, održavaoci Linuxa su odlučili da šestogodišnje trajanje podrške za LTS kernel izdanja više nema smisla za njih, pa su odlučili da taj period smanje na dve godine ponovo. Ova promena je objavljena početkom 2023. godine, ostavljajući mnoge posmatrače da se pitaju šta će to značiti za svet Androida. Neki su verovali da će to primorati OEM-ove da konačno počnu da izvode velika ažuriranja verzija kernela kako bi ostali ažurni, dok su drugi verovali da će Google ili dobavljači silicijuma produžiti LTS na svoju ruku.
Ovo drugo je ono što Google radi. Na svojoj stranici za programere za ACK, Google je napisao da „počevši od kernela 6.6, trajanje podrške za stabilne kernale je 4 godine.“ Ovo je prethodilo izjavi koja kaže da „ACK-ovi mogu biti podržani duže od odgovarajućeg uzvodnog stabilnog kernela na kernel.org. U tom slučaju, Google pruža produženu podršku do datuma kraja životnog veka (EOL) prikazanog u ovom odeljku.“ Kada kernel dostigne EOL, očigledno više nije podržan od strane Google-a, ali što je još važnije, „uređaji koji ga koriste se smatraju ranjivim.“
Prethodni šestogodišnji ciklus Linux LTS omogućavao je Android OEM-ovima da lansiraju uređaje jednu, dve ili čak tri godine nakon početka ciklusa i da i dalje uživaju nekoliko godina uzvodne podrške. Međutim, pošto Google sada podržava nove ACK grane samo četiri godine, OEM-ovi više ne mogu to da rade.
Zato, počevši od Androida 15, uređaji mogu biti lansirani samo sa android14-6.1 ili android15-6.6, tj. sa dve najnovije verzije kernela. Prva će biti podržana do jula 2029. godine, dok će druga do jula 2028. godine, tako da uređaji mogu biti lansirani sa njima ove godine i još uvek dobiti tri do pet godina podrške pre nego što budu morali da nadograde svoj kernel. U budućnosti, Google kaže da će postojati samo jedna nova ACK grana za svako izdanje kernela, zbog čega ne postoji android15-6.1 grana. Ovo malo pojednostavljuje stvari, ali na kraju, OEM-ovi će morati da počnu da rade velika ažuriranja verzija kernela ako planiraju da se obavežu na sve duže i duže politike ažuriranja telefona.
Izvor: Androidauthority