Zatvori oglas

Sigurnost memorije je u posljednje vrijeme glavni prioritet za Google, budući da su greške u memoriji neke od najozbiljnijih u razvoju softvera. U stvari, ranjivosti u ovoj oblasti bile su odgovorne za većinu kritičnih ranjivosti Androidu do prošle godine kada je Google stvorio značajan dio novog izvornog koda Androidu programskom jeziku Rust umjesto C/C++. Softverski gigant radi na podršci drugim sredstvima za ublažavanje memorijskih ranjivosti u svom sistemu, od kojih se jedan naziva označavanje memorije. Na podržanim uređajima sa sistemom Android 14 može postojati nova postavka koja se zove Napredna zaštita memorije koja može uključiti ovu funkciju.

Memory Tagging Extension (MTE) je obavezna hardverska karakteristika procesora zasnovana na arhitekturi Arm v9 koja pruža detaljne informace o oštećenju memorije i štiti od sigurnosnih grešaka u memoriji. Kao što Google objašnjava: “Na visokom nivou, MTE označava svaku dodjelu/deallokaciju memorije dodatnim metapodacima. Dodjeljuje marker memorijskoj lokaciji, koji se zatim može povezati s pokazivačima koji se odnose na tu memorijsku lokaciju. Tokom vremena izvršavanja, procesor provjerava da li se oznake pokazivača i metapodataka podudaraju svaki put kada se pročitaju i pohrane."

Google radi na podršci MTE-u u cijelom softverskom paketu Android dugo vremena. To Androidu 12 je dodao Scudo alokator memorije i podršku za tri MTE načina rada na kompatibilnim uređajima: sinhroni način rada, asinhroni način rada i asimetrični način rada. Kompanija je takođe omogućila da se omogući MTE za sistemske procese putem svojstava sistema i/ili varijabli okruženja. Aplikacije mogu dodati MTE podršku preko atributa android:memtagMode. Kada je MTE omogućen za procese u Androidu, čitave klase sigurnosnih grešaka u memoriji kao što su Use-After-Free i prekoračenja bafera će uzrokovati pad umjesto tihog oštećenja memorije.

Do Androidu 13 Google je dodao binarni interfejs aplikacije korisničkog prostora (ABI) da prenese željeni MTE način rada pokretaču. Ovo se može koristiti za omogućavanje MTE-a na kompatibilnim uređajima koji se ne isporučuju sa MTE-om omogućenim prema zadanim postavkama, ili se može koristiti za njegovo onemogućavanje na kompatibilnim uređajima na kojima je MTE omogućen prema zadanim postavkama. Postavljanje sistemskog svojstva ro.arm64.memtag.bootctl_supported na "true" na sistemu Android 13 je rekao sistemu da bootloader podržava ABI i takođe je aktivirao dugme u meniju sa opcijama za programere koje omogućava korisniku da omogući MTE pri sledećem ponovnom pokretanju.

V Androidili 14 međutim, omogućavanje MTE-a na kompatibilnim uređajima možda će već zahtijevati zaron u izbornik opcija programera. Ako uređaj koristi procesor Arm v8.5+ sa MTE podrškom, implementacija uređaja podržava ABI za komunikaciju željenog MTE načina rada pokretaču, a novo sistemsko svojstvo ro.arm64.memtag.bootctl_settings_toggle je postavljeno na "true" , zatim nova stranica Napredna zaštita memorije v Pode¹avanja→ Bezbednost i privatnost→ Dodatna bezbednosna pode¹avanja. Ova stranica se također može pokrenuti putem nove akcije ACTION_ADVANCED_MEMORY_PROTECTION_SETTINGS.

Zanimljivo je da Tensor G2 čipset koji pokreće Google Pixel 7 seriju koristi jezgra procesora Arm v8.2, što znači da ne podržava MTE. Ako će nadolazeća serija Google Pixel 8 koristiti nova Arm v9 jezgra kao i druge vodeće serije androidtelefone, onda njihov hardver treba da bude u stanju da podrži MTE. Međutim, ostaje pitanje da li će funkcija "napredne zaštite memorije" doći do stabilne verzije Androidu 14

Danas najčitaniji

.