¿En qué se diferencia el modelo de seguridad de Android del de UNIX?

5

En el modelo de seguridad de UNIX, inicia sesión como usuario, y luego todos los procesos que inicia pueden acceder a todo lo que pertenece a su cuenta de usuario, es decir, la confianza se basa en la cuenta del usuario, no en el ejecutable en particular. / p>

Pero en mi teléfono con Android, parece que las cosas son ligeramente diferentes: cada aplicación parece ejecutarse bajo su propia cuenta de usuario. ¿Es eso correcto? ¿O es que las aplicaciones creadas por el mismo autor se ejecutan bajo la misma cuenta de usuario? ¿La clave de firma privada del autor da acceso a la cuenta de usuario?

También, leí que el kernel de Linux se modificó para adaptarse al modelo de seguridad de Android:

  

Para obtener un sistema Android que funcione, necesita el nuevo tipo de bloqueo que han creado, así como enlaces en el sistema central para su modelo de seguridad. Para escribir un controlador para que el hardware funcione en Android, debe integrarse correctamente en este nuevo bloqueo, así como a veces el extraño modelo de seguridad .

Estoy particularmente interesado en lo que fueron estos cambios en el núcleo, y ¿por qué son extraños?

    
pregunta sashoalm 11.11.2014 - 14:34
fuente

1 respuesta

5

Android se basa esencialmente en el tema de seguridad del Kernel de Linux para su modelo de seguridad:

  1. Permisos basados en usuarios
  2. aislamiento del proceso
  3. Mecanismos para la comunicación entre procesos
  4. Kernel modular que se puede personalizar (módulos inseguros eliminados / modificados)

Bizarre parece una palabra fuerte, pero Android definitivamente fue un poco extremo al combinar el aislamiento del proceso con los permisos basados en el usuario. Tienes toda la razón, para cada aplicación se crea un usuario. Es independiente del autor del programa. Si hay varias aplicaciones del mismo autor, cada aplicación creará un usuario para ella. Los datos privados de cada aplicación están protegidos por los permisos de este usuario, al igual que el espacio de proceso. De esta manera, solo la aplicación puede acceder a sus datos privados, y su espacio de proceso solo puede ser accedido por la aplicación.

Las aplicaciones pueden comunicarse entre sí a través de IPC, y la principal adición al kernel a este respecto es la Clase de cuaderno . Esta adición permite que un servicio en segundo plano interactúe con aplicaciones y datos de mensajería entre procesos. Cuando se crea de esta manera, no se vive indefinidamente en el fondo, sino que se crea con un propósito específico y se elimina una vez que se cumple.

Para obtener información más detallada, sugiero leer Descripción general de seguridad de Android .

    
respondido por el RoraΖ 11.11.2014 - 15:03
fuente

Lea otras preguntas en las etiquetas