微波EDA网,见证研发工程师的成长!
首页 > 应用设计 > 工业电子 > 一种可信增强的访问控制框架的设计与实现

一种可信增强的访问控制框架的设计与实现

时间:05-26 来源:互联网 点击:
借鉴可信计算思想,从可信增强的角度出发,提出了一个可信增强的访问控制框架,并给出了该框架的具体实施流程。该框架在普通Flask的基础上引入了身份认证和可信监控机制,解决了传统访问控制中存在的“内部威胁”问题,它是在访问控制中引入可信计算的一个尝试,具有一定的指导意义。

----------

    目前,大部分终端平台信息安全系统主要是由防火墙、入侵监测和病毒防范等组成,但仅靠“堵漏洞、作高墙、防外攻”无法从根本上解决终端平台的安全问题[1]。纵观安全操作系统近40年的发展历史可以发现,安全操作系统得到了长足的发展,并在访问控制框架和安全模型方面均取得了丰硕的成果。但是,传统的访问控制并不能解决“内部威胁”问题。造成内部威胁的原因主要是“脆弱性或漏洞攻击”。“脆弱性或漏洞攻击”是指内部授权主体可以绕过检测和访问控制机制,利用自身的权限和已知的系统脆弱性及漏洞,通过完全合法的操作发动内部攻击。从技术上讲,这种内部威胁的根源在于传统的访问控制理论存在的缺陷。传统的访问控制理论是基于“关口控制”理论实施的,即它不会让不符合条件的主体对客体进行请求的操作,但是主体一旦取得相应的操作权限,它在允许操作范围内的活动行为就可以畅通无阻。究其原因,主体对客体的访问和行为是根据授权和身份识别来决定的,授权一旦确定,就不会再考虑主体的表现,也不会再考虑主体行为的可信性,直到另外一次授权开始。另外,传统的访问控制也不能保证客体内容的真实性和完整性。
    因此,寻求一种通用的方法对授权操作的行为进行监管,控制授权后的信息流失,保证合法主体的行为得到应有的控制和监督,才能使这类主体的行为规范可信,预防和控制内部威胁的发生。目前,随着新的安全技术的兴起,可信计算也成为人们关注的热点。从可信计算的概念及其特征可以发现,通过引入可信计算解决上述安全问题是可行的。
1 可信计算思想
    为了提高计算机的安全防护能力,由Intel、惠普、微软、IBM等业界大公司牵头,于1999年成立了可信计算平台联盟TCPA(后于2003年改组为TCG),并提出了“可信计算”的概念[2]。可信计算旨在从硬件体系结构和系统完整性角度来提高终端计算平台的安全性,解决终端平台安全性问题。它认为如果终端计算平台从一个初始的“可信根”出发,在终端平台计算环境的每一次转换时,这种可信状态都可以通过传递的方式保持下去而不被破坏,则该终端平台就始终是可信的[2]。在可信环境下不存在不被信任的实体,因而可以很好地保证平台本身及上层应用的安全。
    信任链的传递是体现可信的重要手段,它是可信计算平台的核心机制。系统加电后,在可信硬件平台的控制下,BIOS会将信任传递给主引导分区,主引导分区将信任传递给操作系统装载器,操作系统装载器将信任传递给操作系统内核模块,也就是说可信链的传递是分层进行的。当低级别的节点验证到高一级的节点是可信时,低级别节点才会把可信计算平台的运行控制权转交给高一级节点。可信计算平台正是基于这种信任链传递的机制将可信扩展到了应用程序部分。平台可信的验证通过哈希运算进行,在验证过程中,各程序的杂凑值将会被存储在平台配置寄存器PCR(Platform. Configuration registers)中,而且在关机之前这部分PCR的值不会被重置,只能被扩展。当远程或本地程序(请求者)需要验证当前系统是否处于预定义的可信状态时,这些PCR的值就会被读取。请求者对这些可执行体或数据进行杂凑运算,并且与PCR中的预期值进行比较。如果相同,则可以判定该系统运行的程序是预先规定的可信程序或者是可信数据。
2 可信增强的Flask访问控制框架的设计与分析
2.1 Flask访问控制框架
    Flask是目前业界关注度最高的访问控制框架之一,它是由美国国家安全局联合犹他州大学和安全计算公司,以安全策略灵活性为目标设计开发的多访问控制策略支持框架。Flask严格分离了策略实施逻辑和策略决策逻辑。Flask由对象管理器和安全服务器两部分组成,对象管理器负责策略实施逻辑的执行,安全服务器负责策略决策逻辑的制定。Flask描述了对象管理器和安全服务器的交互,以及对它们内部组成部分的要求。Flask还借助一个访问向量缓存(AVC)模块来实现对动态策略和性能要求的支持[3]。
    如图1所示,在Flask访问控制框架下,主体要对客体进行操作。首先要将访问请求发送到对象管理器,对象管理器收集主客体的安全标签,对访问请求进行判断;对象管理器首先检查存放在AVC中的访问向量,如果存在此访问向量,则直接返回在AVC中的访问向量,否则,向安全服务器提出查询请求。在安全服务器中根据主客体的SID及相应的类,针对相关的安全策略对请求进行计算,然后返回相应的访问向量决策,同时把此访问向量存放在AVC中。如果策略允许主体在客体上执行预期的操作,则该请求就会被允许,否则,该请求就会被拒绝。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top