如何新增一个app的防护规则。
1、seapp_contexts:
#新增 一个app user=_app seinfo=bd_test?name=com.baidu.testapp?domain=testapp_app type=test_app_data_file levelFrom=user
user=_app seinfo=bd_test?name=com.baidu.test:* domain=test_app type=test_app_data_file levelFrom=user
以test为例 标签:bd_test 包名:com.baidu.test 进程域:test_app type类型:test_app_data_file?
2、文件file.te:用于文件类型定义
type test_app_data_file, file_type, data_file_type;
对该app的创建的文件类型进行定义
3、对该app的域进行管理?
type test_app, domain;定义域
定义该域的访问域、去除拒绝访问限制
allow test_app radio_service:service_manager find;
neverallow { domain -test_app -init -installd -system_server } { test_app_data_file }:file no_w_file_perms;
4、keys_conf
用于签名证书的地址指定,该文件是系统配置的,见系统目录system/sepolicy/Android.mk
# xxx [@BD_TEST] ALL : $ANDROID_BUILD_TOP/out/security/bd_xxx.pem
编译阶段通过脚本将该证书拷贝到系统指定目录。
5、mac_permissions.xml
标签和证书进行绑定标签直接定义到包
<?xml version="1.0" encoding="utf-8"?> <policy> <signer signature="@BD_MAP" > ?? ?<seinfo value="bd_map" /> </signer>
</policy> ?
linux版本见链接。深入理解SELinux SEAndroid之二_Innost的专栏-CSDN博客
|