快速业务通道

SELinux进阶篇 应用目标策略管理非限制进程和用户

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-03-25

原文请见:http://netsecurity.51cto.com/art/201110/298841.htm

非限制的进程运行在非限制域中.比如,init进程运行在非限制的initrc_t域中,非限制的kernel进程运行在kernel_t域中,非限制的用户运行在unconfined_t域中.对于非限制的进程,SELinux策略规则仍然适用...


一、管理非限制进程

非限制的进程运行在非限制域中.比如,init进程运行在非限制的initrc_t域中,非限制的kernel进程运行在kernel_t域中,非限制的用户运行在unconfined_t域中.对于非限制的进程,SELinux策略规则仍然适用,然而有关允许进程运行在非限制域中的规则允许几乎所有的访问.因此,如果一个非限制进程被黑客控制的话,那么SELinux将不能阻止黑客获取对系统资源和数据的访问权限,当然DAC规则仍然适用,SELinux机制是在DAC层次上附加一层对Linux的增强,而不是简单地替代DAC.

下面将给出一个具体的例子来说明Apache Http服务器(httpd进程)在非限制的条件下运行,是如何能够访问本应由Samba服务器访问的数据的.值得注意的是:在Fedora 10中,httpd进程默认是限制运行在httpd_t域中的.下面的例子假设用户系统中安装了httpd、wget(一种类似于Windows系统下Flashget软件的多线程下载工具)、settroubleshoot-server、audit等工具包,并且SELinux机制运行在enforcing模式下.

(1)运行sestatus命令来确认Linux中SELinux是运行的,且运行在enforcing模式下,运行结果与图1所示一致:

图1 运行sestatus命令来确认Linux中SELinux是否运行

(2)以root用户身份,创建一个新的测试文件testfile2,该文件路径为httpd进程的工作目录下,如下所示:

  1. #touch /var/www/html/testfile2

(3)使用ls -z命令来查看新创建的文件的SELinux上下文信息,如图2所示:

图2 使用ls-Z命令查看新创建文件的SELinux上下文信息

从上述结果中可以清楚看到:Linux用户默认运行在非限制域中,testfile2文件上下文信息标识为unconfined_u.并且,RBAC用于进程,而不是文件.另外,对于文件来说角色也没有特别的含义,因此赋予其object_r为较为通用的角色.而httpd_sys_content类型则允许httpd进程对该文件进行访问.

(4)采用chron命令暂时对文件的标识进行改变.一旦系统重启,该改变将会失效.若要永久改变文件的标识,可以采用semanage命令进行操作.使用root用户身份,运行如下命令来将文件类型改为由Samba服务器可访问的类型:

  1. #chcon -t samba_share_t /var/www/html/testfile2

然后,采用ls -z命令来查看修改后的结果:

  1. # ls -Z /var/www/html/testfile2
  2. -rw-r--r-- root root unconfined_u:object_r:samba_share_t:s0 /var/www/html/testfile2

(5)在将httpd进程从限制修改为非限制之前,需要将该进程停止,使用如下命令:

  1. #/sbin/service httpd stop

(6)以root用户身份运行如下命令,来改变httpd进程的类型,以将其从限制改为非限制:

  1. #chcon -t unconfined_exec_t /usr/sbin/httpd

然后,使用ls -z命令来查看进程,以确保修改生效,如下所示:

  1. # ls -Z /usr/sbin/httpd
  2. -rwxr-xr-x root root system_u:object_r:unconfined_exec_t:s0 /usr/sbin/httpd

(7)为了使httpd在运行时该修改生效,需要重新启动httpd进程,如图6-22所示:

(8)采用ps -ez | grep httpd命令来查看httpd进程运行在非限制域中的情况,如图3所示:

图3 启动httpd进程并查看

(9)在有权限许可的目录下,运行如下命令来测试httpd进程运行在非限制情况下的效果,如图4所示:

图4 wget命令成功执行

上述的运行结果显示,该命令能够成功运行.虽然httpd进程原来没有访问标记为samba_share_t类型文件的权限,然而修改,httpd进程现在运行在非限制环境下(unconfined_t),SELinux转

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号