Seguridad móvil: sistema operativo Android
Como muchos de nosotros sabemos, Google desarrolla software para dispositivos móviles con capacidades de procesamiento para teléfonos inteligentes y tabletas. Su kernel está basado en Linux. Sus aplicaciones instaladas se ejecutan en una caja de arena. Sin embargo, muchos productores han lanzado sus antivirus para dichos sistemas operativos, como Kasperky, MCAfee y AVG Technologies. Aunque la aplicación antivirus se ejecuta en un entorno de pruebas, tiene un límite para escanear el entorno.
Algunas características del sistema operativo Android son las siguientes:
- Máquina virtual Dalvik optimizada para dispositivos móviles
- Base de datos SQLite para datos estructurados
- Navegador integrado basado en el motor WebKit
- Soporte de diferentes formatos de medios como audio, imágenes, video.
- Entorno de desarrollo rico como emuladores (Bluestack), herramientas de depuración
Arquitectura del sistema operativo Android
La siguiente imagen muestra la arquitectura general del sistema operativo Android:
The first layer is Application, incluye aplicaciones como SMS, calendarios y otras aplicaciones de terceros.
The second layer is Application Framework, que incluye -
Ver sistema, que es para que los desarrolladores creen cuadros, líneas, cuadrículas, etc.
Los proveedores de contenido permiten que las aplicaciones accedan y utilicen datos de aplicaciones de terceros.
El administrador de actividades controla el ciclo de vida de una aplicación.
El administrador de recursos asigna recursos a una aplicación.
El administrador de notificaciones ayuda a mostrar notificaciones de aplicaciones.
The third layer is libraries,que es la parte más importante. Utiliza la función de la aplicación, por ejemplo, para almacenar la fecha en una base de datos. Es SQLite el que utiliza esta función.
The fourth layer is the Linux Kernel. Contiene todos los controladores de los componentes de hardware, como cámara, inalámbrico, almacenamiento, etc.
API de administración de dispositivos Android
La API de administración de dispositivos introducida en Android 2.2 proporciona funciones de administración de dispositivos a nivel del sistema. Estas API permiten a los desarrolladores crear aplicaciones conscientes de la seguridad que son útiles en entornos empresariales, en los que los profesionales de TI requieren un gran control sobre los dispositivos de los empleados.
Las aplicaciones de administración de dispositivos se escriben utilizando la API de administración de dispositivos. Estas aplicaciones de administración de dispositivos hacen cumplir las políticas deseadas cuando el usuario instala estas aplicaciones en su dispositivo. Las aplicaciones integradas pueden aprovechar las nuevas API para mejorar el soporte de intercambio.
A continuación, se muestran algunos ejemplos de los tipos de aplicaciones que pueden utilizar la API de administración de dispositivos:
- Clientes de correo electrónico
- Aplicaciones de seguridad que limpian de forma remota
- Servicios y aplicaciones de administración de dispositivos
Los ejemplos utilizados en este tutorial se basan en la muestra de API de administración de dispositivos, que se incluye en las muestras de SDK (disponibles a través de Android SDK Manager) y se encuentra en su sistema como
<sdk_root>/ApiDemos/app/src/main/java/com/example/android/apis/app/ DeviceAdminSample.java.
Aplicación de muestra
Esta aplicación de muestra ofrece una demostración de las funciones de administración del dispositivo. Presenta a los usuarios una interfaz de usuario que les permite habilitar la aplicación de administración del dispositivo.
Una vez que los usuarios han habilitado la aplicación, pueden usar los botones en la interfaz de usuario para hacer lo siguiente:
Establecer la calidad de la contraseña.
Especifique los requisitos para la contraseña del usuario, como la longitud mínima, la cantidad mínima de caracteres numéricos que debe contener, etc.
Establezca la contraseña. Si la contraseña no se ajusta a las políticas especificadas, el sistema devuelve un error.
Establezca cuántos intentos fallidos de contraseña pueden ocurrir antes de que se borre el dispositivo (es decir, se restaure a la configuración de fábrica).
Establezca cuánto tiempo a partir de ahora caducará la contraseña.
Establezca la longitud del historial de contraseñas (la longitud se refiere a la cantidad de contraseñas antiguas almacenadas en el historial). Esto evita que los usuarios reutilicen una de las últimas contraseñas que usaron anteriormente.
Especifique que el área de almacenamiento debe estar cifrada, si el dispositivo lo admite.
Establezca la cantidad máxima de tiempo inactivo que puede transcurrir antes de que se bloquee el dispositivo.
Haga que el dispositivo se bloquee inmediatamente.
Limpie los datos del dispositivo (es decir, restaure la configuración de fábrica).
Desactiva la cámara.