一种基于权能机制的linux系统特权分配方法技术方案

技术编号:11234458 阅读:63 留言:0更新日期:2015-04-01 08:22
本发明专利技术公开了一种基于权能机制的linux系统特权分配方法。本方法为:1)安全模式下,设置用户角色配置文件和角色能力配置文件;2)根据系统的特权应用所需要的能力对其进行标记;服务器的TPM对配置文件和标记后的特权应用进行度量和写保护;3)开启TPM度量,进入系统工作模式;TPM对所述配置文件进行度量验证,通过后根据用户名查询配置文件获得对应的角色,读取该角色包含的能力集;4)PAM根据该角色对当前进程的能力进行标记,当调用某个应用时,如果是特权应用,则判断该应用所标记的能力集与进程所标记的能力集是否匹配,如果匹配则进程获取该特权应用的能力并执行该特权应用,否则拒绝执行。本方法易于管理和权限控制。

【技术实现步骤摘要】
【专利摘要】本专利技术公开了。本方法为:1)安全模式下,设置用户角色配置文件和角色能力配置文件;2)根据系统的特权应用所需要的能力对其进行标记;服务器的TPM对配置文件和标记后的特权应用进行度量和写保护;3)开启TPM度量,进入系统工作模式;TPM对所述配置文件进行度量验证,通过后根据用户名查询配置文件获得对应的角色,读取该角色包含的能力集;4)PAM根据该角色对当前进程的能力进行标记,当调用某个应用时,如果是特权应用,则判断该应用所标记的能力集与进程所标记的能力集是否匹配,如果匹配则进程获取该特权应用的能力并执行该特权应用,否则拒绝执行。本方法易于管理和权限控制。【专利说明】一种基于权能机制的I inux系统特权分配方法
本专利技术涉及系统安全的权限控制领域,是一种基于权能(capability)机制的Iinux系统特权分配方法。
技术介绍
随着Iinux系统的普及,对Iinux系统的攻击与防护成了近年来系统安全领域的主要研宄内容。Iinux的传统安全机制是限制普通用户仅持有最基本的权限而赋予一个特权用户root用户所有的权限,而当普通用户需要完成特权操作如更改用户自己的密码时,Iinux中引入了 Set-UID机制使普通用户通过执行特权应用程序(特权应用程序是指进行set-UID位标记的程序,这类程序的属主是root用户,执行这类程序可以让普通用户临时获得root权限)临时获得root权限,执行特权操作。Set-UID机制使这类依赖单一用户实现特权操作的方式加大了系统面临的风险,因为攻击者只要利用特权应用程序的安全漏洞攻击获得root权限,就可以对系统为所欲为了。据统计,Iinux系统中超过80%的攻击的第一步均是取得root权限。目前对Iinux系统的安全防护主要从两方面入手:一方面是保证所有的特权应用程序不含有安全漏洞;二是当应用程序在被攻陷时,将危害降低到最小。Iinux由于其开发语言C语言本身的脆弱性,导致对于第一方面的研宄工作是比较困难的,近年来进展甚微。因此,第二方面,系统中对用户的权限控制是近年来系统安全研宄的热点话题。 当前Iinux系统中的解决方案是用capability机制来替代set_UID机制,capability机制细粒度地将root权限划分成若干个独立的权限单元,称为一个capability,本文译为能力。在普通用户需要特权操作时,不再是给予其root权限,而是小细粒度地给予特定的能力,有效地限制安全隐患的威胁范围。Capability机制中,能力分为进程能力和文件能力,进程能力有:cap_permitted集简称pP,cap_effective集简称pE,cap_inheritable集简称pi。文件能力同样有这三个能力集分别简称fP,fE和fI。另外,进程能力集有一个cap_bset用于限制允许进程可拥有的能力。Capability机制以一定的规则分配这些能力集实现root权限的划分,P0SIX.1e标准草案中有对它的具体描述。 然而,capability机制有着自己的局限性,这也导致了目前Iinux生态环境中,set-UID机制仍是主流:(I) capability机制分配使用过于复杂,Linux系统中设计了有36个能力,未来还很可能继续增加(比如CAP_SYS_ADMIN这个特权单元的细粒度不够),使用者需要清晰地知道每个特权的功能及使用方法。(2)root用户仍然具有超级特权,因为capability机制是基于进程的,不能给指定用户指定特权,故root用户的超级特权并没有被限制。
技术实现思路
基于此,本专利技术提出了一种基于capability机制的Iinux系统特权分配方法,本方法有效解决了 capability机制的上述缺陷,易于管理,用户不再需要了解36个能力具体的功能及使用方法,用户能力的获得对用户是透明的;该系统对权限的划分是依据用户指定的,可以有效限制root用户的超级特权。 本专利技术的技术方案为: 一种基于权能机制的Iinux系统特权分配方法,其步骤为: I)关闭服务器的TPM启动度量,进入Iinux系统安全模式,登录root用户设置用户角色配置文件和角色能力配置文件;其中,所述用户角色配置文件中,一个用户对应且只对应一个角色;所述角色能力配置文件中一个角色依功能对应一个能力组,多个角色之间允许包含相同的能力; 2)根据Iiunx系统的特权应用程序所需要的能力对其进行标记; 3)服务器的TPM对所述用户角色配置文件、角色能力配置文件和标记后的特权应用程序和登录程序的可插入验证模块PAM进行度量和写保护,并将最新的度量值写入TPM ; 4)开启服务器的TPM启动度量,进入I inux系统工作模式;TPM对所述用户角色配置文件、角色能力配置文件进行度量验证,验证通过则进行步骤5); 5)登录程序的可插入验证模块PAM对用户输入的用户名和密码进行认证,认证通过后根据输入的用户名查询用户角色配置文件获得该用户名对应的角色,然后查询角色能力配置文件读取该角色包含的能力集; 6)可插入验证模块PAM根据该角色对当前进程的能力进行标记,然后完成该用户的登录; 7)当该用户调用某个应用程序时,进程判断该应用程序是否为特权应用程序,如果不是,则可以执行,如果是特权应用程序,则判断该应用程序所标记的能力集与进程所标记的能力集是否匹配,如果匹配则进程获取该特权应用程序的能力并执行该特权应用程序,否则拒绝执行。 进一步的,所述根据Iiunx系统的特权应用程序所需要的能力对其进行标记的方法为:首先在每一系统调用内核代码中插入钩子函数,得到每一系统调用对应的能力,建立一系统调用能力对应表,表中的每一项的格式为:(系统调用名,参数)_>能力名;然后根据特权应用程序的系统调用得到其所使用的系统调用函数和参数,然后查找该系统调用能力对应表确定该特权应用程序所需要的能力并进行标记。 进一步的,采用一文件允许能力集合fP、一文件可继承能力集合Π和一个文件有效能力集合fE对所述特权应用程序进行标记;其中,文件允许能力集合fP初始值为空,文件可继承能力集合Π记录特权应用程序所需要的能力,文件有效能力集合fE中的特权应用程序所需要的能力置true。 进一步的,所述服务器采用一 trace_cap工具对所述特权应用程序所需要的能力进行标记,且步骤3)之后,TPM将该trace_cap工具设置为不可执行。 进一步的,所述PAM模块根据该角色对当前进程的能力进行标记的方法为:PAM模块采用一进程可继承能力集Pl、进程允许能力集PP、进程有效能力集PE和进程最多所能获得的能力集cap_bSet对当前进行能力进行标记,其中首先清空进程的进程允许能力集pP和进程有效能力集pE,然后设置当前进程可继承能力集pi = setl,设置cap_bset = setl ;其中,setl为该角色包含的能力集。 进一步的,所述步骤7)中,如果该应用程序为特权应用程序,且该特权应用程序的文件可继承能力集π为setl且对应的文件有效能力集fE == true,则更新进程能力集为pP = pl&fl,从而进程将获得setl中定义的特权,执行该本文档来自技高网
...
一种<a href="http://www.xjishu.com/zhuanli/55/201410643335.html" title="一种基于权能机制的linux系统特权分配方法原文来自X技术">基于权能机制的linux系统特权分配方法</a>

