- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
课件5 3.2 基于状态变换的安全系统理论* 3.2 基于状态变换的安全系统理论* Harrison等人利用访问控制矩阵模型作为保护系统的模型,在状态和状态转换概念的基础上,研究了保护系统的安全特性。本节前面部分主要介绍他们研究的有关保护系统安全性质方面的一些结论。然后再介绍若干受限保护系统的性质,接着再介绍合文法的系统的性质,最后介绍有实用意义的“获取-授予”模型。 需要提醒的是,一个系统被证明是安全的,并不意味着它就是安全的,安全性仅仅对应抽象模型而言的。为了证明安全性,还需要表明系统是正确地实现了模型,即安全的保护系统需要有安全性和正确性两者保证。因此,安全性仅属于实际安全系统的理论证明的一部分。 3.2.1 一般性保护系统 给定一个保护系统(R,C),R是权利的有限集合,C是命令的有限集合,其中任何命令c?C的形式都是3.1.1.2节中给出的形式。 泄漏(或释放)的概念 定义3.2-1 设Q=(S,O,A)是一个状态,A是访问矩阵,S与O分别是主体集与客体集;r是一般性权利,C(X1,…,XK)是一个命令。如果存在某实际参数x1,…,xk,使得 1)在Q中C的条件是满足的; 2)如果C中的本原运算是op1,…opn,那么存在m?{1,…,n} ,并存在状态 Q=Q0,Q1,…,Qm-1=(S’,O,’A’)和Qm=(S”,O”,A”) 使得 (定义3.12续) (1) 其中 ( 表示代入实际参数后的 ) (2)对某S’中的s和O’中的o,r不在A’[s,o]中,但r在A”[s,o]中, 那么我们说命令C(X1,…,X2)从状态Q泄漏(或释放)一般性权利r(泄漏用于贬义场合,释放用于中性场合)。 释放不一定是坏事,作为共享的任何系统都会有许多释放,事实上,许多主体自愿地把它们的权利释放(转授)给其他“可信”的主体。问题是一个权利r的转授是否违反系统的安全性政策。 现在我们假定访问矩阵中的主体都是非可信的,即所有可信的主体都已从矩阵中剔除。在此假设下,我们给出以下安全的定义。 安全性定义 定义3.2-2 给定一个保护系统(R,C),系统的初始状态Q0和一般性权利r?R,如果存在一个状态Q使得 1) ,和 2)一个命令C,使得C从状态Q泄漏r,那么我们说Q0对r是不安全的。如果Q0对r不是不安全的,我们称对r是安全的。 有关安全性的可判定性问题 定理3.2-1 一个给定的保护系统的一给定状态对一给定的一般权利是否是安全的问题(简称安全性问题)是不可判定的。 为了证明这一结论,我们表明任意一架图灵机的形态能够编码为一个保护系统使得权利的泄漏对应于图灵机进入最后状态,简言之,可以把保护系统归约到任意图灵机,如果安全性问题是可判定的话。 定理3.2.1意味着安全保护系统的集合不是递归的,即不可能存在单一的算法足以判定所有系统的安全性问题,不过,我们能生成所有不安全系统的表,这有以下定理。 定理3.2-2 不安全系统的集合是递归可枚举的。 不过,我们不能枚举所有安全系统,因为一个系统是递归的当且仅当它和它的补都是递归可枚举的。 此外,必须注意,以上两定理并不排除构造单个保护系统并证明它们是安全的可能性,也不排除在模型上增加实用性限制使得安全性问题是可判定的,甚至是易处理的可能性。下边我们即将讨论这些问题。 3.2.2 若干受限制的保护系统 一个保护系统,如果每一条命令仅含一个本原操作,叫做单一操作的;如果每一命令中if之后仅有一个条件,叫做单条件的。 定理3.2-3 存在一个算法,它能判定一个给定的单操作系统的初始状态,对给定的一般权利,是否是安全的。 证:我们将表明仅需要检查有限个数的命令序列,可以确定有否泄漏出现。 首先我们能忽略含有delete和destroy操作的命令序列,因为这些命令不影响保护系统的安全性,因而可以仅对命令检查权利的出现而不管它们的缺席。所以,如果一个泄漏出现在含有这些命令(指delete和destroy操作)的序列中,那么这种泄漏也会出现在没有它们的序列中。 其次我们能够忽略含有多于一个create操作的命令序列。理由是所有在访问矩阵的新元素中增加或检查权利的命令,能够用已存在的矩阵元素中增加或检查权利的命令取代;这通过把实际参数从新主体和客体更改为已存在的主体和客体可以简单地做到。不过,为了保证矩阵至少有一个元素可以增加权利,在初始状态没有主体
文档评论(0)