我在"http://source.android.com/devices/tech/security/se-linux.html“中找到了这句话。
在Android4.3中,SELinux是完全允许的。在Android4.4中,SELinux对几个根进程的域进行了强制执行: installd、netd、vold和zygote。所有其他进程,包括其他服务和所有应用程序,仍处于允许模式,以便在Android 4.4中进行进一步评估并防止失败。尽管如此,错误的应用程序可能会触发根进程中不允许的操作,从而导致进程或应用程序崩溃。
这意味着SEAndroid还没有完全启用,有人能确认这一点吗?
发布于 2014-08-02 00:07:02
SE for Android主要有三种模式:禁用、允许和强制。在4.3中,默认模式是允许的。这意味着SE已启用,但只记录策略违规,而不强制执行。在允许模式下,除了可以查看拒绝日志并查看策略如何工作以及它在强制模式下可能产生的影响之外,一切都与SE不存在或禁用时的工作方式相同。
对于4.4,默认模式被更改为强制,但默认策略保持非常简单,并且只在几个关键根进程周围放置保护。
所以答案是肯定的,SE for Android在4.4中完全启用并强制执行。但是,默认策略非常宽松。如果要确认特定设备上的模式,可以使用adb shell getenforce。如果您有根用户,也可以按如下方式使用setenforce (1=Enforcing,0=Permissive):
usage: setenforce [ Enforcing | Permissive | 1 | 0 ]最后,如果您有兴趣查看设备上的实际策略,请使用adb pull /sepolicy关闭策略二进制文件,然后使用apol查看它。在Ubuntu上,apol是setools-gui包的一部分。
https://stackoverflow.com/questions/24972756
复制相似问题