4 votes

La mise en œuvre de SELinux MAC dans Android empêche-t-elle les applications dotées de privilèges Root d'accéder aux données d'autres applications ?

À partir d'Android 4.4, le MAC de SELinux est appliqué. Cela signifie-t-il que si une application peut être installée et exploiter le noyau pour obtenir des privilèges Root, le MAC empêchera toujours cette application avec des privilèges Root d'accéder aux données privées de l'application ?

Documentation Android dit,

SELinux peut être utilisé pour étiqueter ces périphériques afin que le processus auquel est attribué le privilège Root ne puisse écrire que sur ceux spécifiés dans la politique associée. De cette façon, le processus ne peut pas écraser les données et les paramètres du système en dehors du périphérique de bloc brut spécifique.

À titre de référence, je suis en train de mettre en œuvre un système de gestion des dispositifs mobiles et, dans le cadre de ce processus, je dois déterminer dans quelle mesure le système d'exploitation Android est lui-même sûr. C'est pourquoi j'ai besoin de savoir dans quelle mesure les données d'entreprise stockées sur un appareil sont protégées contre les rootkits, les logiciels espions et autres logiciels malveillants.

P.S. Cette question a été postée sur le site 'Unix & Linux' mais personne n'a pu y répondre, et un de leurs utilisateurs m'a suggéré de m'adresser à cette communauté, toute aide est la bienvenue. Merci.

0voto

Irfan Latif Points 16863

Pour la référence des futurs visiteurs, cela dépend du contexte SELinux du processus Root. Dans DAC UID 0 es el super utilisateur qui peut accéder à toutes les ressources du périphérique autorisées par le noyau. Le MAC (SELinux dans notre cas) est refusé par défaut, c'est-à-dire qu'aucun processus ne peut accéder à quoi que ce soit à moins qu'une règle de politique soit définie pour autoriser l'accès.

Il n'y a donc pas super contexte dans SELinux mais il est possible d'en définir un. C'est ce que font les applications d'enracinement depuis Lollipop. Magisk, par exemple, définit u:r:magisk:s0 avec un accès illimité à tout autre contexte. Tout processus s'exécutant avec l'UID 0 y u:r:magisk:s0 serait capable d'accéder à tout ce qui se trouve sur l'appareil, y compris les données des autres applications.

Cela dépend de l'exploit et du contexte dans lequel il est capable d'exécuter un processus. Avec SELinux appliqué, il est très difficile d'injecter quelque chose à la politique.

Pour plus de détails, voir :

androidalle.com

AndroidAlle est une communauté de androiders où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X