2020-09-15

2020/06/14 Selinux模块
这周在看论文《基于密度聚类的Android平台异常入侵检测系统的研究》,里面提到了Selinux。这是2010年Shabtai等人提出的针对Android平台的入侵检测框架,并在Android系统上实现了一种更为安全的访问控制策略SElinux.
SElinux的作用:
作为Linux内核模块的一个安全子系统,SELinux的最大作用就是最大限度地减小系统中服务进程可访问的资源。
SELinux提供了一种灵活的强制访问控制(MAC)系统,且内嵌于Linux Kernel中。SELinux定义了系统中每个用户、进程、应用和文件的访问和转变的权限,然后它使用一个安全策略来控制这些实体(用户、进程、应用和文件)之间的交互,安全策略指定如何严格或宽松地进行检查。
SELinux对系统用户(system users)是透明的,只有系统管理员需要考虑在他的服务器中如何制定严格的策略。策略可以根据需要是严格的或宽松的。
只有同时满足了标准Linux访问控制和SELinux访问控制时,主体才能访问客体。
SELinux是Linux 内核中提供的强制访问控制系统。
selinux有disabled、permissive、enforcing 三种选择:
Disabled :不启用控制系统。
permissive:开启控制系统,但是处于警告模式。即使你违反了策略的话它让你继续操作,但是把你的违反的内容记录下来。
Enforcing:开启控制系统,处于强制状态。一旦违反了策略,就无法继续操作下去。
DAC(自主访问控制)和MAC(强制访问控制):
DAC:主体对它所属的对象和运行的程序拥有全部的控制权。
① DAC是传统的Linux的访问控制方式,DAC可以对文件、文件夹、共享资源等进行访问控制。
② 在DAC这种模型中,文件客体的所有者(或者管理员)负责管理访问控制。
③ DAC使用了ACL(Access Control List,访问控制列表)来给非管理者用户提供不同的权限,而root用户对文件系统有完全自由的控制权。

MAC:管理员管理访问控制,用户不能改变它,任何没有被显示授权的操作都不能执行。
① SELinux在内核中使用MAC检查操作是否允许。
② 在MAC这种模型中,系统管理员管理负责访问控制,用户不能直接改变强制访问控制属性。
③ MAC可以定义所有的进程(称为主体)对系统的其他部分(文件、设备、socket、端口和其它进程等,称为客体)进行操作的权限或许可。
在这里插入图片描述

在DAC模式下,只要相应的目录有相应的权限,就可以被访问;在MAC模式下,要受进程允许访问目录范围的限制。
3. DAC和MAC的其它区别
① DAC的主体是真实有效的用户和组ID,MAC的主体是安全上下文,两者的UID是各自独立的。
② DAC的访问控制模式是rwxrwxrwx,MAC的访问控制模式是user:role:type。

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

开启selinux:
在这里插入图片描述

这块遇到了问题,即使修改了配置,但selinux的模式还是没有更改过来,查了很多文章千篇一律都一样,没有解决问题,下周继续把这个摸清楚,然后做实验:更改安全上下文,管理布尔值,监控冲突和更改端口。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值