多级安全BLP模型

上传人:cl****1 文档编号:419217204 上传时间:2022-09-20 格式:DOCX 页数:6 大小:91.75KB
返回 下载 相关 举报
多级安全BLP模型_第1页
第1页 / 共6页
多级安全BLP模型_第2页
第2页 / 共6页
多级安全BLP模型_第3页
第3页 / 共6页
多级安全BLP模型_第4页
第4页 / 共6页
多级安全BLP模型_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《多级安全BLP模型》由会员分享,可在线阅读,更多相关《多级安全BLP模型(6页珍藏版)》请在金锄头文库上搜索。

1、多级安全BLP模型1基本概念主体(Subject):引起信息流动或改变系统状态的主动实体。如用户,程序,进程等。客体(Object):蕴含或接收信息的被动实体,信息的载体。如DB、表、元组、视图、操 作等。安全级(Security Level):主体和客体的访问特权,一般主体安全级表示主体对客体敏感 信息的操作能力,客体安全级表示客体信息的敏感度。自主型访问控制(Discretionary Access Control):是基于一种访问控制规则实现主体对 客体的访问。这种控制规则是自主的, 自主是指某一主体能直接或间接的将访问权或访问权 的某些子集授予其他主体。用户对信息的控制是基于用户的鉴别

2、和存取访问规则的确定。强制型访问控制(Mandatory Access Control):通过无法回避的存取限制来防止各种直 接的或间接的攻击。系统给主体分配了不同的安全属性, 并通过主体和客体的安全属性的匹 配比较决定是否允许访问继续进行。2 自主型访问控制(Discretionary Access Control)自主型访问控制基于用户的身份和访问控制规则。自主保护策略管理用户的存取,这些信息是以用户的身份和授权为基础的,它们详细说明了对于系统中的每一个用户(或用户组)和每一个客体,允许用户对客体的存取模式(例如读,写或执行)。根据指定的授权,用户存取客体的每一个要求都被检查。如果存在授权

3、状态,则用户可以按指定的模式存取客体,存取被同意,否则被拒绝。DAC之所以被称为自主的,是因为它允许用户将其访问权力赋予其它的用户。而且对于一个客体的否定授权高于对同一客体的肯定授权。自主策略的灵活性使它们适合于多种系统和应用。由于这些原因,在多种执行中,自主策略被广泛地应用,尤其在商业的和工业的环境中。2.1 自主访问控制的实现自主访问控制的实现主要有三种方式:1.访问控制表(ACL);2 .访问能力表(Capability) 3.授权关系表。综合以上三种存取控制方法的优缺点,访问控制表的方法以其在权限的授予和回收的方面的高效率,在商业软件中得到了广泛应用。文件存取控制表:ACL的数据控制类

4、型:文件存取控制表属性名称类型.1描述Int1掘有Select1ntInsertInt插入DelInt删鼠1UpdateInt修改1EjtecInt执行1 rGrantInt授权NLILLInt无授权ACL的数据控制类型3强制型访问控制3.1 BLP模型Padula于1973年模拟军事安全策略创建的计算机系统安全模型,74年改进,76年用于Multics操作系统。1.nBell- LaPadula模型是存取控制模型中典型的一种,它用多级安全的概念对主体和客体的安全进行分级和标记,并同时采用了自主存取控制和强制存取控制的策略。强制策略以系统中主体和客体的等级为基础控制数据的存取。与客体关联的安全

5、级别 反映了包含在客体内的信息的敏感性。与用户关联的安全级别,也称为许可权反映了用户的可信赖性。不同安全级的主体对客体的存取有一系列性质约束。其中最著名的是简单安全性(禁止向上读)和*一性质(禁止向下写)。BLP模型的基本思想是:确保信息不向下流动,从而保证系统内的信息是安全的。BLP模型的信息不向下流动是通过下面两个规则来保证的:(1)简单安全特性:当一个主体的安全级支配另一个客体的安全级时,主体才具有对客体进行读”操作的权限:(2) * 一特性:当客体的安全级支配主体的安全级时,主体才具有对客体进行写”操作的权限。BLP模型图:H林敏熟作BLP模型满足了上述两个规则即控制了系统中信息的流动

6、,保证所有安全级别上的主体只能访问其具有访问权限的客体,从而保证信息不会向下流动。此外,系统还有一个自主安全规则(3) ds规则:每个存取必须出现在存取矩阵中,即一个主体只能在获得了所需的授权后才能 执行相应的存取。mni mnn miminMAC部分由简单安全特性和*-特性组成,通过安全级来强制性约束主体对客体的访问。DAC通过访问控制矩阵按用户的意愿限制主体对客体的访问。3.2 BLP模型实现当客户与服务器相连后,客户每发送一个SQL语句给服务器,服务器首先分析、解释该语句,然后经分布式事务处理分解成其他站点上的消息发送给站点。当在某个站点上的用户要访问某个数据库对象时,首先经过强制访问控

7、制安全检查,同时记录审计信息:再经过自主访问控制检查,确认是否有访问权限,同时也记录审计信息;然后经资源分配,进入访问具体的元组对象时,再做 向下读、同级写”强制访问控制检查,通过后面作具体的数据 操作,并记录审计信息。现有的DBMS产品实现的客体标记粒度基本都为元组级。3.3 BLP模型局限性BLP模型产生于七十年代。直觉上,该模式是为了适应于军方信息系统中依据军衔、 职务以及军队内部的组织层次。 其缺点主要是它太严格, 以至于在某些环境下不能应用。 例如, 在一个商用系统中, 并不是总能为用户分配一个允许密级, 或为数据分配一个敏感级别。 因 此当前的一种趋势是将强制存取控制策略和自主存取

