Steve Kondik habla del futuro de la seguridad y los permisos de las apps en CyanogenMod y Android
Uno de los titulares que nos dejó el Google I/O fue que desde Google se estaban replanteando la posibilidad de que los usuarios pudiesen configurar los permisos que obtenían las aplicaciones cuando estas se instalaban. Hasta ahora, cuando instalamos una app somos informados en una pantalla de los permisos que requiere, pero no podemos hacer nada si no nos gusta un permiso en particular, mas allá de cancelar la instalación. El problema es que quitar permisos a apps no es sencillo, y ahora desde CyanogenMod lo confirman.
Anteriores versiones de CyanogenMod, la popular ROM que ofrece una experiencia mas cercana al Android stock con algunas mejoras propias, incluían la posibilidad de configurar qué permisos otorgar a cada app por separado. Sin embargo, las últimas versiones ya no lo permiten, un movimiento que obtuvo unas reacciones muy airadas por parte de la comunidad, que veía como una característica importante desaparecía sin dar explicaciones.
Ahora Steve Kondik, jefe de proyecto de CyanogenMod (CM en adelante), explica porqué se tomó esa decisión, y al mismo tiempo nos da pistas sobre el futuro de la ROM y de la seguridad en Android. Para empezar, el motivo por el que se eliminó la posibilidad de modificar los permisos encaja con lo que muchos habíamos supuesto: es muy fácil para el usuario romper cosas. Pongamos el caso de una app de mensajería que quiere acceder a tu lista de contactos, pero tú, como usuario preocupado por tu privacidad, lo has desactivado. Al recibir un «no» por respuesta, la app se queda en un estado en el que está esperando datos y no los está recibiendo, y acaba cerrándose con un error.
Para solucionar este problema, CM aportaba datos falsos a la app, lo cual es problemático. No solo aportar datos falsos a una app puede dar lugar a mas fallos, sino que al hacer esto se creaba, como lo define Kondik, un ambiente hostil para las aplicaciones. Ni que decir tiene que estas características recibieron duras críticas de desarrolladores que veían cómo sus usuarios no obtenían la experiencia publicitada porque ellos mismos habían capado el programa. Si no se hubiera cortado a tiempo, todo esto podría haber terminado en una escalada de hostilidades, con los desarrolladores haciendo sus apps incompatibles con CM.
Por tanto, está claro que configurar los permisos es un tema delicado, que Google tendrá que sopesar durante mucho tiempo antes de tomar una decisión. Para Kondik, incluir esa característica sería algo teatrero, una manera de contentar a un puñado de usuarios pero que realmente no aporta seguridad al sistema. En cambio, él propone otra manera de añadir seguridad, y al hacerlo lanza un rayo de luz al posible futuro de CM.
Para Kondik, lo que quiere el usuario es anonimato. Un anonimato real, empezando por las conexiones. Por eso, ha planteado nuevas APIs para que los desarrolladores de apps puedan crear comunicaciones seguras. Pone como ejemplo la API de Android para conectarse por VPN. Una VPN es una red privada que trata a ordenadores y dispositivos externos como si estuviesen en nuestra propia red. Es una manera mas segura de comunicarse que de la manera habitual, y además tiene la ventaja de que Android siempre avisa al usuario en caso de que se produzca una conexión de este tipo.
En este sentido iría una API para controlar las reglas de IPTables. Este es el subsistema incluido en sistemas Linux para el control de todos los paquetes que pasan por el sistema y la ruta que toman. Si los desarrolladores tuviesen acceso a ese tipo de control sobre las conexiones en Android, podrían crear aplicaciones como cortafuegos. También podrían crearse versiones de sistemas como Tor, un proyecto para asegurar el anonimato en Internet, así como notificar al usuario en caso de que paquetes de datos con información personal saliesen del dispositivo.
Como vemos, hay maneras de mejorar la seguridad en Android mas allá de controlar los permisos de las apps, y se añaden mas gracias a la llegada con Android 4.2 de SELinux, un sistema de política de seguridad propio de Linux que la divide en módulos mas fácilmente accesibles y modificables. Tal vez estas mejoras de seguridad sea algo demasiado complicado para el usuario de a pie, pero si desde CyanogenMod y Google consiguen implementarlas de manera transparente para el usuario y el desarrollador, podrían hacer de Android un sistema extraordinariamente seguro.
Fuente | Steve Kondik