[Linux] SEAndroid基础学习

本文介绍了SEAndroid的基础知识,重点关注权限拒绝信息的分析及如何通过修改权限或安全上下文解决问题。内容包括SEAndroid相关文件如system/sepolicy目录、te文件、上下文描述文件和BoardConfig.mk文件的作用,以及如何查看和处理权限拒绝日志。通过实例展示了权限配置和安全上下文修改的过程。

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

概述

SEAndroid是在Android 4.3版本中开始引入的基于SELinux的系统安全机制。

关于SELinux的一些基础已经在SELinux基础中总结了。
在平时工作中,遇到SEAndroid最多的,就是一些权限问题,因此,本文的主要目标,是如何查看SELinux权限拒绝信息、如何修改添加权限。

1.SEAndroid相关文件

1.system/sepolicy目录

该目录是SEAndroid的核心,该目录中的文件在编译后会包含 SELinux 内核安全政策,并涵盖上游 Android 操作系统。
一般来说,不能直接修改system/sepolicy文件,而是添加或修改自己的设备专用政策文件,即在/device/xxx/xxx/sepolicy文件。

2.te文件

以.te结尾的文件是SEAndroid的政策文件,在文件位于/system/sepolicy中,用来定义域(domain)和标签.如在/system/sepolicy/public/init.te中:

# Create and mount on directories in /.
allow init rootfs:dir create_dir_perms;
allow init {
    rootfs cache_file cgroup storage_file system_data_file system_file vendor_file postinstall_mnt_dir }:dir mounton;
allow init cgroup_bpf:dir {
    create mounton };
...
# Init should not access sysfs node that are not explicitly labeled.
neverallow init sysfs:file {
    open read write };

allow语句和neverallow语句用来定义规则,具体含义参见在SELinux中的说明.

1.一般情况下,不能修改/system/sepolicy下的.te文件,而是在/device/xxx/xxx/s

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值