lunes, 12 de septiembre de 2016

Google detalla características de seguridad de Android 7.0 Nougat

La última versión de Android ya es una realidad. Los primeros dispositivos con Android 7.0, también conocido como Nougat, ya están en la calle, y Google ha ampliado la información sobre las características de seguridad que ésta nueva versión viene a ofrecer.

Como no podía ser menos, esta nueva versión es la más segura hasta la fecha. Para ello Google ha incluido mejoras en diferentes aspectos de seguridad. Entre todas ellas, el equipo de seguridad de Android destaca el programa de recompensas por vulnerabilidades (que tan buen rendimiento le está dando a la compañía), un nuevo modo Direct Boot, rediseño del mediaserver y fortalecimiento del subsistema multimedia, aplicaciones protegidas desde regresiones accidentales hasta tráfico de datos sin cifrar, una actualización de la forma en que Android trata las autoridades de certificación de confianza, estricto cumplimiento del arranque verificado con corrección de errores y actualizaciones del kernel de Linux para reducir la superficie de ataque y aumentar la protección de memoria.

Arranque Directo y cifrado

En Android 7.0 Nougat se ha actualizado el esquema de cifrado subyacente y simplificado el proceso de arranque para acelerar el reinicio del teléfono. Ahora las funciones principales del teléfono, como la aplicación de teléfono y el reloj, están disponibles de forma inmediata, incluso antes de introducir el PIN, por lo que se pueden recibir llamadas y las alarmas pueden funcionar. Esta funcionalidad recibe el nombre de Arranque Directo ("Direct Boot").

El nuevo esquema de cifrado de archivos mejora la experiencia de usuario, debido a que el área de almacenamiento del sistema, así como el área de almacenamiento de cada perfil de usuario, están cifradas por separado. A diferencia del cifrado del disco completo, donde todos los datos se cifran como una sola unidad, el cifrado basado por perfil permite que el sistema se reinicie normalmente en un estado operativo usando únicamente las teclas del dispositivo.

El cifrado basado en archivos ofrece un mejor aislamiento y protege usuarios y perfiles individuales en un dispositivo mediante cifrado de datos a una granularidad más fina. Cada perfil se cifra mediante una clave única que sólo puede ser desbloqueado mediante el PIN o contraseña, para que los datos solo puedan ser descifrados por el usuario. 

El soporte de cifrado se ha mejorado con cada nueva versión de Android. Además se ha empezado a requerir un hardware específico, como en dispositivos Nexus 5X y 6P que usan claves únicas accesibles solamente con hardware fiable, como el ARM TrustZone. Con la nueva versión del sistema del androide todos los nuevos dispositivos Android deberán tener este tipo de hardware para el almacenamiento de claves y proporcionar protección ante ataques de fuerza bruta. De esta manera, en teoría los datos solo podrán descifrarse en ese mismo dispositivo y por el propio usuario, porque aunque tenga hardware específico para funciones criptográficas no hay que descartar que estas puedan ser replicadas por software algún día.

Protecciones multimedia y de plataforma

En Android 7 también se ha rediseñado y mejorado la seguridad del servidor multimedia, uno de los servicios principales que procesan entradas no confiables.

Se ha incorporado protección ante desbordamientos de entero. Tan pronto se detecta un desbordamiento de entero, se cierra el proceso y se detiene el ataque. El subsistema multimedia se ha convertido en módulos para poner los diferentes componentes en "sandboxes" individuales. Así se han podido ajustar los privilegios de cada "sandbox" con los mínimos privilegios requeridos para su función. La finalidad es mitigar gran parte de las vulnerabilidades de desbordamiento de memoria basada en la pila reduciendo la superficie expuesta.

También se han añadido otras protecciones, como el Arranque Verificado (Verified Boot) que evita el arranque de dispositivos comprometidos. Configuración actualizada de SELinux y aumento de la cobertura. Aleatorización del orden de carga de librerías y mejora de ASLR. Se ha añadido protección de memoria adicional para los nuevos kernels marcando porciones de la memoria del núcleo como de sólo lectura, restringiendo el acceso al kernel a las direcciones del espacio de usuario y reduciendo aún más la actual superficie de ataque. Se ha introducido un nuevo esquema de firma de aplicaciones que ofrece instalación más rápida de las aplicaciones y mayor protección contra alteraciones no autorizadas de archivos APK.


Mejoras en la seguridad de aplicaciones

Las aplicaciones que quieren compartir datos con otras aplicaciones deben activarse opcionalmente de forma explícita ofreciendo sus archivos a través de un proveedor de contenidos (Content Provider) como FileProvider.

Para facilitar a las aplicaciones controlar el acceso a su tráfico de red seguro, las autoridades de certificación instaladas por el usuario y los instalados mediante APIs ya no son de confianza predeterminada para aplicaciones dirigidas a la API de nivel 24+.

Android Nougat incluye una función de configuración de seguridad de la red que permite a las aplicaciones personalizar los ajustes de seguridad de la red mediante un archivo de configuración declarativo seguro sin que haya que modificar el código de la aplicación. Esto incluye bloquear tráfico en texto claro, configurar el conjunto de CAs y certificados de confianza y asignar una configuración de depuración.


Actualizaciones del sistema

Google también ha realizado mejoras significativas en el sistema de actualización OTA, reduciendo el tiempo de actualización y el tamaño de las actualizaciones. También se evita el paso de optimización de aplicaciones, sin duda uno de las partes más lentas del proceso de actualización.

Sin duda las actualizaciones del sistema van a seguir siendo uno de los puntos débiles de Android, mientras éstas tarden meses en llegar (o incluso no lleguen nunca) los sistemas volverán a ser vulnerables en cuanto se descubra una nueva vulnerabilidad. Mientras la obtención de actualizaciones siga dependiendo del dispositivo, país, fabricante, proveedor o del distribuidor la cadena seguirá siendo demasiado larga y muchos usuarios tardarán en tener sus dispositivos actualizados.

Más información:

Keeping Android safe: Security enhancements in Nougat





Antonio Ropero
Twitter: @aropero


No hay comentarios:

Publicar un comentario en la entrada