Pechar anuncio

A seguridade da memoria foi unha prioridade para Google ultimamente, xa que os erros nela adoitan ser algúns dos máis graves no desenvolvemento de software. De feito, as vulnerabilidades desta área foron as responsables da maioría das vulnerabilidades críticas Androidu ata o ano pasado cando Google creou unha parte importante de novo código nativo Androidna linguaxe de programación Rust en lugar de C/C++. O xigante do software está a traballar para apoiar outros medios para mitigar as vulnerabilidades da memoria no seu sistema, un dos cales se chama marcado de memoria. En dispositivos compatibles co sistema Android 14 pode haber unha nova configuración chamada Protección avanzada da memoria que pode cambiar esta función.

A extensión de etiquetado de memoria (MTE) é unha función de hardware obrigatoria dos procesadores baseada na arquitectura Arm v9 que ofrece detalles informace sobre a corrupción da memoria e protexe contra erros de seguridade da memoria. Como explica Google: "A un alto nivel, MTE etiqueta cada asignación/desasignación de memoria con metadatos adicionais. Asigna un marcador a unha localización de memoria, que logo pode asociarse con punteiros que fan referencia a esa localización de memoria. No tempo de execución, o procesador comproba que o punteiro e as etiquetas de metadatos coinciden cada vez que se le e se garda".

Google está a traballar para admitir MTE en toda a suite de software Android por moito tempo. Para Androidu 12 engadiu o asignador de memoria Scudo e soporte para tres modos de funcionamento MTE en dispositivos compatibles: modo sincrónico, modo asíncrono e modo asimétrico. A compañía tamén permitiu habilitar MTE para os procesos do sistema a través de propiedades do sistema e/ou variables de ambiente. As aplicacións poden engadir compatibilidade con MTE mediante un atributo android:memtagMode. Cando MTE está habilitado para procesos en Androidu, clases enteiras de erros de seguranza da memoria como Use-After-Free e desbordamentos de búfer provocarán fallos en lugar de corrupción silenciosa da memoria.

Do Androidu 13 Google engadiu unha interface binaria de aplicacións de espazo de usuario (ABI) para comunicar o modo operativo MTE desexado ao cargador de arranque. Pódese usar para activar MTE en dispositivos compatibles que non se envían con MTE activado de forma predeterminada ou para desactivalo en dispositivos compatibles que o teñan activado de forma predeterminada. Configurando a propiedade do sistema ro.arm64.memtag.bootctl_supported como "true" no sistema Android 13 díxolle ao sistema que o cargador de arranque admitía o ABI e tamén activou un botón no menú de opcións do programador que permitía ao usuario habilitar MTE no seguinte reinicio.

V Androidu 14 non obstante, é posible que a activación de MTE en dispositivos compatibles xa requira mergullarse no menú de opcións para desenvolvedores. Se o dispositivo usa un procesador de arquitectura Arm v8.5+ con compatibilidade con MTE, a implementación do dispositivo admite o ABI para comunicar o modo operativo MTE desexado ao cargador de arranque e a nova propiedade do sistema ro.arm64.memtag.bootctl_settings_toggle está definida como "true". ", entón unha nova páxina Protección avanzada de memoria v Configuración→Seguridade e privacidade→Configuracións de seguranza adicionais. Esta páxina tamén se pode iniciar mediante a nova acción ACTION_ADVANCED_MEMORY_PROTECTION_SETTINGS.

Curiosamente, o chipset Tensor G2 que alimenta a serie Google Pixel 7 usa núcleos de procesador Arm v8.2, o que significa que non é compatible con MTE. Se a próxima serie Google Pixel 8 usará os novos núcleos Arm v9 como outras series emblemáticas androidteléfonos, entón o seu hardware debería ser capaz de soportar MTE. Non obstante, a pregunta segue sendo se a función de "protección de memoria avanzada" chegará á versión estable Androiden 14

O máis lido de hoxe

.