浅谈强制访问控制MAC

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

浅谈强制访问控制(MAC)

【摘要】访问控制:安全保障机制的核心内容,是实现数据保密性和完整性的主要手段。访问控制是为了限制访问主体(或成为发起者,是一个主动的实体:如用户、进程、服务等),对访问客体(需要保护的资源的)访问权限。从而使计算机系统在合法范围内合用访问控制机制决定用户及代表一定用户利益的程序能干什么、及做到什么程度。

访问控制分类:1)传统访问控制:自主访问控制DAC,强制访问控制MAC;2)新型访问控制:基于角色的访问控制RBAC,基于任务的访问控制TBAC……。本文主要谈论传统访问控制中的强制访问控制MAC。

【关键词】访问控制、强制访问控制、Bell-Lapadula安全模型

引言

随着我国经济的持续发展和国际地位的不断提高,我国的基础信息网络和重要信息系统面临的安全威胁和安全隐患比较严重,计算机病毒传播和网络非法入侵十分猖獗,网络违法犯罪持续大幅上升,给用户造成严重损失。

访问控制是信息安全保障机制的核心内容,它是实现数据保密性和完整性机制的主要手段。访问控制是为了限制访问主体(或称为发起者,是一个主动的实体;如用户、进程、服务等),对访问客体(需要保护的资源)的访问权限,从而使计算机系统在合法范围内使用;访问控制机制决定用户及代表一定用户利益的程序能做什么,及做到什么程度。

访问控制,作为提供信息安全保障的主要手段,及最为突出的安全机制, 被广泛地应用于防火墙、文件访问、VPN及物理安全等多个方面。其中,强制访问控制就在次方面有很重要的作用。

访问控制从实现的基本理念来分有以下两种:

1)强制访问控制(Mandatory access control)

2)自主访问控制(Discretionary access control)

本文主要谈论强制访问控制控制,包括其定义、原理及其分类。

一、强制访问控制

MAC ( Mandatory Access Control ) 源于对信息机密性的要求以及防止特洛伊木马之类的攻击。MAC通过无法回避的存取限制来阻止直接或间接的非法入侵。系统中的主/客体都被分配一个固定的安全属性, 利用安全属性决定一个主体是否可以访问某个客体。安全属性是强制性的, 由安全管理员 ( Security Officer ) 分配, 用户或用户进程不能改变自身或其它主 /客体的安全属性。MAC的本质是基于格的非循环单向信息流政策。系统中每个主体都被授予一个安全证书, 而每个客体被指定为一定的敏感级别。访问控制的两个关键规则是: 不向上读和不向下写, 即信息流只能从低安全级向高安全级流动。任何违反非循环信息流的行为都是被禁止的。

MAC起初主要用于军方的应用中, 并且常与DAC结合使用, 主体只有通过了 DAC与 MAC 的检查后, 才能访问某个客体。由于 MAC对客体施加了更严格的访问控制, 因而可以防止特洛伊木马之类的程序偷窃, 同时 MAC 对用户意外泄漏机密信息也有预防能力。但如果用户恶意泄漏信息, 则可能无能为力。由于 MAC增加了不能回避的访问限制, 因而影响了系统的灵活性; 另一方面, 虽然MAC增强了信息的机密性, 但不能实施完整性控制; 再者网上信息更需要完整性, 否则会影响 MAC的网上应用。在 MAC系统实现单向信息流的前提是系统中不存在逆向潜信道。逆向潜信道的存在会导致信息违反规则的流动。但现代计算机系统中这种潜信道是难以去除的, 如大量的共享存储器以及为提升硬件性能而采用的各种Cache 等, 这给系统增加了安全隐患。

二、强制访问控制的原理

在强制访问控制下,用户(或其他主体)与文件(或其他客体)都被标记了固定的安全属性(如安全级、访问权限等),在每次访问发生时,系统检测安全属性以便确定一个用户是否有权访问该文件。

强制访问控制是“强加”给访问主体的,即系统强制主体服从访问控制政策。强制访问控制(MAC)的主要特征是对所有主体及其所控制的客体(例如:进程、文件、段、设备)实施强制访问控制。为这些主体及客体指定敏感标记,这些标记是等级分类和非等级类别的组合,它们是实施强制访问控制的依据。系统通过比较主体和客体的敏感标记来决定一个主体是否能够访问某个客体。用户的程序不能改变他自己及任何其它客体的敏感标记,从而系统可以防止特洛伊木马的攻击。

强制访问控制一般与自主访问控制结合使用,并且实施一些附加的、更强的访问限制。一个主体只有通过了自主与强制性访问限制检查后,才能访问某个客体。用户可以利用自主访问控制来防范其它用户对自己客体的攻击,由于用户不能直接改变强制访问控制属性,所以强制访问控制提供了一个不可逾越的、更强的安全保护层以防止其它用户偶然或故意地滥用自主访问控制。

控制思想:每个客体都有既定的安全属性,每个客体也都有既定的安全属性,主体对客体是否执行特定的操作取决于两者安全属性之间的关系。

实现方式:所在主体(用户、进程)和客体(文件、数据)都被分配了安全标签,安全标签标识一个安全等级。

——主体被分配一个安全等级;客体也被分配一个安全等级

——访问控制执行时对主体和客体的安全级别进行划分

适用范围:MAC进行了很强的等级划分,通常用于多级安全军事系统。

强制访问策略将每个用户及文件赋于一个访问级别,如,最高秘密级(Top Secret),秘密级(Secret),机密级(Confidential)及无级别级(Unclassified)。其级别为T>S>C>U,系统根据主体和客体的敏感标记来决定访问模式。访问模式包括:

下读(read down):用户级别大于文件级别的读操作;

上写(Write up):用户级别小于文件级别的写操作;

下写(Write down):用户级别等于文件级别的写操作;

上读(read up):用户级别小于文件级别的读操作;

图1 Bell-Lapadula安全模型

依据Bell-Lapadula安全模型所制定的原则是利用不上读/不下写来保证数据的保密性(见图1)。即不允许低信任级别的用户读高敏感度的信息,也不允许高敏感度的信息写入低敏感度区域,禁止信息从高级别流向低级别。强制访问控制通过这种梯度安全标签实现信息的单向流通。

依据Biba安全模型所制定的原则是利用不下读/不上写来保证数据的完整性(见图2)。在实际应用中,完整性保护主要是为了避免应用程序修改某些重要的系统程序或系统数据库。

相关文档
最新文档