SEandroid 安全机制---整体框架

本文详细介绍了SEAndroid安全机制,包括其在内核空间和用户空间的框架。在内核空间,主要涉及SELinux LSM模块,而在用户空间,有安全上下文、安全策略和Security Server。SEAndroid在资源访问上叠加了基于UID/GID的DAC和基于安全策略的MAC检查。在用户空间,Security Context、Policy和Server协同工作,确保安全策略得以实施。通过对安全上下文的理解,可以更好地掌握Android系统中的对象访问控制策略。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言:

Java层和native守护进程socket通信 一文中,新建了一个名为myguard的socket。然后修改了5个权限相关的文件,

1,在device/qcom/sepolicy/common/ 路径下添加myguard.te文件,内容如下,

#myguard
allow myguard_socket myguard_socket:sock_file create_file_perms; 
type_transition myguard_socket socket_device:sock_file myguard_socket;

2,在device/qcom/sepolicy/common/的file_contexts文件中添加

/dev/socket/myguard                             u:object_r:myguard_socket:s0

3,在device/qcom/sepolicy/common/file.te中添加

type myguard_socket, file_type;

4,在device/qcom/sepolicy/common/system_app.te 中添加

allow system_app myguard_socket:sock_file rw_file_perms;

5,在device/qcom/sepolicy/common/system_server.te中添加

allow system_server myguard_socket:sock_file rw_file_perms;

编译刷入版本开机启动之后,在dev/ socket路径下出现myguard


2个进程读写一个socket为什么非要搞得这么艰难?这是为啥呢?

还不是SEAndroid安全机制!

在引进SEAndroid安全机制之前,Android系统的安全机制分为应用程序和内核两个级别。

应用程序级别的安全机制就是通常说的Permission机制。一个应用如果需要访问一些系统敏感或者特权资源,

那么就必须要在AndroidManifest.xml配置文件中进行申请,并且在安装的时候由用户决定是否赋予相应的权限(android 5.0),

或者在apk运行的时候由用户决定是否赋予相应的权限(android 6.0)。

内核级别的安全机制就是传统的Linux UID/GID机制。在Linux中,每一个用户都拥有一个用户ID,并且也有一个用户组ID,

分别简称为UID和GID。此外,Linux系统的进程和文件也有UID和GID的概念。Linux就是通过用户、进程、

文件的UID/GID属性来进行权限管理的。文件的权限控

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值