操作系统安全模型研究

时间:2022-06-02 09:34:38

操作系统安全模型研究

摘要:介绍了操作系统的安全机制和几种访问控制模型,在对模型进行比较的基础上,提出采用多种模型相结合的方法,能够满足操作系统保密性与完整性要求。

关键字:安全模型;访问控制;BLP模型;CW模型;BRAC模型

中图分类号:TP309文献标识码:A 文章编号:1009-3044(2007)05-11394-01

1 引言

操作系统是软件系统的底层,是系统资源的管理者,是软硬件的接口,起着重要的作用,因而更容易受到攻击。因此,操作系统必须提供必要的手段防止由用户的误操作或攻击者的人为破坏而造成的错误。

2 操作系统的安全机制

目前的多数操作系统支持多道程序设计和资源的共享,然而,资源的共享和对象的保护又往往是相互矛盾的。在设计操作系统时,必须有安全的支持机构,实现对用户进行身份识别;根据安全策略,进行访问控制,防止对计算机资源的非法存取;标识系统中的实体;监视系统的安全运行;确保自身的安全性和完整性。

操作系统的安全机制主要有实体保护机制,标识与认证、访问控制机制等。

2.1 实体保护

2.1.1 操作系统保护的实体

操作系统需要为整个计算机系统提供安全保护措施,因此需要保护系统中一系列有关的对象,包括存储器;I/O设备;程序;数据等。

2.1.2 保护方法

(1)隔离保护:在支持多进程和多线程的操作系统中,必须保证同时运行的多个进程和线程之间是相互隔离的,即各个进程和线程分别调用不同的系统资源,且每一个进程和线程都无法判断是否还有其它的进程或线程在同时运行。一般的隔离保护措施有以下4种:

①物理隔离:不同的进程和线程使用不同的对象和设备资源。

②暂时隔离:同一进程在不同的时间按不同的安全需要执行。

③逻辑隔离:操作系统限制程序的访问,以使该程序不能访问允许范围之外的客体。

④加密隔离:采用加密算法对相应的对象进行加密。

(2)隔绝

当操作系统提供隔绝时,并发运行的不同处理不能察觉对方的存在。每个处理有自己的地址空间、文件和其它客体。操作系统限制每个处理,使其它处理的客体完全隐蔽

2.1.3 存储器的保护

多道程序的最重要问题是如何防止一个程序影响其他程序的存储空间。这种保护机制建立在硬件中,可以保护存储器的有效使用,且成本很低。对存储器得固态保护一般有栅栏保护、基址边界保护和段页式保护等。

2.1.4 运行保护

根据安全策略,把进程的运行区域划分为一些同心环,进行运行的安全保护。

2.1.5 I/O保护

把IO设备视为文件,且规定IO是仅由操作系统完成的一个特权操作,对读写操作提供一个高层系统调用。在这一过程中,用户不控制IO操作的细节。

2.2 标识与认证

标识是系统为了正确识别、认证和管理实体而给实体的一种符号;用户名是一种标识,为的是进行身份认证;安全级别也是一种标识,为的是进行安全的访问控制。标识需要管理;标识活性化、智能化,是值得研究的新方向。认证在操作系统中主要是用户的身份认证。

2.3 访问控制机制

访问控制机制是操作系统安全保障机制的核心内容,它是实现数据机密性和完整性机制的主要手段。访问控制是为了限制访问主体对被访问客体的访问权限,确保主体对客体的访问只能是授权的,而未授权的访问是不能进行的,而且授权策略是安全的。从而使计算机系统在合法范围内使用。

访问控制有两个重要过程:

(1)通过“鉴别(authentication)”来检验主体的合法身份。

(2)通过“授权(authorization)”来限制用户对资源的访问级别。

操作系统的访问控制机制可分为自主访问控制(DAC)、强制访问控制(MAC)和基于角色的访问控制(RBAC)等。目前主流的操作系统均提供不同级别的访问控制功能。通常,操作系统借助访问控制机制来限制对文件及系统设备的访问。如Windows 2000利用访问控制列表(ACL)实现对本地文件的保护:访问控制列表指定某个用户可读、写或使用某个文件;文件的管理者可改变该文件的访问控制列表的属性。

3 安全模型

安全模型是设计并实现一个安全操作系统的基础。它的两种定义分别如下:

安全模型是安全策略形式化的表述,它是安全策略所管理的实体以及构成策略的规则。

安全模型是被用来描述一个系统的保密性、可用性和完整性的需求的任何形式化的表述。

3.1 BLP(Bell&Lapadula)模型

