Chiudi l'annuncio

La sicurezza della memoria è stata una priorità assoluta per Google ultimamente, poiché gli errori di memoria tendono ad essere tra i più gravi nello sviluppo del software. In effetti, le vulnerabilità in quest’area erano responsabili della maggior parte delle vulnerabilità critiche Androidu fino all'anno scorso, quando Google ha creato una parte significativa di nuovo codice nativo Androidnel linguaggio di programmazione Rust invece che in C/C++. Il gigante del software sta lavorando per supportare altri mezzi per mitigare le vulnerabilità della memoria nel suo sistema, uno dei quali è chiamato marcatura della memoria. Sui dispositivi supportati con il sistema Android 14 potrebbe esserci una nuova impostazione chiamata Protezione avanzata della memoria che potrebbe attivare/disattivare questa funzionalità.

Memory Tagging Extension (MTE) è una funzionalità hardware obbligatoria dei processori basati sull'architettura Arm v9 che fornisce informazioni dettagliate informace sulla corruzione della memoria e protegge dagli errori di sicurezza della memoria. Come spiega Google: “Ad alto livello, MTE contrassegna ogni allocazione/deallocazione di memoria con metadati aggiuntivi. Assegna un marcatore a una posizione di memoria, che può quindi essere associato a puntatori che fanno riferimento a quella posizione di memoria. In fase di esecuzione, il processore controlla che il puntatore e i tag dei metadati corrispondano ogni volta che vengono letti e salvati."

Google sta lavorando per supportare MTE nell'intera suite software Android per molto tempo. A Androidu 12 ha aggiunto l'allocatore di memoria Scudo e il supporto per tre modalità di funzionamento MTE su dispositivi compatibili: modalità sincrona, modalità asincrona e modalità asimmetrica. L'azienda ha inoltre reso possibile abilitare MTE per i processi di sistema attraverso proprietà di sistema e/o variabili di ambiente. Le applicazioni possono aggiungere il supporto MTE tramite un attributo android:memtagMode. Quando MTE è abilitato per i processi in Androidu, intere classi di errori di sicurezza della memoria come Use-After-Free e buffer overflow causeranno arresti anomali invece di corruzione silenziosa della memoria.

Do Androidu 13 Google ha aggiunto una Userspace Application Binary Interface (ABI) per comunicare la modalità operativa MTE desiderata al bootloader. Questo può essere utilizzato per abilitare MTE su dispositivi compatibili che non vengono forniti con MTE abilitato per impostazione predefinita oppure può essere utilizzato per disabilitarlo su dispositivi compatibili che lo hanno abilitato per impostazione predefinita. Impostazione della proprietà di sistema ro.arm64.memtag.bootctl_supported su "true" nel sistema Android 13 ha comunicato al sistema che il bootloader supportava l'ABI e ha anche attivato un pulsante nel menu delle opzioni sviluppatore che consentiva all'utente di abilitare MTE al successivo riavvio.

V Androidu 14 tuttavia, abilitare MTE sui dispositivi compatibili potrebbe già richiedere l'immersione nel menu delle opzioni sviluppatore. Se il dispositivo utilizza un processore Arm v8.5+ con supporto MTE, l'implementazione del dispositivo supporta l'ABI per comunicare la modalità operativa MTE desiderata al bootloader e la nuova proprietà di sistema ro.arm64.memtag.bootctl_settings_toggle è impostata su "true" , quindi una nuova pagina Protezione avanzata della memoria v Impostazioni→Sicurezza e privacy→Impostazioni di sicurezza aggiuntive. Questa pagina può essere avviata anche tramite la nuova azione ACTION_ADVANCED_MEMORY_PROTECTION_SETTINGS.

È interessante notare che il chipset Tensor G2 che alimenta la serie Google Pixel 7 utilizza core del processore Arm v8.2, il che significa che non supporta MTE. Se la prossima serie Google Pixel 8 utilizzerà i nuovi core Arm v9 come le altre serie di punta androidtelefoni, il loro hardware dovrebbe essere in grado di supportare MTE. Tuttavia, rimane la domanda se la funzionalità di "protezione avanzata della memoria" arriverà alla versione stabile Androidnel 14

Il più letto di oggi

.