【技术保护点】
一种基于权能机制的linux系统特权分配方法,其步骤为:1)关闭服务器的TPM启动度量,进入linux系统安全模式,登录root用户设置用户角色配置文件和角色能力配置文件;其中,所述用户角色配置文件中,一个用户对应且只对应一个角色;所述角色能力配置文件中一个角色依功能对应一个能力组,多个角色之间允许包含相同的能力;2)根据liunx系统的特权应用程序所需要的能力对其进行标记;3)服务器的TPM对所述用户角色配置文件、角色能力配置文件和标记后的特权应用程序和登录程序的可插入验证模块PAM进行度量和写保护,并将最新的度量值写入TPM;4)开启服务器的TPM启动度量,进入linux系统工作模式;TPM对所述用户角色配置文件、角色能力配置文件进行度量验证,验证通过则进行步骤5);5)登录程序的可插入验证模块PAM对用户输入的用户名和密码进行认证,认证通过后根据输入的用户名查询用户角色配置文件获得该用户名对应的角色,然后查询角色能力配置文件读取该角色包含的能力集;6)可插入验证模块PAM根据该角色对当前进程的能力进行标记,然后完成该用户的登录;7)当该用户调用某个应用程序时,进程判断该应用程序是否为特权应用程序,如果不是,则可以执行,如果是特权应用程序,则判断该应用程序所标记的能力集与进程所标记的能力集是否匹配,如果匹配则进程获取该特权应用程序的能力并执行该特权应用程序,否则拒绝执行。...

【技术特征摘要】

【专利技术属性】
技术研发人员:涂碧波李艳昭孟丹
申请(专利权)人:中国科学院信息工程研究所
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1