Logo es.androidermagazine.com
Logo es.androidermagazine.com

Android 7.0: beneficios de seguridad que realmente importan

Tabla de contenido:

Anonim

Actualizado el 13 de agosto de 2016, con información sobre las características y API finales de Android Nougat.

Hay muchos cambios de código en Android N. Algunos de ellos podemos ver, como las nuevas notificaciones, y otros que no podemos (pero siguen siendo un gran problema). Vemos lo mismo con cada actualización. Hay mejoras y cambios en la interfaz, pero debajo del capó se realizan ajustes y cambios para que Android funcione mejor y sea más seguro.

Google ha mejorado la seguridad en Android Nougat en un puñado de diferentes áreas. Algunos están diseñados para fortalecer el propio Android, mientras que otros son herramientas para que los desarrolladores los usen, por lo que se mantiene así cuando instalamos aplicaciones. Echemos un vistazo a los cambios en sí mismos.

Actualizaciones perfectas

Google ya realiza "actualizaciones integradas" en Chrome OS, y funciona muy bien. Las cosas serán muy similares en Android.

Las actualizaciones integradas utilizarán dos particiones de sistema separadas. Uno de ellos es el sistema que está ejecutando mientras usa su teléfono todos los días. Cuando llega el momento de una actualización, la otra partición del sistema se altera y actualiza, y la próxima vez que reinicie, cambiará automáticamente. La próxima vez que haya una actualización, la otra partición del sistema cambia y usted cambia de nuevo.

: Android 7.0: ¿Qué son las actualizaciones integradas y cómo funcionan?

Eso significa que las cosas se pueden hacer mientras estás trabajando o jugando, y cuando haya terminado, todo lo que tienes que hacer es reiniciar normalmente. Te sorprenderías (lo estaba cuando lo escuché), pero una gran parte de la gente no actualiza su teléfono porque lleva un tiempo. Es posible que lo hayan hecho una vez, luego se quedaron sentados esperando y decidieron no volver a hacerlo. Es fácil descartar la notificación. Pero al cambiar el procedimiento, facilitar las actualizaciones y eliminar el horrible tiempo de espera mientras se ve el cuadro de diálogo "actualizar aplicaciones", más personas lo harán.

Configuración de seguridad de red

Network Security Configuration permite a los desarrolladores de aplicaciones crear y usar un archivo de configuración personalizado para la configuración de seguridad de la red en lugar de solicitar cambios a nivel del sistema. El archivo de configuración se puede cambiar sin modificar la aplicación en sí y se puede configurar para usar una Autoridad de Certificación personalizada en lugar del dispositivo predeterminado, y también se puede configurar para ignorar cualquiera o todas las CA confiables por el sistema. Esto es importante para conectarse a un host que tiene una CA autofirmada (para cosas como aplicaciones empresariales) o para una aplicación que solo debe confiar en una CA específica.

Además, la configuración se puede configurar para excluirse de cualquier tráfico de red de texto sin formato y forzar la comunicación cifrada utilizando el protocolo HTTPS. Si es administrador de red o desarrolla aplicaciones de red, sabe lo importantes que son estos cambios. El resto de nosotros puede estar feliz de poder tener un tráfico de red más seguro en aplicaciones que sean más fáciles de desarrollar.

Endurecimiento del servidor de medios

¿Recuerdas Stagefright? Si bien fue desproporcionado por gran parte de los medios, había un problema real oculto detrás de la hipérbole. Reproducir un archivo multimedia y tener la capacidad de forzarlo a reiniciar o perder todo el audio es un problema desagradable, y el hecho de que (en teoría) esto podría usarse para obtener secretamente permisos de root es aún más aterrador. Google se lo toma muy en serio y vemos parches en la biblioteca del servidor de medios cada mes para intentar adelantarnos a los errores y las preocupaciones de seguridad que conlleva.

En Android N, el servidor de medios recibe una gran revisión. Google ha dividido el servidor de medios en componentes más pequeños que pueden actualizarse fuera de una actualización completa del sistema, tal como lo hicieron con el componente WebView. Esto significa que cuando tienen un nuevo parche, puedes obtener la actualización de Google Play en lugar de esperar seis meses o más para que las personas que hicieron que tu teléfono decida enviarte el parche.

También han cambiado el modelo de permisos para el servidor de medios, ya no le otorgan permisos completos del sistema. Ejecutar con pocos privilegios hace que sea aún más difícil para cualquiera acceder al sistema si ingresa al servidor de medios. Este es un cambio importante, y hará que piratear un teléfono Android (el tipo de pirateo malo) sea aún más difícil de lo que solía ser.

Certificación clave

Key Attestation permitirá a los desarrolladores asegurarse de que las claves que pueden estar usando en sus aplicaciones sean válidas y estén almacenadas en el almacén de claves respaldado por hardware del teléfono y no en el software. Cuando la herramienta de certificación recibe un alias generado para una clave (la clave real nunca debe compartirse), genera una cadena de certificados que se puede utilizar para verificar la clave. Los desarrolladores pueden verificar tanto la clave como el estado de arranque verificado para asegurarse de que todo sea válido.

