FALLO DE SEGURIDAD EN LOS NEXUS 9

Fecha actualización el 2017-1-18. Fecha publicación el . Categoría: Nexus. Autor: Mapa del sitio

Una vulnerabilidad de seguridad que permitía a un atacante el privilegio de los valores de escritura arbitrarias dentro del espacio del núcleo que se ocultaba en el kernel de Nexus 9 durante dos años antes de ser parcheado, segun los investigadores de seguridad de IBM

Rastreado como CVE-2016-3873, la vulnerabilidad se encuentra en la rama del núcleo Tegra y se le asignó una calificación alta severidad. Se encontró una plaga de Nexus 9 desde su creación en noviembre de 2014, y se fijó en el nivel de revisión de seguridad del 09/05/2016 , después de haber sido descubierto en junio de 2016.

En su boletín de seguridad de septiembre el año 2016, Google señaló que se trataba de una vulnerabilidad de elevación de privilegios en el kernel de NVIDIA y que aplicaciones maliciosas locales podría aprovechar para ejecutar código arbitrario en el contexto del núcleo. El error primero requiere comprometer un proceso privilegiada, por lo tanto se le asignó una calificación de alta severidad.

Del equipo de investigación de seguridad de aplicaciones de IBM X-Force Sagi Kedmi, el investigador descubrió el error, explica que un problema similar (CVE-2016-2443) fue descubierto por el investigador de seguridad de Marco Grassi en la primavera de 2013. Se encuentra en el controlador de Qualcomm MDP, este error fue parcheado en de Google de mayo de el año 2016 Boletín de seguridad de Android .

"La escritura arbitraria del Kernel pueden ser utilizados para lograr la ejecución de código kernel, lo que compromete por completo la seguridad del dispositivo, sin incluir TrustZone. Aumenta la superficie de ataque TrustZone y permite a los atacantes acceder a los datos de aplicaciones y omitir la política de Seguridad Mejorada de Linux (SELinux) ", explica Kedmi.

El código vulnerable en Nexus 9 comienza con los registros debugfs nodo de archivo, que se inicia con una operación de archivo específico en el que, en la escritura llamada al sistema, el cl_register_write() la función de forma segura copias de un tampón de espacio de usuario y analiza su contenido como dos valores numéricos, val y compensaciones . A continuación, la funcion cl_dvfs_writel() se alimentó a los dos valores, y __raw_writel() se utiliza para escribir el valor val en offs + , lo que resulta en un núcleo de escritura arbitraria.

El investigador analizó el control de acceso discrecional (DAC) y Mandatory Access Control (MAC; SELinux en Android) para determinar qué procesos activos pueden desencadenar la vulnerabilidad. Cuando se trata de DAC, el atacante necesita para ejecutar el código en la raíz dentro del debugfs contexto SELinux, por lo que el investigador y luego miró a los contextos que podrían escribir en un debugfs archivo.

"Para explotar la vulnerabilidad de un contexto de seguridad de aplicaciones de confianza, se iniciará por la escalada de privilegios de una aplicación que no se confía a uno de los contextos de los procesos antes mencionados. El envío de datos a la establecida en la vulnerabilidad indica que Google simplemente elimina el archivo de registros del sistema de archivos de depuración. Claramente, el archivo de registros no se necesitaba en el nodo construye la producción ", concluye el investigador.


Comenta y comparte en Compartir en Google+
Nexus 9