通过属性值
获取当前系统的状态值
adb shell getenforce
Enforcing:表示SELinux处于开启
Permissive:表示SELinux处于关闭
设置当前系统的状态值
需要系统被root,setenforce 命令修改的是 /sys/fs/selinux/enforce 节点的值,是 kernel 意义上的修改 selinux 的策略
关闭
adb shell setenforce 0
打开
adb shell setenforce 1
通过修改系统源码
system/core/init/selinux.cpp中进行修改来关闭SELinux权限
以下代码是在android 12的基础上进行的修改
diff --git a/init/selinux.cpp b/init/selinux.cpp
index 29c0ff3ba..773753628 100644
--- a/init/selinux.cpp
+++ b/init/selinux.cpp
@@ -93,6 +93,7 @@ namespace {
enum EnforcingStatus { SELINUX_PERMISSIVE, SELINUX_ENFORCING };
+/**
EnforcingStatus StatusFromProperty() {
EnforcingStatus status = SELINUX_ENFORCING;
@@ -111,13 +112,14 @@ EnforcingStatus StatusFromProperty() {
}
return status;
-}
+}*/
bool IsEnforcing() {
- if (ALLOW_PERMISSIVE_SELINUX) {
- return StatusFromProperty() == SELINUX_ENFORCING;
- }
- return true;enforceenforce
+ // if (ALLOW_PERMISSIVE_SELINUX) {
+ // return StatusFromProperty() == SELINUX_ENFORCING;
+ // }
+ // return true;
+ return false;
}