BLP模型是目前应用最广泛的安全模型,是最典型的信息保密性多极安全模型,同时也是许多军用计算机系统的安全原型。该模型应用了其开发者所证明的基本安全理论(Basic Secure Theorem,BST),以状态机为基础,并通过归纳证明的方法得出系统是安全的结论。它包括强制访问控制和自主访问控制两部分。强制访问控制中的安全特性,要求对给定安全级别的主体,仅被允许对同一安全级别和较低安全级别上的客体进行“读”,对给定安全级别上的主体,仅被允许向相同安全级别或较高安全级别上的客体进行“写”,任意访问控制允许用户自行定义是否让个人或组织存取数据。其信息流动如图1所示:

图1 信息流动图

3.2 CW(Clark-Wilson)模型

CW模型由三个部分主成:①数据。分为完整性约束数据、非完整性约束数据。②过程IVPs。用于校验数据的完整性,由系统的“安全官员”执行(安全官员不执行TP)。③过程TPs。是主体对客体的访问方式,使完整性约束数据从一种约束状态转变为另一种约束状态,保证数据的完整性。该过程由一般用户执行。

CW的基本原则:

(1)Separation of Duty原则。规定一个任务从开始到结束,将被分给至少两个人完成,防止个人可能造成的欺骗。

(2)Well-formed Transaction原则。用户不能够任意地处理数据,但是可以通过能够确保数据完整性的方法进行。

CW策略对数据的操作与数据的安全等级无关,主要防止对数据进行非法修改,容易发生信息的泄漏。

3.3 BRAC模型

基于角色的访问控制模型(BRAC)根据用户所担任的角色来决定用户在系统中的访问权限。RBAC包括四个基本的要素:用户、角色、权限和授权。系统管理员管理系统的角色集合和权限集合,将这些权限通过相应的角色分别赋予承担不同职责的用户。并根据业务或安全策略的变化对角色的权限和用户担当的角色进行调整。BRAC模型如图2所示。

在用户和访问权限之间引入角色的概念,用户与特定的一个或多个角色相关联,角色与一个或多个访问权限相关联,角色可以根据实际工作需要生成或取消,而用户可以根据自己的需要动态地激活自己拥有的角色,避免了用户无意中危害操作系统安全。

图2 BRAC模型

4 模型比较

BLP模型是安全操作系统中最经典的多级安全策略模型,但它强调军队安全策略,过于注重系统安全的保密性方面,对系统的完整性和真实性考虑不够,不能控制低安全级主体对高安全级客体的“向上写”,所以要对“向上写”操作作出限制。CW模型是强数据类型和面向事务处理的商用完整性模型。与BLP模型不同,CW模型强调商业等许多领域中防止信息的未授权修改问题。BLP对数据指定安全层次,访问授权的模式依赖于这个安全层次和主体的层次比较;CW与数据相关的不是安全层次,而是允许访问和操作数据的程序集合;BLP模型对主体的授权内容受其所能访问的数据的限制;CW模型主体受其所能执行的程序的限制,没有获得对某个或某类数据的访问授权,但是被授予访问或执行某些程序进而访问特定的数据;BLP模型用三元组(主体,客体,模式)决定访问限制;CW用三元组(主体,客体,程序块)决定访问限制。RBAC的结构简单, 易于实现, 也易与其他模型结合,但很难控制同一用户以不同的身份进入系统而破坏系统的安全。

5 结束语

操作系统安全涉及许多方面,现今主要有两条路线:一是通过研究设计各种安全机制,在通用操作系统中综合应用多项安全技术,逐步发展和完善,从而实现操作系统的应用安全,达到C2安全等级;另一路线是设计安全操作系统模型,从整体构架上设计全新的安全操作系统(安全内核),达B1安全等级。上面介绍的三种模型,各有利弊。在目前现有的安全模型基础上,将三种模型相结合,能够满足操作系统保密性与完整性要求。此外,可以在安全内核基本安全机制的基础上加入实用的安全认证等安全机制,可增加操作系统的可用性。

参考文献:

[1]GA/T 388-2002 计算机信息系统安全等级保护操作系统技术要求[S]. 2002.

[2]李克洪,王大玲,董晓梅.实用密码学与计算机数据安全[M].东北大学出版社,2004.

[3]梁彬,孙玉芳,石文昌,孙波. 一种改进的以基于角色的访问控制实施BLP模型及其变种的方法[J].计算机学报,2004.

[4]王建军,宁洪,陈怀义.两种模型结合使用的研究与性能分析[J].计算机应用研究.2004,(11):96-96.

本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。

上一篇:企业内部信息系统安全浅析 下一篇:测井刻度软件结构设计中关于系统功能扩展的探...