推广 热搜: 行业  设备    系统  参数  经纪    教师  机械  中国 

selinux

   日期:2024-12-16     作者:m7vkm    caijiyuan   评论:0    移动:http://changmeillh.xhstdz.com/mobile/news/11658.html
核心提示:改法:typeattribute system_server system_writes_mnt_vendor_violators; Android/lagvm/LINUX/android/device/qcom/sepo

改法:typeattribute system_server system_writes_mnt_vendor_violators;

selinux

Android/lagvm/LINUX/android/device/qcom/sepolicy_vndr

Android/lagvm/LINUX/android/vendor/jidu/sepolicy/private

1. 简介

SELinux带给Linux的主要价值是:提供了一个灵活的,可配置的MAC机制。

Security-Enhanced Linux (SELinux)由以下两部分组成

Kernel SELinux模块(/kernel/security/selinux)
用户态工具
SELinux是一个安全体系结构,它通过LSM(Linux Security Modules)框架被集成到Linux Kernel 2.6.x中。它是NSA (United States National Security Agency)和SELinux社区的联合项目。

SELinux提供了一种灵活的强制访问控制(MAC)系统,且内嵌于Linux Kernel中。SELinux定义了系统中每个【用户】、【进程】、【应用】和【文件】的访问和转变的权限,然后它使用一个安全策略来控制这些实体(用户、进程、应用和文件)之间的交互,安全策略指定如何严格或宽松地进行检查。

SELinux对系统用户(system users)是透明的,只有系统管理员需要考虑在他的服务器中如何制定严格的策略。策略可以根据需要是严格的或宽松的。

只有同时满足了【标准Linux访问控制】和【SELinux访问控制】时,主体才能访问客体。

1.1. DAC与MAC的关键区别(root用户)

在SELinux中没有root这个概念,安全策略是由管理员来定义的,任何软件都无法取代它。这意味着那些潜在的恶意软件所能造成的损害可以被控制在最小。一般情况下只有非常注重数据安全的企业级用户才会使用SELinux。

操作系统有两类访问控制:自主访问控制(DAC)和强制访问控制(MAC)。标准Linux安全是一种DAC,SELinux为Linux增加了一个灵活的和可配置的的MAC。

所有DAC机制都有一个共同的弱点,就是它们不能识别自然人与计算机程序之间最基本的区别。简单点说就是,如果一个用户被授权允许访问,意味着程序也被授权访问,如果程序被授权访问,那么恶意程序也将有同样的访问权。 DAC最根本的弱点是主体容易受到多种多样的恶意软件的攻击,MAC就是避免这些攻击的出路,大多数MAC特性组成了多层安全模型。

SELinux实现了一个更灵活的MAC形式,叫做类型强制(Type Enforcement)和一个非强制的多层安全形式(Multi-Level Security)。

2. SELinux的运行机制

SELinux的运行机制如下图

当一个subject(如: 一个应用)试图访问一个object(如:一个文件),Kernel中的策略执行服务器将检查AVC (Access Vector Cache), 在AVC中,subject和object的权限被缓存(cached)。如果基于AVC中的数据不能做出决定,则请求安全服务器,安全服务器在一个矩阵中查找“应用+文件”的安全环境。然后根据查询结果允许或拒绝访问。

3. SELinux的基本概念