Los teléfonos que se envían con Android N y usan los servicios de Google tendrán un certificado emitido por Google como la autoridad raíz (o principal), mientras que otros teléfonos que se hayan actualizado necesitarán un certificado emitido por la compañía que los fabricó.

No todos los teléfonos que pueden ejecutar Android N tienen un entorno de hardware confiable para almacenar claves de cifrado, y en esos casos, se utiliza la certificación de clave de nivel de software. El estado de arranque verificado aún se puede verificar para asegurarse de que el software del sistema no haya sido alterado. Sí, esto significa que un desarrollador puede verificar la raíz. Eso es algo bueno siempre que no se aplique una penalización indebida a los usuarios que han rooteado su teléfono.

Cifrado a nivel de archivo

Anteriormente, Android usaba cifrado de nivel de bloque para cifrar toda la partición o dispositivo de almacenamiento de una vez. Este era un método de cifrado muy seguro, y mantener los tokens reales fuera del almacenamiento y en el hardware significaba que la única forma de hacerlo era con la contraseña o PIN correctos. Con Android N, las cosas se han cambiado a cifrado a nivel de archivo.

Direct Boot está diseñado para funcionar con encriptación a nivel de archivo con el fin de brindar tanto conveniencia como seguridad.

Cuando su dispositivo Android encriptado se inicia (o se reinicia en su bolsillo), el dispositivo está encriptado y bloqueado. Solo ciertas aplicaciones pueden ejecutarse, y esto se llama modo de arranque directo. Significa que aún puede recibir llamadas telefónicas o hacer que suene una alarma (o incluso ver algunas notificaciones de mensajes), pero para hacer algo más, deberá desbloquear y descifrar el dispositivo. Una vez desbloqueado, N utiliza el cifrado a nivel de archivo para permitirnos (al usuario) y a las aplicaciones tener un poco más de control sobre cómo se bloquean los datos.

Aquí hay dos ventajas: el FDE (cifrado de disco completo de capa de bloque) hace que los dispositivos de gama baja funcionen bastante mal. Google tardó algunos intentos en el Nexus 6 para hacerlo bien, y cualquier dispositivo con hardware de almacenamiento flash de lectura y escritura inferior a 50 MB / s todavía tiene problemas. La segunda ventaja (y más importante) es el uso del cifrado a nivel de archivo para una encriptación A autenticada con A ata asociada (AEAD). AEAD significa que los datos son más difíciles de acceder para un usuario no autorizado o una aplicación. Para las personas interesadas en AEAD, aquí hay una muy buena lectura del profesor de UC Davis Phillip Rogaway (archivo.pdf).

Este enfoque de cifrado de varios niveles permitirá a las compañías que fabrican androides con un precio muy económico ofrecer cifrado sin degradar el rendimiento.

Arranque directo

El cifrado a nivel de archivo también funcionará mejor con la función de arranque directo. Direct Boot ofrece un nuevo modo que los desarrolladores pueden aprovechar para que su aplicación pueda ejecutarse tan pronto como el sistema esté encendido en lugar de esperar a que un usuario desbloquee el teléfono o lo descifre.

Esto se realiza en conjunto con una nueva área de Almacenamiento de dispositivos y las aplicaciones que usan Direct Boot no tendrán ninguna interacción con el sistema de archivos normal protegido por credenciales y los archivos o directorios cifrados individualmente.

: Android 7.0: ¿Qué es el arranque directo y cómo mejorará su experiencia?

Acceso al directorio con alcance

Scoped Directory Access es una forma para que una aplicación obtenga permiso para acceder a un directorio específico en el almacenamiento externo (el almacenamiento externo es una partición fuera del sistema e incluye el almacenamiento de su teléfono y una tarjeta SD u otro dispositivo de almacenamiento conectado) sin solicitar permiso para todo el volumen o usando una ventana emergente para solicitar permisos de carpeta.

El acceso seguro a los datos almacenados es importante. Una aplicación que solo necesita acceso a la carpeta de almacenamiento Música o Fotos no debería ver nada más, y escribir código para usar el Marco de acceso de almacenamiento existente para limitar las cosas ha demostrado ser algo que muchos desarrolladores se niegan a hacer. la nueva API Scoped Directory Access facilitará a los desarrolladores la creación de aplicaciones que sean seguras y protejan sus datos.

Estas características de seguridad cruciales son una gran parte de Android N. Si bien algunos teléfonos (especialmente aquellos que no se envían con Nougat) pueden no usarlos todos, cada uno ayuda a proteger nuestros datos cuando se usan correctamente. Android ha madurado, y la atención al detalle que Google muestra con 7.0 puede no ser tan llamativa como los nuevos emojis o un nuevo esquema de color, pero es mucho más importante.