Los desarrolladores del proyecto GrapheneOS, que desarrolla una bifurcación segura de la base de código AOSP (Proyecto de Código Abierto de Android), han identificado una vulnerabilidad en la pila de Bluetooth de Android 14, que podría permitir la ejecución remota de código. El problema se debe a un acceso a una zona de memoria ya liberada (use-after-free) en el código de procesamiento de audio transmitido a través de Bluetooth LE.
La vulnerabilidad se detectó gracias a la integración de protección adicional en la llamada a hardened_malloc, que utiliza la extensión ARMv8.5 MTE (MemTag, Extensión de Etiquetado de Memoria), permitiendo vincular etiquetas a cada operación de asignación de memoria y organizar la verificación de la validez en el uso de punteros para bloquear la explotación de vulnerabilidades causadas por accesos a bloques de memoria ya liberados, desbordamientos de búfer, accesos antes de la inicialización y utilización fuera del contexto actual.
El error se manifiesta a partir de la actualización de Android 14 QPR2 (Lanzamiento Trimestral de la Plataforma), publicada a principios de marzo. En la base de código principal de Android 14, el mecanismo MTE está disponible como opción y aún no se aplica por defecto, pero en GrapheneOS ya se ha implementado para una protección adicional, lo que permitió diagnosticar el error tras la actualización a Android 14 QPR2. El error provocaba un cierre inesperado al usar auriculares Bluetooth Samsung Galaxy Buds2 Pro con el firmware que incluye la protección basada en MTE. El análisis del incidente mostró que el problema está relacionado con un acceso a memoria ya liberada en el controlador de Bluetooth LE, y no con un fallo debido a la integración de MTE.
La vulnerabilidad se ha corregido en la versión GrapheneOS 2024030900 y afecta a las compilaciones para teléfonos inteligentes en los que no está habilitada la protección adicional de hardware basada en la extensión MTE (MTE está habilitado solo para dispositivos Pixel 8 y Pixel 8 Pro). La vulnerabilidad se reproduce en los teléfonos inteligentes Google Pixel 8 con firmware basado en Android 14 QPR2. En Android para teléfonos de la serie Pixel 8, el modo MTE se puede habilitar en las opciones de desarrollador (‘Ajustes / Sistema / Opciones de desarrollador / Extensiones de Etiquetado de Memoria’). Habilitar MTE aumenta el consumo de memoria en aproximadamente un 3%, pero no reduce el rendimiento.
Fuente: opennet.ru