3.1 主体(Subject

可以完全等同于进程。

:为了方便理解,如无特别说明,以下均把进程视为主体。

3.2 对象(Object

被主体访问的资源。可以是文件、目录、端口、设备等。

:为了方便理解,如无特别说明,以下均把文件或者目录视为对象。

3.3 政策和规则(Policy & Rule

系统中通常有大量的文件和进程,为了节省时间和开销,通常我们只是选择性地对某些进程进行管制。而哪些进程需要管制、要怎么管制是由政策决定的。

一套政策里面有多个规则。部分规则可以按照需求启用或禁用(以下把该类型的规则称为布尔型规则)。规则是模块化、可扩展的。在安装新的应用程序时

应用程序可通过添加新的模块来添加规则。用户也可以手动地增减规则。

3.4 安全上下文(Security Context

每个进程、文件和目录都有自己的安全上下文,进程具体是否能够访问文件或目录,就要看这个安全上下文是否匹配。如果进程的安全上下文和文件或目录的安全上下文能够匹配,则该进程可以访问这个文件或目录。当然,判断进程的安全上下文和文件或目录的安全上下文是否匹配,则需要依靠策略中的规则。举个例子,我们需要找对象,男人可以看作主体,女人就是目标了。而男人是否可以追到女人(主体是否可以访问目标,主要看两个人的性格是否合适(主体和目标的安全上下文是否匹配)。不过,两个人的性格是否合适,是需要靠生活习惯、为人处世、家庭环境等具体的条件来进行判断的(安全上下文是否匹配是需要通过策略中的规则来确定的)。

3.5 访问向量规则 (Access Vector Rules

AV规则是按照对客体类别的访问许可指定具体含义的规则,SELinux策略语言支持4类AV规则
allow  表示主体对客体执行允许的操作。
dontaudit  表示不记录违反规则的决策信息,且违反规则不影响运行。
auditallow  表示允许操作并记录访问决策信息。
neverallow  表示不允许主体对客体执行指定的操作

4. SELinux的工作模式

4.1 如何在系统中查看当前SELinux的工作模式

输入: getenforce 

4.2 Disable工作模式(关闭模式,此模式在Android中未使用

在 Disable 模式中,SELinux 被关闭,默认的 DAC 访问控制方式被使用。对于那些不需要增强安全性的环境来说,该模式是非常有用的。

例如,若从你的角度看正在运行的应用程序工作正常,但是却产生了大量的 SELinux AVC 拒绝消息,最终可能会填满日志文件,从而导致系统无法使用。在这种情况下,最直接的解决方法就是禁用 SELinux

当然,你也可以在应用程序所访问的文件上设置正确的安全上下文。

需要注意的是,在禁用 SELinux 之前,需要考虑一下是否可能会在系统上再次使用 SELinux,如果决定以后将其设置为 Enforcing 或 Permissive,那么当下次重启系统时,系统将会通过一个自动 SELinux 文件

重新进程标记。

关闭 SELinux 的方式也很简单,只需编辑配置文件 /etc/selinux/config,并将文本中 SELINUX= 更改为 SELINUX=disabled 即可,重启系统后,SELinux 就被禁用了。

4.3 Permissive工作模式(宽容模式

在 Permissive 模式中,SELinux 被启用,但安全策略规则并没有被强制执行。当安全策略规则应该拒绝访问时,访问仍然被允许。然而,此时会向日志文件发送一条消息,表示该访问应该被拒绝。

SELinux Permissive 模式主要用于以下几种情况

审核当前的 SELinux 策略规则

测试新应用程序,看看将 SELinux 策略规则应用到这些程序时会有什么效果

解决某一特定服务或应用程序在 SELinux 下不再正常工作的故障。

某些情况下,可使用 audit2allow 命令来读取 SELinux 审核日志并生成新的 SELinux 规则,从而有选择性地允许被拒绝的行为,而这也是一种在不禁用 SELinux 的情况下,让应用程序在 Linux 系统上工作的快速方法。

4.4 Enforcing工作模式(强制模式

从此模式的名称就可以看出,在 Enforcing 模式中, SELinux 被启动,并强制执行所有的安全策略规则。

4.5 如何设置SELinux的工作模式

输入:setenforce 0/1

ps:命令设置的SELinux工作模式重启后失效

android/ 根目录# make selinux_policy

scp -r  root@data/workspace//Android/lagvm/LINUX/android/out/target/product/msmnile_gvmq/vendor/etc/selinux .

adb push https://blog.csdn.net/langjian2012/article/details/selinux/* /vendor/etc/selinux/

前面的 push到 system/etc/ 后面push到/system/product/etc/

adb push init /system/bin/init
adb remount

本文地址:http://changmeillh.xhstdz.com/news/11658.html    物流园资讯网 http://changmeillh.xhstdz.com/ , 查看更多

特别提示:本信息由相关用户自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。

 
 
更多>同类最新文章
0相关评论

文章列表
相关文章
最新动态
推荐图文
最新文章
点击排行
网站首页  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  鄂ICP备2020018471号