(计算机软件与理论专业论文)基于linux的强制访问控制机制及其安全测试自动化的研究.pdf_第1页
(计算机软件与理论专业论文)基于linux的强制访问控制机制及其安全测试自动化的研究.pdf_第2页
(计算机软件与理论专业论文)基于linux的强制访问控制机制及其安全测试自动化的研究.pdf_第3页
(计算机软件与理论专业论文)基于linux的强制访问控制机制及其安全测试自动化的研究.pdf_第4页
(计算机软件与理论专业论文)基于linux的强制访问控制机制及其安全测试自动化的研究.pdf_第5页
已阅读5页,还剩53页未读 继续免费阅读

(计算机软件与理论专业论文)基于linux的强制访问控制机制及其安全测试自动化的研究.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

北京交通大学硕士学位论文 中文摘要 中文摘要 信息系统安全已成为计算机领域的研究热点之一。近年来,对于信息系统安 全性的根本保障安全操作系统的研究也正逐步升温,其中存取访问控制是操 作系统安全机制的主要内容,因此当前众多关于安全操作系统的研究正集中在充 实和完善存取访问控制机制上。伴随着安全信息系统的建设,信息系统安全测评 的重要性也日益突出。目前安全测评工作大多是由测评人员手工完成,存在主观 性强、工作量大、测评周期难以控制等诸多问题。这就把系统安全测试自动化平 台的构建提上了议事日程。综上所述,本文围绕安全操作系统中强制访问控制机 制及其测试自动化展开研究是具有重要的理论和现实意义的。 本文围绕安全操作系统中强制访问控制部分的理论和研究,自行构建了 l i n u x 系统的强制访问控制机制。该机制支持b l p 修改模型的多级安全策略,其 构建参考了g f a c 和l s m 等访问控制模型。主要实现原理是采用l k m 技术,在 相关系统调用中插入“钩子”函数来完成增强的访问控制检查。在强制访问控制 机制构建完成后,以这个安全加强系统为实例,开发了对访问控制模块的自动化 测试系统。本系统可以完成对全部文件系统安全相关的系统调用的自动化测试, 也可以由用户构建或选择测试用例对单个系统调用进行自动化测试。在这些实践 基础之上,本文对安全操作系统的开发和测试自动化的实现过程中的若干关键技 术进行了研究。 本文在自主构建安全操作系统的基础上,对存取访问控制部分的安全测试自 动化作出了创新性的成功尝试,实现了对访问控制检查的增强和相关系统调用的 自动化测试平台。然而,要实现整个安全操作系统的测试自动化,还需要在其他 方面进行完善,比如安全敏感命令、安全相关库例程等。 关键词:安全操作系统;多级安全策略;强制访问控制;l i n u x 安全模块 软件测试自动化 分类号:t p 3 1 6 ;t p 3 0 9 北京交通大学硕士学位论文 a b s t r a c t a b s t r a c t t h ei n f o r m a t i o ns y s t e ms e c u r i t yh a sb e e nb e c o m i n gaf o c u so fa t t e n t i o ni n c o m p u t e rs c i e n c ef i e l d i nt h ep a s tf e wy e a r s ,t h er e s e a r c hr e f e r i n gt os e c u r eo p e r a t i n g s y s t e mt h a ti st h eb a s i c o ft h ei n f o r m a t i o ns y s t e mh a sb e e na s c e n d i n gb yd e g r e e a c c e s s c o n t r o li st h em a i nc o m p o n e n to ft h eo s ss e c u r i t ym e c h a n i s m c o n s e q u e n t l y ,t h e r e s e a r c ho ns e c u r eo si sm a i n l yf o c u s e do nt h ea c c e s sc o n t r o le n h a n c e m e n t o nt h e o t h e rh a n d ,t h ec o n s t r u c t i o no fs e c u r ei n f o r m a t i o ns y s t e mh a sb e e nc o m i n gu pw i t ht h e i m p o r t a n c eo ft h ei n f o r m a t i o ns y s t e ms e c u r i t yt e s t i n g n o w a d a y s ,t h es e c u r i t yt e s t i n gi s d o n em a n u a l l yb yt h et e s t i n ge n g i n e e r s t h e r ea r ek i n d so fp r o b l e m s ,l i k et o os t r o n g s u b j e c t i v i t y ,h i g hw o r k l o a da n dl o n gt e s t i n gc y c l e ,t h a ta r ev e r yh a r dt oc o n t r 0 1 a s o l u t i o ni sa u t o m a t i ct e s t i n g i no n es e n t e n c e ,i ti ss i g n i f i c a n tt os t u d yt h e i m p l e m e n t a t i o na n da u t o m a t i ct e s t i n go fm a n d a t o r y a c c e s sc o n t r 0 1 t h i sp a p e rs t u d i e dt h et h e o r ya n dr e l a t e dr e s e a r c ha b o u tm a n d a t o r ya c c e s sc o n t r o l i ns e c u r eo sb a s e do nw h a tie n h a n c e dt h em a cm e c h a n i s mo nl i n u x t h i sm a c m e c h a n i s mc a ns u p p o r tt h em u l t i l e v e ls e c u r i t yp o l i c e sd e f i n e di nam o d i f i e db l p m o d u l e t h es t r u c t u r eo ft h em e c h a n i s mh a sr e f e r r e dt og f a ca n dl s ma c c s e s s c o n t r o lm o d u l e s i tw a sd e v e l o p e dw i t hp l a c i n g ”h o o k s i na c c e s sc o n t r o lr e l a t e d s y s t e mc a l l sa n dl k m t h i sm a c i sa l s ot h et a r g e to ft h ea u t o m a t i ct e s t i n gs y s t e m w h i c hi sd e v e l o p e db ym e t h ea u t o m a t i ct e s t i n gs y s t e mc a nd ot h et e s t i n go nb o t ht h e w h o l es e to ft h ef i l es y s t e mr e l a t e ds y s t e mc a l l sa n ds i n g l es y s t e mc a l la c c o r d i n gt ot h e t e s t i n ge n g i n e e r s r e q i r e m e n t s b a s e d o nt h e s ep r a t i c e s ,t h ek e yt e c h n o l o g i e st o i m p l e m e n tt h es e c u r eo s a n di t sa u t o m a t i c t e s t i n gw e l es t u d i e di nt h i sp a p a r t h em a i nc r e a t i o no fm yw o r ki st h em a ct a r g e t e da u t o m a t i ct e s t i n gs y s t e m t h e r ei ss t i l lal o n gw a yt oc o m p l e t et h ea u t o m a t i ct e s t i n gs y s t e mo ft h ee n t i r eo s k e y w o r d s :s e c u r eo p e r a t i n gs y s t e m ;m u l t i l e v e ls e c u r i t yp o l i c y ;m a n d a t o r y a c c e s s c o n t r o l ;l i n u xs e c u r i t ym o d u l e ;s o f t w a r ea u t o m a t i ct e s t i n g c l a s s n o :t p 3 1 6 ;t p 3 0 9 致谢 在论文完成之际,谨向我尊敬的导师翟高寿副教授表示由衷的感谢! 翟老师以 其广蹲的知识、缜密的思维和严谨的工作研究作风,在论文选题和整个写作过程 中都给了我精一t l , 的指导和帮助,我的论文中凝聚了他大量的心血和汗水。翟老师 从学习上、生活上都给予了我无私的关怀,使我不仅学到了专业知识,还为我今 后的工作乃至人生积累了一笔宝贵的精神财富,使我受益终生! 衷心感谢我所在工作单位北京p l a t f o r m 软件公司的各位同事,尤其是我的经理 卢冰峰先生,卢经理和其他同事主动减轻我的工作压力,使我在在职情况下能顺 利地做完课题,并给予了我大量技术方面的指导和帮助,同时对我的论文也提出 了很多中旨的意见。衷心感谢我的工作单位给我良好的氛围和莫大的支持! 衷心感谢我的爱人苑庆国先生和我的父母,他们给我极大的鼓励和无私的关 怀,使我有了勇气和力量去克服和战胜很多实际困难。 衷心感谢所有关心和帮助我的朋友与同学,特别是同项目组的曾杰同学和张 良同学,以及2 0 0 5 级的王瑞昌同学,他们在课题研究等方面给了我很多启发和帮 助,也正是我们大家的共同探讨、相互启发、协同工作,才使课题得以顺利进行, 并取得今天的成绩。 最后,向所有关心我和帮助我的人表示最诚挚的谢意。 北京交通大学硕士学位论文绪论 1 1 引言 第一章绪论 随着信息技术进步的加快,特别是国际互联网的迅速发展和广泛应用,电子 商务、电子政务及信息产业将成燎原之势。然而非法的计算机系统入侵,窃取、 篡改、毁坏重要的信息数据,给社会造成难以估量的损失,同时也为信息技术在 更广泛领域的应用设置了障碍。这些都使信息安全的问题只益突出,并已提升到 国家安全关键组成部分及关系国家兴亡与国计民生的重要地位。 迸一步说,信息系统安全是信息安全的支撑平台和i i i 提保障。在信息系统安 全涉及的众多内容中,操作系统、网络系统和数据库管理系统的安全问题是核心 所在。运行状态下的计算机系统层次结构参图1 - 1 所示,从中不难看出,操作系 统承担着整个软件系统及用户与硬件之间的桥梁纽带作用。作为计算机软硬件资 源的管理者,操作系统控制着整个计算机系统的运行,它直接和硬件打交道并为 用户提供接口,是计算机软件的运行基础和核心。而作为运行支撑平台组成部分 的数据库管理系统和网络系统则是建立在操作系统之上的,如果没有安全操作系 统的支持,就不可能真正解决数据库安全、网络安全和其它各类软件的安全问题。 换句话说,安全操作系统是整个信息系统安全的基础。没有操作系统的安全,信 息系统的安全将是“沙丘上的城堡”圆。 用户 复编辑开棼孕璺黪毂l 融。i 镪照灞 支撑】支择乐现 操作系统 计算机硬件及指令系统 图1 - 1 计算机系统运行时层次结构 f i g u r e1 - 1t h es t r u c t u r eo f t h er u n n i n gc o m p u t i n gs y s t e m 信息系统安全建设中的另一个重要组成部分是信息系统安全测评。 信息系统固有的脆弱性和面临的威胁导致信息系统的安全风险是不可避免 的。那么,为了保证信息系统是安全可靠的,并将可能存在的安全风险控制在可 接受范围内,应对信息系统的安全状况进行综合评估,以改进安全措施,从而更 好地保障信息系统的安全性嘲。这正是信息系统安全测评的研究工作应该考虑的 北京交通大学硕士学位论文 绪论 主要部分。 由于信息系统安全测评具有的高度复杂性和不确定性,目前的评估方法还存 在很多难以解决的共性问题:一是缺乏模型化,形式化描述的评估方法;二是定 性、定量的评估方法如何结合更加有效;三是如何处理各评估要素之间的相互关 系,进行综合评估,使评估结果更符合系统的本质;四是缺乏测评工具支持,低 层次手工作业量大,评估的效率和准确性差“1 。 为了解决上述问题,提高安全操作系统测评的准确性和效率,迫切需要一种 自动化的测评方法。事实上,安全操作系统的安全测评自动化j 下在逐渐成为研究 的热点。在信息安全专委会2 0 0 5 年会上,就将安全测试作为一个当前研究的热点 话题专门予以讨论,可见其重要性。 1 2 研究背景和现状 1 2 1 安全操作系统 2 0 世纪6 0 年代中期,美国贝尔实验室和麻省理工学院联合开发了一个名为 m u l t i c s 的操作系统,这是被计算机界认同的首个安全操作系统。以此为始,全球 计算机界对安全操作系统的研究工作迅速开展起来。 1 2 1 1 安全操作系统的发展阶段 历经4 0 余年,安全操作系统的发展,根据研究与开发工作及其相应的技术成 果的特点大致可被分为四个发展阶段嘲蜘:奠基时期、食谱时期、多策略时期和 动态策略时期。下面分别予以简单介绍。 1 奠基时期:从1 9 5 5 年历史上的第一个安全操作系统m u l t i e s 诞生到2 0 世纪8 0 年代末期,安全操作系统经历了从无到有的探索过程,安全操作系统的基 本思想和理论及研究方法逐步建立。其中由j e a n d e r s o n 提出的引用监控机、引 用验证机制、安全核和安全建模等重要思想,为安全操作系统的开发奠定了重要 的基础。 2 食谱时期:食谱时期始于1 9 8 3 年美国的t c s e c ( t r u s t e dc o m p u t e rs y s t e m e v a l u a t i o nc r i t e r i a ,可信计算机系统评测标准) 标准颁布之时。t c s e c ,又称橙 皮书,是历史上第一个,也是著名的可信计算机系统评价标准,它为安全系统指 定的是一个单一的系统安全策略,诸如自主访问控制和强制访问控制等。这个时 北京交通大学硕士学位论文绪论 期的安全操作系统开发几乎都以t c s e c 为范型,主要研究成果有a x i o m 技术公 司的l i n u sw 系统、美国贝尔实验室的s y s t e m v m l s 系统和加拿大多伦多大学 的安全t i n 町s 系统等。 3 多策略时期:随着9 0 年代初i n t c m e t 的影响的迅速扩大,分布式应用的 迅速普及,单一安全策略的范型已不能满足对安全策略需求多种多样的现实应用。 1 9 9 3 年,荚国国防部在t a f i m ( t e d m i c a l a r c h i t e c t u r ef o ri n f o r m a t i o nm a n a g e m e n t ) 计划中推出新的安全体系结构d g s a ( d o dg o a ls e c u r i t ya r c h i t e c t u r e ) 来对多种 安全政策提供支持,这促使安全操作系统研究进入了一个新的时期多策略时 期。 4 动态策略时期:策略灵活性是动态策略时期的重要特征。这个时期安全操 作系统研发的特点是使安全操作系统支持多种安全策略的动态变化,从而实现安 全政策的多样性和灵活性。1 9 9 9 年f l a s k 安全体系结构的诞生是动态策略时期的帷 幕徐徐打丌的标志。目前比较流行的l i n u x 安全操作系统s e l i n u x 就是由n a s ( n a t i o n a ls e c u r i t ya g e n c y ,美国国家安全安全局) 和n a i ( 网络伙伴公司) 实验 室的基于f l a s k 合作研制的。 1 2 1 ,2 国内安全操作系统的发展 相对来说,中国的安全操作系统研究起步比较晚。以l i n u x 为代表的自由软 件在中国的广泛流行对中国安全操作系统的研究与开发具有积极的推动作用。 l i n u x 操作系统性能优良且源代码开放。鉴于此,国内诸多有识之士、学者及 研究机构就安全操作系统的相关理论及基于l i n u x 的安全操作系统的开发进行了 深入的研究,并在体系结构、安全模型、系统构建,安全测评等方面取得一定的 成果。其中比较突出的有中国科学院软件所卿斯汉老师带领的实验室开发出的安 全操作系统安胜。中国红旗l i n u x 公司推出的其自主研发的红旗安全操作系统 2 0 。此外,还有南京大学、中国计算机软件与技术服务总公司等其它单位也以l i n u x 为基础开展了安全操作系统的研究与开发工作。 1 2 2 存取访问控制机制 存取访问控制则是操作系统安全机制的主要内容,主要用来规范和控制系统 内部主体对客体的访问操作。进一步说,存取访问控制的主要目的是防止对系统 资源的未授权访问,使系统在合法的范围内使用。其基本任务包括确定可存取访 问客体的主体;确定存取权限( 读r 、写w 、执行x 、删除d 、追加a 等存取方式 3 北京交通大学硕士学位论文 绪论 的组合) ;以及实施存取操作。 1 2 2 1 术语和概念 1 主体和客体 主体( s u b i e d ) 是指系统中能够发起行为的实体,比如,人、进程和设备等。 客体( o b j e c t ) 则是指系统中被动的主体行为承担者,比如,文件、目录、管道、 消息,以及存储页和存储段等。客体蕴涵或接收信息,主体使这些信息在客体之 间流动。比如,编辑一个文件时,编辑进程是存取文件的主体,而输入终端和磁 盘文件是客体,编辑进程使输入终端上的信息写入到了磁盘文件中。 2 存取访问控制 存取访问控制( a c c e s sc o n t r 0 1 ) 是规范和控制各类主体( 用户、本地进程或 远程进程等) 访问本系统中客体的决策与实施过程( 存取访问控制的一般模型参 图1 2 所示) 。 图1 - 2 存取访问控制的一般模型 f i g u r e1 - 2t h ec o m m o nm o d u l eo f t h ea c c e s sc o n t r o l 存取访问控制的实现机制通常可分为访问控制矩阵和多级访问控制,而存取 访问控制策略则可分为自主访问控制( d i s c r e t i o n a r y a c c e s sc o n t r o l ,简称d a c ) 和强制访问控制( m a n d a t o r y a c c e s sc o n t r o l ,简称m a c ) 。t c s e c 中规定了c 2 级以上安全级别的计算机系统必须实现自主访问控制机制,而b 1 级以上安全级 别的计算机系统必须实现强制访问控制机制。 4 北京交通大学硕士学位论文 绪论 1 2 。2 2 自主访问控制 自主访问控制是当前绝大多数操作系统正在使用的一种访问控制机制。它是 用来决定一个主体是否有权访问某客体的一种访问约束机制。在该机制下,客体 的拥有者可以按照自己的意愿精确地指定系统中的其它主体对此客体的访问权。 同时,“自主”还指对某客体具有特定访问权限授予权的用户能够自主地将关于 该客体的相应访问权或访问权的某个子集授予其它主体。 访问控制列表( a c c e s sc o n t r o ll i s t ,简称a c l ) 则是最常用的d a c 实现形 式。在传统的u n i x l i n u x 系统实现中,将用户划分为客体所有者( o w n e r ) 、与 所有者同组用户( g r o u p ) 和其它组用户( o t h e r ) 三类,对每类用户分别采用一 个3 位二进制数来表示其对该客体的存取权限,包括读、写和执行三种。显然, 这种传统的访问控制方法对用户的分类稍显粗陋。要提高系统的安全性,必需更 细粒度的权限分配。 1 2 2 3 强制访问控制 强制访问控制用于将系统中的信息从密级和分类( 或称为范畴集) 两方面进 行管理,并保证每个用户只能够访问那些被标明能够由它访问的信息。 在强制访问控制机制下,系统中的每个主体和每个客体都被赋予了相应的安 全属性( 一般指安全级和范畴两个方面) 。当一个主体访问某客体时,应通过比 较主体和客体的安全属性并根据强制访问控制相关规则,从而确定是否允许该主 体对相应客体的访问。这些安全属性由特定的安全部门以手工方式或操作系统以 自动方式,并按照严格的规则来进行设置,任何主体不能改变其自身或任何客体 ( 包括其所拥有的客体) 的安全属性。因此,用户不能通过简单地授权其它用户 关于特定文件的存取权限来实现文件的共享。这即所谓“强制”的含义。 强制访问控制机制往往与多级安全策略( m u l t i - l e v e ls e c u r i t y ,简称m l s , 又称多级访问控制) 相提并论。多级访问控制是将军事安全策略运用到计算机系 统的数学描述和形式定义,其为计算机系统内的所有信息实体分配相应的安全级 和范畴集”。同时,多级访问控制还规定了主体对客体合法存取访问的限制约束 条件,也即“当且仅当主体与客体的安全级和范畴存在某种意义上的支配关系 时,主体才可以对相应的客体进行特定方式的存取访问”。 多级安全计算机系统的第一个数学模型是b l p 模型,本文将在第二章的2 1 节和第三章的3 2 节中对其进行详细介绍。 5 北京交通大学硕士学位论文 绪论 1 2 3 安全测试自动化 众所周知,软件测试是软件开发全过程的关键环节及保证软件质量的重要措 施。不言而喻,其对于l i n u x 安全操作系统的构建过程来讲具有同等重要的作用 和地位。 然而,l i n u x 安全操作系统通常是在已有的l i n u x 操作系统及其内核的基础 上,通过引入和加强有关安全的存取访问控制机制等而构建起来的,所以不同于 其它软件以功能需求、功能设计及功能测试为中心的开发过程,而是基于安全需 求、安全设计及安全测试展开相关构建过程。因此,l i n u x 安全操作系统的软件 测试过程应重点围绕系统安全性展开,并应在确认测试阶段提交给专门设置和负 责测试与评估安全信息产品的安全测评中心作为第三方来进行系统安全性的全面 测试及相应的安全级别权威认定。 为了规范安全产品的研究、开发和测评,各国制定了一系列相关的标准和规 范。其中较为著名的有t c s e c ( t r u s t e d c o m p e e r s t a n d a r d s e v a l u a t i o n c d t c d a ) 、 i t s e c ( i n f o r m a t i o nt e c h n o l o g ys e c u r i t ye v a l u a t i o nc f i t c r i a ) 和c c ( c o m m o nc f i t c d a f o ri ts e c u r i t ye v a l u a t i o n ) 等。我国也在借鉴吸收t c s e c 和c c 等的基础上形成 了计算机信息系统安全保护等级划分准则和信息技术、安全技术、信息技 术安全性评估准则等计算机系统安全测评标准【1 1 3 1 8 1 9 1 。这些测评标准的有关 准则可在安全测试自动化中作为安全测评的基础和主要依据。 1 3 论文主要研究内容与组织结构 本论文作者在攻读硕士期间,首先学习了安全操作系统及其测评的基本理论, 而后则跟踪了国内外安全操作系统中关于强制访问控制机制的实现情况,以及相 应的测试自动化的研究。本论文工作及课题得到国家9 7 3 项目“信息与网络安全 体系结构研究”( 项目编号g 1 9 9 9 0 3 5 8 0 1 ) 之子课题“操作系统安全评测平台的 研究”及北京交通大学校科技基金“安全操作系统测评自动化研究”( 项目编号 k 0 6 j 0 0 7 0 ) 的支持。 在此基础之上,本论文将研究安全操作系统中强制访问控制机制,及其在 l i n u x 系统上的实现方法和相关技术,同时还将研究相应的测试自动化平台的构 建。本论文的结构如下( 论文结构图参图1 3 ) : 第一章为绪论,介绍了本课题的研究背景、研究意义和当前发展状况,以及 论文各部分的组织结构。 第二章为系统安全模型及关键技术研究,系统地介绍了相关安全模型和支持 6 北京交通大学硕士学位论文绪论 框架,以及强制访问控制机制的实现策略和技术选型。 第三章是强制访问控制机制的设计与实现,在此章中详细介绍了基于b l p 模 型所实现的强制访问控制机制的总体架构和主体设计,并给出了主要数据结构和 函数的实现。 第四章是系统安全测试自动化研究,系统介绍了安全测试自动化的理论基础、 相关标准和技术背景。 第五章,强制访问控制测试自动化平台设计与实现,详细的叙述了强制访问 控制部分自动化测试平台的实现方案,并给出测试自动化平台的运行实例。 第六章,结束语,包含了对论文的工作和研究成果进行总结和归纳,并指出 有待完善之处,另外将对本领域的研究进行展望。 第一章绪论 i 课题提出 弋夕 安全操作系统构建安全操作系统测试自 部分( 测试的对象)动化平台构建部分 笆一音磊缔害全女苣删i 第四章系统安全测 ,帚族瘫墓若莲i 琴字生j 是测试用例设计 试自动化研究 的 基 之步的理论基础 础 之步的理论基础 弋 7 卜 l 第五章强带物乔睦苦 ;帜 ”2 :嚣。7 絮! :芝竺:? oi 足的研究测试对象4-rl k _ i t 二f 0 二上n 7 扣r m - 一 。 一 试自动i 鹚冶设i 壮弦删 移师 聃砹计利兴批。 沙 彳f 凛题总结与展望 第六章结束语 图1 - 3 论文结构和各章节关系 f i g u r e l - 3 t h e s t r u c t u r e o f m y p a p e r a n d t h e r e l a f i o n s h i p o f t h ec h a p t e r s 7 北京交通大学硕士学位论文 系统安全模型及关键技术研究 第二章系统安全模型及关键技术研究 本章中将系统地介绍与强制访问控制相关的安全模型和支持框架,以及系统 实现所需的关键技术。其中b l p 模型和通用访问控制框架是实现强制访问控制机 制的理论和模型基础;l i n u x 内核模块和l i n u x 安全模块框架是系统实现所需的 关键技术,这些在本章节中都做了重点论述。 2 1 系统相关安全模型 我们说一个操作系统是安全的,系指它能满足某一给定的安全策略( s e c u r i t y p o l i c y ) 。同样,进行安全操作系统的设计和| 丌发时,也要围绕一个给定的安全策 略进行。 安全策略是指有关管理、保护和发布敏感信息的法律、规定和实施细则。安 全模型则是对安全策略所表达的安全需求的简单、抽象和无歧义的描述,它为安 全策略与其实现机制的关联提供了一种框架。因此,安全模型是设计安全操作系 统的基础之一i ”。也就是说,要设计实现安全操作系统,首先要研究相关的安全 模型,然后在此基础上选定合适的模型去实现。 根据萨尔哲( s a l t z e r ) 和史克罗德( s c h r o d e r ) 提出的安全保护系统设计原则, 安全操作系统应具备完整的存取控制机制。下面介绍几种比较重要且知名的访问 控制安全模型。 2 1 1b l p 模型 b e l l l a p a d u l a 模型( 简称b l p 模型) “1m “” 是d e l l i o t tb c u 和l e o n a r dj 1 a p a d u l a 于1 9 7 3 年创立的一种模拟军事安全策略的计算机操作模型,其目标是 详细描述计算机信息系统的多级操作规则。它是最早、也是最常用的典型的计算 机多级安全模型,目前已被实现和应用于许多安全操作系统中。 b l p 模型的安全策略包括两部分:自主安全策略和强制安全策略。本论文的 强制访问控制机制实现就是基于此模型。下面先给出b l p 模型强制安全策略部分 的非形式化介绍,其形式化描述将在第三章3 3 中给出。 在军事安全管理中,通常将文件的保密级别按从高到低顺序分为绝密级( t o p s e c r e t ) 、秘密级( s e c r e t ) 、机密级( c o n f i d e n t i a l ) 和公开级( u n c l a s s i f i e d ) 等 四个级别;同时指定文件的流通领域。而每个人都拥有一个许可证( c l e a r a n c e ) 。 8 北京交通大学硕士学位论文系统安全模型及关键技术研究 为了确定是否应该允许某人读或写一个文件,要把该人的许可证同文件的密级进 行比较,要遵循“下读上写”的原理,即下级可以向上级汇报( 上写) ,上级可 以读取汇报( 下读) 却不能向下级泄露下级不该知道的军事机密。这一原理强制 性地限制了信息的共享和流动,使不同的用户只能访问到与其有关的、指定范围 的信息,进而从根本上来杜绝和防止信息丢失、泄密或访问混乱的现象。 b l p 模型模拟这一军事安全策略,将每个客体和主体都分配一个安全级,又 称m a c 标记( m a c l a b e l ) 。安全级由保密级别( 标识主客体的敏感级别,例如: 公开、秘密、机密和绝密等) 和范畴集( 特定的系统应用领域及信息特征相关联, 例如:人事处、财务处、科技处等) 两部分构成。同时将“下读上写”的军事原 理抽象为以下两条基本的存取访问控制规则( 参图2 - 1 所示) : 规则l ( 也称简单安全特性) ,一个主体对客体进行读访问的必要条件是主 体的安全级不低于客体的安全级,且主体的范畴集包含客体的范畴集,即主体只 能向下读,不能向上读; 规则2 ( 也称丰一特性) ,一个主体对客体进行写访问的必要条件是客体的安 全级不低于主体的安全级,且客体的范畴集包含主体的范畴集,即主体只能向上 写,不能向下写。 在图2 - 1 中,公开进程对机密文件进行读操作违反了规则1 ,而机密进程对 公开文件进行写操作违反了规则2 。因此,这两种操作在b l p 模型中是非法的, 必须被禁止。 图2 - 1b l p 安全模型中的多级访问控制 f i g u r e 2 - 1 t h e m u l t i - l e v e l s a c c e s s c o n t r o lo f b l p s e c u r i t y m o d u l e 必须指出,b l p 模型主要致力于保密性控制,即控制信息从低安全级传向高 安全级;但其缺乏完整性控制,即不能控制“向上写”操作,而这类操作存在可 9 北京交通大学硕士学位论文系统安全模型及关键技术研究 能被用于构建隐蔽通道等潜在问题。另外,b l p 模型还引入了可信主体的概念, 并将其定义为实际系统中为保证系统正常运行和管理而不受 特性约束的主体, 故存在可信主体访问权限过大和不符合最小特权原则的弊端。 2 1 2b i b a 模型 j b i b a 等人在1 9 7 7 年提出用于保护信息完整性的伯巴模型( 即b i b a 模 型) 。b i b a 模型与b l p 模型类似,也是基于主体、客体以及它们的级别概念。该 模型中每个主体和客体均被分配一个级别,称为完整级别i 。 模型中定义主体对客体有四种存取方式:修改( m o d i f y ,类似其他模型中的 “写”存取方式) 、调用( i n v o k e ,该操作仅能用于主体间通信) 、观察( o b s e r v e , 类似其他模型中的“读”存取方式) 和执行( e x e c u t e ,用于执行某个程序) 。 b i b a 模型坚持以下两条基本规则来保证数据的完整性: 规则1 ,当且仅当客体的完整级别支配主体的完整级别时,主体才具有对客 体的“读”( o b s e r v e ) 的权限,即“不下读”; 规则2 ,当且仅当主体的完整级别支配客体的完整级别时,主体才具有对客 体“写”( m o d i f y ) 的权限,即“不上写”。 b l p 模型只解决信息保密性问题,而b i b a 模型只解决信息完整性问题。目 前,还没有人提出两者“统一”的模型。在考虑信息的安全保密性时,必须寻找 保密性和完整性之间的平衡点。 2 1 3 砌缓c 模型 基于角色的存取访问控制模型,即r b a c 模型,是另一种强制访问控制机制。 在许多存取访问控制模型中,以用户组作为存取控制的单位,用户组和角色 最重要的区别在于,用户组作为用户的一个集合对待,并不涉及它的授权许可, 而角色则既是一个用户的集合,又是一个授权许可的集合。这样的授权管理比针 对个体的授权来说,在可操作性和可管理性都远远胜出。同时,通过授权的管理 机制,可以给予一个角色多个授权,而一个授权也可以赋予多个角色,灵活性也 是r b a c 模型1 1 i 的显著优点之一。 在r b a c 系统中,每个用户进入系统得到控制权时,就得到一个会话。会话 表示的是用户和角色之间的关系,用户每次必须通过建立会话来激活角色,得到 相应的访问权限。r b a c 模型见图2 2 所示。 北京交通大学硕士学位论文系统安全模型及关键技术研究 2 1 4 其它相关模型 图2 - 2 r b a c 模型示意图 f i g u r e2 - 2r b a cm o d u l e 角色层次 其它强制访问控制模型还有域强制和类型强制模型、类型实施模型等等。【。7 l 域强制和类型强制( d o m a i na n dt v p ce n f o r c e m e n t ,简称d t e 模型) 和类型 实旎( t y p ee n f o r e m e n t ,简称t e ) 是近年来被较多的作为实现信息完整性保护的 模型。该模型定义了多个域( d o m a m ) 和类型( t y p e ) ,并将系统中的主体分配 到不同的域中,不同的客体分配到不同的型中,通过定义不同的安全域及其对不 同的类型的访问权限,以及主体在不同的域中进行转换的规则来达到保护信息完 整性的目的。聊r e 模型目前只实现于若干原型系统和特定平台。访问主体和客 体分别类属于域和类型。系统维护两个访问控制列表,一个负责域到类型的访问, 一个负责域到域的访问。标准l i n u x 内核采用了权力表和保护位的访问控制技术。 2 2 多策略访问控制支持框架 2 2 1 多策略访问控制支持框架的重要性 多数安全模型都是为特定应用的安全需求设计的,因此或多或少地忽略了其 他安全方面,没有一个策略模型可以满足每种环境的安全需要。但是,现实世界 是多种安全需求共存的,因此,当前的动态策略时期,要求安全操作系统支持多 种安全策略的动态变化。系统必须支持多个安全模型,以实现安全策略的多样性, 1 1 北京交通大学硕士学位论文 系统安全模型及关键技术研究 并为安全策略提供灵活性支持。那么, 成为了安全操作系统研究的课题之一, 制机制时也必须考虑到这一点。 如何有效地在系统中组织多个安全策略便 本论文在实现安全操作系统的强制访问控 支持多策略的访问控制框架可以很好地满足安全操作系统发展的需要。现有 的多策略访问控制框架主要分为两类:一类是各种安全策略之间为并列关系,没 有主从或优先顺序,访问控制决定需要满足所有的安全策略;另一类是多安全策 略之间有主从关系,安全策略的组合问题由主安全策略决定。前一种不能很好地 满足系统环境的多样化和多变化的需要,而后一种则增加了安全策略模块设计及 实现的难点【馏。下面就介绍几种对本文强制访问控制机制设计和实现有重大借鉴 意义的多策略访问控制支持框架。 2 2 2 存取控制广义框架g f a c 存取控制广义框架( g e n e r a l i z e df r a m e w o r kf o r a c c c s sc o n t r o l ,简称g f a c ) 是由m a r s h a l l a b r a m s 领导下,于2 0 世纪9 0 年代前期完成的一个项目,它提供了 一个表达和支持多安全策略的构架,用于单一系统中实现多种访问控制策略。 g f a c 6 1 【1 3 ( 参图2 3 ) 】中将主客体的安全属性和其他访问控制数据称为访问 控制信息( a c c e s sc o n t r o li n f o r m a t i o n ,a c i ) ;将实现系统安全策略的规则称为访 问控制规则( a c c e s sc o n t r o lr u l e s ,a c r ) ;将访问控制分为访问控制实施( a c c e s s c o n t r o le n f o r c e m e n tf a c i l i t y ,a e f ) 和访问控制决策( a c c c e s sc o n t r o ld e c i s i o n f a c i l i t y ,a d f ) 两个部分。 f 掣l 爿ll 存取请求调用苦临剿; a e f 返回策略判定结果“允许一7 a d f 访问控制实施部分 ,并设置相关属性或“拒绝” 访问控制决策部分 存取客体问更新访问控制信息检索a c i 上和a c r 、 客体 a c l a c r 访问控制信息访问控制规则 图2 - 3 g f a c 概图 f i g u r e2 - 3g f a cs t r u c t u r e 北京交通大学硕士学位论文 系统安全模型及关键技术研究 根据g f a c 的访问控制流程,当主体提出对客体的存取访问请求,a e f 发送 请求给a d f ,a d f 依据主客体的安全属性实施系统的各种安全策略和元策略,综 合各种安全策略的判定结果后决定是否允许访问。a e f 依据a d f 的决策结果, 控制访问是否进行。若不允许,a e f 中断主体请求,否则让访问继续。 g f a c 的主要思想是将访问控制决策和访问控制实施分离,两者之间通过定 义的接口进行通信,这样可以灵活地修改或增加访问控制模型,而无需修改策略 实施部分。另外系统中只有策略实施模块与操作系统相关,具有可移植性。该模 型中采用专门设置的库保存访问控制信息,能保存多种访问控制模型的安全属性 信息而不受原有系统数据结构的限制,具有通用性。 为了使系统具有可扩展性,本文将基于通用访问控制框架g f a c 设计强制访 问控制机制的系统体系结构。 2 2 3l s m 访问控制框架 在l s m ( l i n u xs e c u r i t ym o d u l e ,l i n u x 安全模块) 被提出之前,基于l i n u x 实现的安全系统都要开发和维护专用的安全接口,存在安全接口不标准、重复开 发,以及需单独维护等诸多问题。随着很多安全访问控制模型和框架已经被研究 和开发出来,用以增强l i n u x 系统的安全性,l i n u s t o r v a l d s 同意l i n u x 内核确实 需要一个通用的安全访问控制框架。 l s m 以内核补丁的方式可应用l i n u x2 4 和2 5 系列内核,并已成为l i n u x2 6 内核稳定版本的一部分。它定义并实现了一个通用安全框架,为安全模块的开发 提供标准的接口。璐m 本身并不提供任何安全功麓,只提供了实现安全模块所需 的基础结构( 安全字段、接口函数、模块注册函数与注销函数、安全系统调用“钩 子”等) ,安全系统可以利用这些基础结构,开发内核安全模块,然后插入内核, 提供安全功能。 l s m 采取了如图2 - 4 的方法来控制系统对内核内部对象( t a s ks t r u c t 和i n o d c , 以及打开的文件等) 的存取访问。用户进程执行系统调用,首先游历l i n u x 内核 原有的逻辑找到并分配资源,进行错误检查,并通过已有自主访问控制机制的验 证,恰好就在l i n u x 内核试图对内部对象进行访问之前,l i n u x 安全模块借助于 插入到核心代码中的“钩子( h o o k ) ”函数对安全模块所必须提供的函数进行调 用,来仲裁对该客体的访问是否可被允许。之所以称这种函数为“钩子”函数, 是因为l s m 并不为该函数提供具体的实现,该函数就像一个“钩子”一样调用 “挂”在它上面的某个具体的安全模块的函数。l s m 利用它的“钩子”特性将 安全策略的重任转交给实施特定安全模型的具体安全模块来完成砌 1 a o 北京交通大学硕士学位论文 系统安全模型及关键技术研究 图2 - 4l s m 的结构总体框架 m g u r e 2 - 4l s mf r a m e 基于l s m 实现安全模块,主要任务是:利用l s m 提供的安全字段或者设计新 的数据结构,存储安全属性;根据安全需求,实现l s m 定义的全部或部分安全接 口函数;编写模块初始化程序,通过调用注册函数完成安全模块和框架的连接。 本系统将在l s m 框架下,利用它提供的基础设旌,通过编写安全模块,实现 l s m 定义的文件系统相关的接口函数,在l i n u x 系统内核级实现强制访问控制b l p 模型,增强对文件系统的保护。 2 2 4f l a s k 模型和m a c 框架 下面简单介绍一下对本文中系

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论