观心静

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
  422 随笔 :: 0 文章 :: 86 评论 :: 139万 阅读

版权声明

本文来自博客园,作者:观心静 ,转载请注明原文链接: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

posted on   观心静  阅读(13)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
历史上的今天:
2019-03-06 Android 开发 Fresco框架点击小图显示全屏大图实现 ZoomableDraweeView
点击右上角即可分享
微信分享提示