昨天一起了解了访问控制模型中的自主访问控制,今天专门用一章来学习强制访问控制(因为刷题的时候经常遇到)
强制访问控制(Mandatory Access Control)
强制访问控制是强加给访问主体的,意思就是系统强制主体服从访问控制政策。强制访问控制的主要特征是对所有主体及其所控制的客体(如进程、文件、段、设备)实施强制访问控制。
1.安全标签
强制访问控制对访问主体和受控对象标识两个安全标签:
·具有偏序关系的安全等级标签
·非等级分类标签
它们是实施强制访问控制的依据。系统通过比较主体和客体的安全标签来决定一个主体是否能够访问某个客体。用户的程序不能改变他自己以及任何其他客体的安全标签,只有管理员才能够确定用户和组的访问权限。
安全标签是限制和附属在主体或客体上的一组安全属性信息。安全标签的含义比能力更为广泛和严格,因为它实际上还建立了一个严格的安全等级集合。
--------访问控制标签列表
它是限定一个用户对一个客体目标访问的安全属性集合。
图1.
用户 | 安全级别 |
A | S |
···· | ··· |
Z | TS |
图2.
文件 | 安全级别 |
1 | TS |
··· | ··· |
N | C |
图1为用户对应的安全级别,图2为文件系统对应的安全级别。
假设有一个用户A,他的安全级别为S,那么他想访问文件1时,由于文件1的安全级别是TS,而S<TS,所以访问会被拒绝,但是当A想访问文件N的时候,因为S>C,所以允许访问。
安全标签能够对敏感的信息加以区分,这样就可以对用户和客体资源强制执行安全策略。因此,强制访问控制经常会用到这种实现机制。
2.强制访问策略
强制访问策略将每个主体与客体赋予了一个访问级别,如绝密级、机密级、秘密级和无密级。用一个例子来说明强制访问控制规则的应用。
如Web服务器以秘密级的安全级别运行。假如Web服务器被攻击,攻击者在目标系统中以秘密级的安全级别进行操作,他将不能访问系统中安全级别为最高秘密级的数据。
强制访问控制系统根据主体和客体的敏感标记来决定访问控制模式,访问模式包括:
- 向下读:主体安全级别高于客体信息资源的安全级别时允许读。
- 向上读:主体安全级别低于客体信息资源的安全级别时允许读。
- 向下写:主体安全级别高于客体信息资源的安全级别时允许写。
- 向上写:主体安全级别低于客体信息资源的安全级别时允许写。
因为强制访问控制通过分级的安全标签实现了信息的单向流通,所以它一直被军方采用,其中最著名的是Bell-LaPadula模型和Biba模型。
3.Bell-LaPadula模型
Bell-LaPadula安全模型也被称为BLP模型,它利用“不上读/不下写”的原则来保证数据的保密性。该模型以信息的敏感度作为安全等级的划分标准,主体和客体用户被划分为以下安全等级:无密、秘密、机密和绝密,安全等级一次增高。
BLP模型不允许低安全等级的用户读高敏感度的信息,也不允许高敏感度的信息写入低敏感度区域,禁止信息从高级别流入低级别。强制访问控制通过这种梯度安全标签实现信息的单向流通,这种方法一般应用于军事用途。
BLP安全模型
(我的疏忽!!!客体的安全级别我忘改了,大家注意,从上到下依次是绝密、机密和秘密,和主体的级别是一样的)
如图所示,假如有一个用户,他的安全级别为机密,想要访问安全级别为绝密的文档,那么他会读取失败,但可以写入。而访问安全级别为秘密的文档,他可以读取但是不能写入。
4.Biba模型
由于BLP模型存在不保护信息的完整性和可用性、不涉及访问控制等缺点,因此1977年Biba模型作为BLP模型的补充而被提出。他针对的是信息的完整性保护,主要用于非军用领域。
Biba模型和BLP模型类似,也使用了安全等级划分方式,只不过Biba模型的划分标准是信息对象的完整性。主体和客体用户被划分以下完整性级别:重要、很重要和极重要,完整性级别依次增高。
Biba模型利用不下读/不上写的原则来保护数据的完整性。在实际应用中,完整性保护主要是为了避免应用程序修改某些重要的系统程序或系统数据库。
Biba安全模型
例如,如上图所示,一个安全级别为很重要的用户想要访问级别为重要的文档,那么他将被允许写入但不能读取。如果他试图访问极重要的文档,那么读取操作会被允许,而写入操作会被禁止。这样资源的完整性就得到了保障。
因此,只有用户的安全级别高于资源的安全级别的时候才可以对资源进行写入的操作,相反地,只有用户的安全级别低于资源的的安全级别的时候才可以对资源进行读取。简而言之,信息在系统中只能自上而下进行流动。
4.Chinese Wall模型
Chinese Wall模型是应用在多变安全系统中的安全模型(也就是多个组织间的访问控制系统),应用在可能存在利益冲突的组织中。它最初是为银行设计的,但也可应用在其他相似的场合。
Chinese Wall安全策略的基础是客户访问的信息不会与目前他们可支配的信息产生冲突。在投资银行中,一个银行会同时拥有多个互为竞争者的客户,一个银行家可能为一个客户工作,但他可以访问所有客户的信息,因此应当制止该银行家访问其他客户的数据。
Chinese Wall安全策略的两个主要属性:
- 用户必须选择一个他可以访问的区域。
- 用户必须自动拒绝来自其他与用户所选区域的利益冲突区域的访问。
这种模型同时包括了自主访问控制和强制访问控制的属性:银行家可以选择为谁工作,但是一旦选定,他就只能为该客户工作。
Chinese Wall安全模型在网络安全体系中应用的一个典型的例子是位于防火墙内部的一台服务器,它连接着内部与外部的网络。假如策略禁止经由此服务器转发数据,则该服务器将暴露在外部网络。也就是说,该服务器仅能与外部网络通信,而不能与内部网络通信。