版权声明
本文来自博客园,作者:观心静 ,转载请注明原文链接:https://www.cnblogs.com/guanxinjing/p/17878100.html
前言
selinux是Linux系统中的安全策略,主要作用是最大限度地减小系统中服务进程可访问的资源(最小权限原则)。任何程序对其资源享有完全的控制权。
Android 中包含 SELinux(处于强制模式)和默认适用于整个 AOSP 的相应安全政策。在强制模式下,非法操作会被阻止,并且尝试进行的所有违规行为都会被内核记录到 dmesg 和 logcat。开发时,您应该先利用这些错误信息对软件和 SELinux 政策进行优化,再对它们进行强制执行。简单的来说selinux系统中任何进程想干什么事情(例如文件的读写),都必须先在安全策略配置文件中赋予权限。凡是没有出现在安全策略配置文件中的权限,进程就没有该权限。
查询当前selinux状态
查询当前selinux状态, Permissive为关闭状态 enforce为开启状态
$ adb shell
# getenforce
Permissive
开启与关闭SELinux
临时性通过Adb开启与关闭selinux
设置 0为关闭状态 1为开启状态
$adb shell
#setenfore 0
修改系统默认关闭selinux
首先在Android系统中启动的流程是这样的: BootRom -> Bootloader -> Linux kernel -> init进程 -> Zygote进程 -> SystemServer -> Launcher
而selinux初始化的非常早,在init进程的阶段初始化,这么重要的东西当然是越早初始化越好了。而关闭的方式就是在初始化的过程中。
修改文件路径:/aosp/system/core/init/selinux.cpp
显示安全上下文
加上-Z能显示主体、客体的上下文
- ls -Z 能显示当前目录下的文件系统的安全上下文
- ps -Z 能显示进程的安全上下文
- id -Z 能显示shell的安全上下文:joe:usr_r:usr_t
End
本文来自博客园,作者:观心静 ,转载请注明原文链接:https://www.cnblogs.com/guanxinjing/p/17878100.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
2019-03-06 Android 开发 Fresco框架点击小图显示全屏大图实现 ZoomableDraweeView