8、策略结合起来建立安全模型。机密性、完整性和可用性是多级安全数据库必须具备的三要素,然而 BLP模型在机密 性、数据完整性和可用性方面都存在缺陷。 总结对该模型的理论研究的不同的观点, 一般认 为,模型的局限性有如下几个方面 :首先,BLP模型机密性不高。根据 BLP模型的 向下读,向上写”原则,低安全级主体 不能读取高密级数据却可以修改高密级数据,这样敏感信息的机密性得不到保证。其次,高密级数据的数据完整性得不到保证。低安全级用户能够窜改高密级数据,因此高密级的数据有可能变成垃圾”数据,所以高密级数据的数据完整性难以保证。再次,BLP模型可用性差。 向下读,向上写”的策略能够有效地防止低密级用

9、户获取敏 感信息,同时也限制了高密级用户向非敏感客体写数据的合理要求,降低了系统的可用性。 当低级别进程向高级别进程发送一段数据后,虽然不违背模型的原则,但由于不能下写”,高级别的进程就无法向低级别的进程发送诸如回应信息,而对于低级别的进程来说,它永远无法知道它所发送的信息是否正确地转送到了目的地,信息就如同送到了一个黑洞”中。4基于多级安全性分类级别标记的强制访问控制4.1 BLP模型的安全特性BLP模型从形式化的角度描述了安全系统中所允许的信息流动路径。1991年Jajodia和Sandhu提出基于多级安全性分类级别标记的多级安全数据库。把用户和数据分为若干个安全级别,并禁止信息从高处流向

10、低处。典型的安全性级别分类:绝密-TS(Top Secret)、机密-S(Secret)、可信-C(confidential)、和无分类-U(Unclassfied)。一个安全数据库系统,包括主体安全集合S,客体集合O对S中的每个主体s和。中的每个客体o,存在固定的安全类 SC(s),SC(o)。具有一下两个特性:(1)简单安全特性:当且仅当SC(。尸SC(s)时,主体s才可以读客体o (下读)(2) *特性:当且仅当SC(s) wSC(o时主体s才可以写客体 o (上写)原因:一个拥有 TS(Top Secret)许可证级别的用户(主体),可能会制作一个拥有TS安全分类级别的客体拷贝,随后把

11、它作为一个新的客体以安全性分类级别U(unclassified)写回,这就使得原来为安全分类级别TS的这个客体,在整个系统中都变成可见的了。4.2 多级安全数据库行和列作为对象:将关系R(A1, A2,,An)扩展为R(A1, C1, A2, C2,,An, Cn, TC)。并且每个每个元组 T(Tuple)的值是T中所有分类属性值中的最高值。视在码:是一个属性的集合。它由常规关系中的主码形成。对于拥有不同许可证级别的 主体,所包含的数据是不一样。1 Employee 关系:(设Name是视在码)NameSalaryJobPerformanceTCSmith(U)40000(C)Fair(S)

12、SBrown(C)80000(S)Good(C)S2具有许可证级别 C的用户看到的 Employee关系:(select * from Employee)NameSalaryJobPerformanceTCSmith(U)40000(C)Null(C)CBrown(C)Null(C)Good(C)C3 具有许可证级别 U 的用户看到的 Employee 关系:(select * from Employee)NameSalaryJobPerformanceTCSmith(U)Null(U)Null(U)U4 Smith元组的多重实例:一个带有许可证级别 C的用户发出如下 SQL:Update E

13、mployee Set JobPerformance = Excellent Where Name = SmithNameSalaryJobPerformanceTCSmith(U)40000(C)Fair(S)SSmith(U)40000(C)Excellent(C)CBrown(C)80000(S)Good(C)C如果一个S级别的用户要更新 Brown的JobPerformance 怎么办?通过研究我们发现,用户需要的读写权限往往不相同,一般要求读权限要比写权限大。 因此,需要将读写权限分开 (相应地读写范围也要分开 )来提高系统的可用性。例如,可以定 义一个读权限为S,写权限为C的用户来

14、完成UPDATE。4.3 多级安全数据库系统中的多实例问题所谓的多实例(Polyinstantiation),是指在DBMS中同时存在多个具有相同主键的同层次 客体,它们的安全级别是不同的。在数据库系统中,实体完整性要求主键唯一标识关系中的一个元组,并且不能为空。但在多级安全语义下,主键的唯一性要求成为系统最为明显的(信号)隐蔽通道的来源。如低级别主体在插入某元组时获得主键冲突的信息时,他就可以判断 有高级别的同主键元组存在。自然地,避免产生这类隐蔽通道的方法就是对关系的主键进行扩展,使之包括元组的安全标记,成为实际主键.将用户定义的主键称为显式主键,当一个多级关系包含多个具有相同显式主键的元

15、组时,则称发生了多实例。因此,在多级关系中, 真正的主键是显式主键与元组安全标记的复合。但由于不同的客体标记粒度,复合主键的具体形式还有一些变化。一般认为,高级别的多实例元组代表的是真实世界的描述。而低级别元组则是该事实的封皮(Cover Story)。总体而言,多实例的目的是为了执行多级安全策略,阻止隐蔽通道的发生。但多实例会在 DBMS中导致严重的复杂性和多义性 (数据语义不确定性),这一点在多 级数据模型中表现最为明显。4.4 多实例的商用系统解决方案三种DBMS产品Informix, Sybase 和ORACLE,它们实现的客体标记粒度都为元组级, 它们在处理多实例问题的时候各有特点下面简要分析如下:Informix的元组主键自动包括元组

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 营销创新

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号