Tutup iklan

Keselamatan memori telah menjadi keutamaan Google sejak kebelakangan ini, kerana ralat memori cenderung menjadi antara yang paling serius dalam pembangunan perisian. Malah, kelemahan di kawasan ini bertanggungjawab terhadap sebahagian besar kelemahan kritikal Androidu sehingga tahun lepas apabila Google mencipta sebahagian besar kod asli baharu Androiddalam bahasa pengaturcaraan Rust dan bukannya C/C++. Gergasi perisian sedang berusaha untuk menyokong cara lain untuk mengurangkan kelemahan memori dalam sistemnya, salah satunya dipanggil penandaan memori. Pada peranti yang disokong dengan sistem Android 14 mungkin terdapat tetapan baharu yang dipanggil Perlindungan memori lanjutan yang boleh menogol ciri ini.

Sambungan Penandaan Memori (MTE) ialah ciri perkakasan mandatori pemproses berdasarkan seni bina Arm v9 yang menyediakan butiran terperinci informace tentang kerosakan memori dan melindungi daripada ralat keselamatan ingatan. Seperti yang dijelaskan oleh Google: "Pada tahap yang tinggi, MTE menandakan setiap peruntukan/pembahagian memori dengan metadata tambahan. Berikan penanda kepada lokasi memori, yang kemudiannya boleh dikaitkan dengan penunjuk yang merujuk kepada lokasi memori tersebut. Pada masa jalanan, pemproses menyemak sama ada teg penuding dan metadata sepadan setiap kali ia dimuatkan dan disimpan."

Google sedang berusaha untuk menyokong MTE merentas keseluruhan suite perisian Android untuk masa yang lama. Kepada Androidu 12 menambah pengalokasi memori Scudo dan sokongan untuk tiga mod operasi MTE pada peranti yang serasi: mod segerak, mod tak segerak dan mod tidak simetri. Syarikat itu juga membolehkan MTE untuk proses sistem melalui sifat sistem dan/atau pembolehubah persekitaran. Aplikasi boleh menambah sokongan MTE melalui atribut android:memtagMode. Apabila MTE didayakan untuk proses dalam Androidu, keseluruhan kelas ralat keselamatan memori seperti Use-After-Free dan limpahan penimbal akan menyebabkan ranap dan bukannya kerosakan memori senyap.

Do Androidu 13 Google menambah Antara Muka Binari Aplikasi Ruang Pengguna (ABI) untuk menyampaikan mod pengendalian MTE yang diingini kepada pemuat but. Ini boleh digunakan untuk mendayakan MTE pada peranti serasi yang tidak dihantar dengan MTE didayakan secara lalai, atau ia boleh digunakan untuk melumpuhkannya pada peranti serasi yang mendayakannya secara lalai. Menetapkan sifat sistem ro.arm64.memtag.bootctl_supported kepada "true" pada sistem Android 13 memberitahu sistem bahawa pemuat but menyokong ABI dan turut mengaktifkan butang dalam menu pilihan pembangun yang membenarkan pengguna mendayakan MTE pada but semula seterusnya.

V Androidu 14 walau bagaimanapun, mendayakan MTE pada peranti yang serasi mungkin memerlukan menyelam ke dalam menu pilihan pembangun. Jika peranti menggunakan pemproses Arm v8.5+ dengan sokongan MTE, pelaksanaan peranti menyokong ABI untuk menyampaikan mod pengendalian MTE yang diingini kepada pemuat but dan sifat sistem ro.arm64.memtag.bootctl_settings_toggle baharu ditetapkan kepada "true" , kemudian halaman baharu Perlindungan memori lanjutan v Tetapan → Keselamatan dan privasi → Tetapan keselamatan tambahan. Halaman ini juga boleh dilancarkan melalui tindakan ACTION_ADVANCED_MEMORY_PROTECTION_SETTINGS baharu.

Menariknya, cipset Tensor G2 yang menjanakan siri Google Pixel 7 menggunakan teras pemproses Arm v8.2, yang bermaksud ia tidak menyokong MTE. Jika siri Google Pixel 8 yang akan datang akan menggunakan teras Arm v9 baharu seperti siri perdana yang lain androidtelefon, maka perkakasan mereka sepatutnya dapat menyokong MTE. Walau bagaimanapun, persoalan kekal sama ada ciri "perlindungan memori lanjutan" akan menjadikannya versi stabil Androidpada tahun 14

Paling banyak dibaca hari ini

.