本章需掌握知识点:
- 理解强制访问控制模型的概念及特点
- 了解Bell-LaPadula模型的作用及特点
- 了解Biba模型的作用及特点
- 了解Clark-Wilson的作用及特点
- 了解Chinese Wall模型的作用及特点
一、强制访问控制模型的概念
- 什么是强制访问控制(MAC)
- 主体和客体都有一个固定的安全属性,系统通过比较客体和主体的安全属性,根据已经确定的访问控制规则限制来决定主体是否可访问客体。
特点
BLP模型概念
- 由D.Elliott Bell和Leonard J. LaPadula于1973年提出的一种模拟军事安全策略的计算机访问控制模型,简称为BLP模型
- 第一个严格形式化的安全模型 nn
- 多级访问控制模型,用于保证系统信息的机密性(也仅仅提供和解决了机密性,不能解决数据完整性——只有谁能够访问数据,谁无法访问数据,以及可以执行哪些操作。)
- BLP模型访问控制策略
- 包括自主安全策略与强制安全策略
- 强制安全策略为每一个主体和客体都分配了安全级,根据安全级进行访问控制
- BLP模型的构成
- 安全级
- 密级:绝密、机密、秘密、公开
- 范畴:军事、外交、商务……
- 安全级之间的支配关系(高层级密级高于或等于、范畴包含低层级,则高层级的支配低层级)
- 例如L=<机密,{外交,商务}>的集合,L’=<秘密,{商务}>的集合,则L支配L’
- 安全策略
- 简单安全规则(向下读):规定位于给定安全级别上的主体不能读取较高安全级别驻留的数据
例如:你获得秘密级安全许可,就不能读取绝密级数据,如果公司需要你能读取绝密级数据,必须先为你赋予相应访问权限。 - *-(星属性)规则(向上写):规定位于给定安全级别上的主体不能将信息写入较低的安全级别
- 强星属性规则:它规定一个主体只能在同一安全级别上执行读写功能,在较高或较低级别都不能读写。因此,一个主体要读写一个客体,主体的许可和客体的分类必须同等。
- 简单安全规则(向下读):规定位于给定安全级别上的主体不能读取较高安全级别驻留的数据
- 安全级
如果对于向上写,向下读不理解,请看示例:
FAQ:安全级别高的主体,对安全级别低的客体不允许拥有写入权限(防止级别高,知道的多,往下写,有泄密的可能性),对更高安全级别的客体,则允许写入,但不允许读取
示例:你老板和你,是你跟老板汇报,就是上写,老板不会向你汇报。另外老板可以知道你掌握了啥,就是下读,但是原则上你不能知道老板掌握了啥
- BLP模型关键知识点
- 第一个安全策略形式化的数学模型
- 多级安全模型,强调机密性
- 访问控制机制(两个重要规则)
- 简单安全规则(向下读)
- *-规则(向上写)
- 优点:机密性高,有效的防止机密信息泄露
- 缺点:完整性缺乏,非法篡改、破坏成为可能
三、强制访问控制模型-Biba
- Biba模型概念
- 1977年,由Biba提出,与BLP模型数学上对偶的完整性保护模型
- 多级访问控制模型,保护数据完整性
- Biba模型的访问控制策略
- 强制安全策略为每一个主体和客体都分配了完整级,根据完整级进行访问控制
FAQ:也仅仅解决了数据完整性的问题
- 强制安全策略为每一个主体和客体都分配了完整级,根据完整级进行访问控制
- (保障)完整级:安全级和范畴
- 安全级:极为重要,非常重要,重要,……
- 范畴:军事,外交,商务,……
- 完整级存在支配关系
- 与BLP类似,安全级高于或等于,范畴包含的情况下,高层级支配底层级。
FAQ:完整性高的不能读取完整性低的,可能会引入不可信的数据破坏原有的完整性(即不能向下读)
完整性低的可以引入完整性高的数据(即向上读),完整性高的可以给完整性低的写入数据(即向下写)。
- 与BLP类似,安全级高于或等于,范畴包含的情况下,高层级支配底层级。
- 安全策略(基于保障完整性)
- 向上读:主体可以读客体,当且仅当客体的完整级别支配主体的完整级
- 向上写:主体可以写客体,当且仅当主体的完整级别支配客体的完整级
- Biba模型关键知识点
- 强调完整性的访问控制策略模型
- 多级安全模型,数学上与BLP模型对偶(对偶即结构相同,意义对称,互补)
- 访问控制机制(两个重要规则)
- 向下写
- 向上读
- 优点:完整性高,有效的防止非法篡改、破坏
- 缺点:机密性缺乏,无法保护机密信息泄露
四、Clark-Wilson-强制访问控制模型
- Clark-Wilson-强制访问控制模型概念
- 由计算机科学家David D. Clark和会计师David R. Wilson发表于1987年
- 确保商业数据完整性的访问控制模型,侧重于满足商业应用的安全需求
- Clark-Wilson模型的访问控制策略
- 每次操作前和操作后,数据都必须满足一致性调节
- 使用安全标签来授予客体的访问权限(仅限于通过转换过程和受限制的接口模型)
- 三元组结构(访问控制三元组结构)
- 主体/程序/客体(或主体/事务/客体)的三部分关系。主体无法直接访问客体,客体只能通过程序访问。
- Clark-Wilson定义如下数据项和程序:
- 用户:活动个体
- 受约束项(CDI):是完整性受到安全模型保护的任何数据项
- 无约束项(UDI):是不受安全模型控制的任何数据项。任何输入但未验证的数据或任何输出,将被视为无约束数据项。
4. **完整性验证过程(IVP)**,扫描数据项并确认其完整性的过程
4. **转换过程(TP)**,唯一允许修改CDI的过程。通过TP限制对CDI的访问构成了Clark-Wilson完整性模型的支柱。<br />**FAQ:CDI的完整性必须由TP保护,而UDI则不需要如此高级别的保护**<br />_ 如:假设你登陆自己的网上银行,银行服务器和数 据库中的数据划分为CDI和UDI两类,CDI类别数据 包含银行账户信息,它们需要被高度保护。UDI类别 数据可能是账单地址等信息,它们在必要时可以更 新,如果你要更新这些UDI信息时,那么此时不需要 TP _
五、Chinese Wall模型
- 模型简介
- 访问数据不是受限于数据的属性(密级),而是受限于主体已经获得了对哪些数据的访问权限
- 将一些可能会产生访问冲突的数据分成不同的数据集,并规定所有主体最多只能访问一个数据集。
而不限制到底选择访问哪个数据集。 - 根据用户先前的活动而动态改变访问控制,这个模型主要目标是防止用户访问被认为有利益冲突的数据
- 模型安全策略
- 主体只能访问那些与已经拥有的信息不冲突的信息
- 一个主体一旦已经访问过一个客体,则该主体只能访问位于同一公司数据集中的客体,或者在不同兴趣冲突组中的信息。
- 在一个利益冲突类中,一个主体最多只能访问一个公司数据集。
- Chinese Wall模型的组成
- 公司数据集CD(Company Dataset):与某家公司相关的若干客体
- 利益冲突类COI(Conflict Of Interest Class):若干相互竞争的公司的数据集
- 若干有竞争关系数据集构成了利益冲突类
- 银行COI类(银行a、银行b、银行c)
- 石油公司COI类(公司w、公司x、公司u、公司v)
六、自主访问控制(DAC)与强制访问控制(MAC)的比较
- 自主访问控制
- 细粒度
- 灵活性高
- 安全性低
- 强制访问控制
- 控制粒度大
- 灵活性不高
- 安全性强