1、第八章 操作系统安全配置方案 第1页内容提要n本章介绍Windows 服务器安全配置。n操作系统安全将决定网络安全,从保护级别上分成安全初级篇、中级篇和高级篇,共36条基本配置标准。n安全配置初级篇讲述常规操作系统安全配置,中级篇介绍操作系统安全策略配置,高级篇介绍操作系统安全信息通信配置。第2页操作系统概述n当前服务器惯用操作系统有三类:nUnixnLinuxnWindows NT/Server。n这些操作系统都是符合C2级安全级别操作系统。不过都存在不少漏洞,假如对这些漏洞不了解,不采取对应办法,就会使操作系统完全暴露给入侵者。第3页UNIX系统nUNIX操作系统是由美国贝尔试验室开发一个
2、多用户、多任务通用操作系统。它从一个试验室产品发展成为当前使用普遍、影响深远主流操作系统。nUNIX诞生于20世纪60年代末期,贝尔试验室研究人员于1969年开始在GE645计算机上实现一个分时操作系统雏形,以后该系统被移植到了DECPDP-7小型机上。n1970年给系统正式取名为Unix操作系统。到1973年,Unix系统绝大部分源代码都用C语言重新编写过,大大提升了Unix系统可移植性,也为提升系统软件开发效率创造了条件。第4页主要特色nUNIX操作系统经过20多年发展后,已经成为一个成熟主流操作系统,并在发展过程中逐步形成了一些新特色,其中主要特色包含5个方面。n(1)可靠性高n(2)极
3、强伸缩性n(3)网络功效强n(4)强大数据库支持功效n(5)开放性好第5页Linux系统 nLinux是一套能够无偿使用和自由传输类Unix操作系统,主要用于基于Intel x86系列CPU计算机上。这个系统是由全世界各地成千上万程序员设计和实现。其目标是建立不受任何商品化软件版权制约、全世界都能自由使用Unix兼容产品。nLinux最早开始于一位名叫Linus Torvalds计算机业余兴趣者,当初他是芬兰赫尔辛基大学学生。n目标是想设计一个代替Minix(是由一位名叫Andrew Tannebaum计算机教授编写一个操作系统示教程序)操作系统。这个操作系统可用于386、486或飞跃处理器个
4、人计算机上,而且含有Unix操作系统全部功效。第6页nLinux是一个无偿操作系统,用户能够无偿取得其源代码,并能够随意修改。n它是在共用许可证GPL(General Public License)保护下自由软件,也有好几个版本,如Red Hat Linux、Slackware,以及国内Xteam Linux、红旗Linux等等。Linux流行是因为它含有许多优点,经典优点有7个。第7页Linux经典优点有7个。n(1)完全无偿n(2)完全兼容POSIX 1.0标准n(3)多用户、多任务n(4)良好界面n(5)丰富网络功效n(6)可靠安全、稳定性能 n(7)支持各种平台 第8页Windows系
5、统nWindows NT(New Technology)是微软企业第一个真正意义上网络操作系统,发展经过NT3.0、NT40、NT5.0(Windows)和NT6.0(Windows)等众多版本,并逐步占据了广大中小网络操作系统市场。nWindows NT众多版本操作系统使用了与Windows 9X完全一致用户界面和完全相同操作方法,使用户使用起来比较方便。与Windows 9X相比,Windows NT网络功效愈加强大而且安全。第9页Windows NT系列操作系统nWindows NT系列操作系统含有以下三方面优点。n(1)支持各种网络协议n因为在网络中可能存在各种客户机,如Windows
6、 95/98、Apple Macintosh、Unix、OS/2等等,而这些客户机可能使用了不一样网络协议,如TCP/IP协议、IPX/SPX等。Windows NT系列操作支持几乎全部常见网络协议。n(2)内置Internet功效n伴随Internet流行和TCP/IP协议组标准化,Windows NT内置了IIS(Internet Information Server),能够使网络管理员轻松配置WWW和FTP等服务。n(3)支持NTFS文件系统nWindows 9X所使用文件系统是FAT,在NT中内置同时支持FAT和NTFS磁盘分区格式。使用NTFS好处主要是能够提升文件管理安全性,用户能
7、够对NTFS系统中任何文件、目录设置权限,这么当多用户同时访问系统时候,能够增加文件安全性。第10页安全操作系统研究发展 n操作系统安全性在计算机信息系统整体安全性中含有至关主要作用n没有操作系统提供安全性,信息系统安全性是没有基础 第11页国外安全操作系统发展 nMultics是开发安全操作系统最早期尝试。1965年美国贝尔试验室和麻省理工学院MAC课题组等一起联合开发一个称为Multics新操作系统,其目标是要向大用户团体提供对计算机并发访问,支持强大计算能力和数据存放,并含有很高安全性。贝尔试验室中以后参加UNIX早期研究许多人当初都参加了Multics开发工作。n因为Multics项目
8、目标理想性和开发中所碰到远超预期复杂性使得结果不是很理想。实际上连他们自己也不清楚什么时候,开发到什么程度才算到达设计目标。即使Multics未能成功,但它在安全操作系统研究方面迈出了主要第一步,Multics为以后安全操作系统研究积累了大量经验,其中Mitre企业Bell和La Padula合作设计BLP安全模型首次成功地用于Multics,BLP安全模型以后一直都作为安全操作系统开发所采取基础安全模型。第12页国外安全操作系统发展nAdept-50是一个分时安全操作系统,可以实际投入使用,1969年C.Weissman发表了有关Adept-50安全控制研究成果。安全Adept-50运行于I
9、BM/360硬件平台,它以一个形式化安全模型高水印模型(High-Water-Mark Model)为基础,实现了美国一个军事安全系统模型,为给定安全问题提供了一个比较形式化解决方案。在该系统中可认为客体标上敏感级别(Sensitivity Level)属性。系统支持基本安全条件是,对于读操作不允许信息敏感级别高于用户安全级别(Clearance);在授权情况下,对于写操作允许信息从高敏感级别移向低敏感级别。第13页国外安全操作系统发展n1969年B.W.Lampson经过形式化表示方法利用主体(Subject)、客体(Object)和访问矩阵(Access Matrix)思想第一次对访问控制
10、问题进行了抽象。主体是访问操作中主动实体,客体是访问操作中被动实体,主体对客体进行访问。访问矩阵以主体为行索引、以客体为列索引,矩阵中每一个元素表示一组访问方式,是若干访问方式集合。矩阵中第i行第j列元素Mij统计着第i个主体Si能够执行对第j个客体Oj访问方式,比如MijRead,Write表示Si能够对Oj进行读和写操作。n1972年,J.P.Anderson在一份研究汇报中提出了访问监控器(Reference Monitor)、引用验证机制(Reference Validation Mechanism)、安全内核(Security Kernel)和安全建模等主要思想。J.P.Anders
11、on指出,要开发安全系统,首先必须建立系统安全模型,完成安全系统建模之后,再进行安全内核设计与实现。第14页国外安全操作系统发展n1973年,B.W.Lampson提出了隐蔽通道概念,他发觉两个被限制通信实体之间假如共享某种资源,那么它们能够利用隐蔽通道传递信息。同年,D.E.Bell和L.J.LaPadula提出了第一个可证实安全系统数学模型,即BLP模型。1976年Bell和LaPadula完成研究汇报给出了BLP模型最完整表述,其中包含模型形式化描述和非形式化说明,以及模型在Multics系统中实现解释。nPSOS(Provably Secure Operating System)提供了
12、一个层次结构化基于权能安全操作系统设计,1975年前后开始开发。PSOS采取了层次式开发方法,经过形式化技术实现对安全操作系统描述和验证,设计中每一个层次管理一个特定类型对象,系统中每一个对象经过该对象权能表示进行访问。nKSOS(Kernelized Secure operating System)是美国国防部研究计划局1977年发起一个安全操作系统研制项目,由Ford太空通讯企业负担。KSOS采取了形式化说明与验证方法,目标是高安全可信性。第15页国外安全操作系统发展nUCLA Secure Unix也是美国国防部研究计划局于1978年前后发起一个安全操作系统研制项目,由加里福尼亚大学负担
13、。UCLA Secure Unix系统设计方法及目标几乎与KSOS相同。nLINVS 是1984年开发基于UNIX一个试验安全操作系统,系统安全性可到达美国国防部橘皮书B2级。它以4.1BSD Unix为原型,实现了身份判别、自主访问控制、强制访问控制、安全审计、特权用户权限分隔等安全功效。nSecure Xenix是IBM企业于1986年在SCO Xenix基础上开发一个安全操作系统,它最初是在IBM PC/AT平台上实现。Secure Xenix对Xenix进行了大量改造开发,并采取了一些形式化说明与验证技术。它目标是TCSECB2到A1级。IBM企业V.D.Gligor等在发表Secur
14、e Xenix系统设计与开发结果中,把Unix类安全操作系统开发方法划分成仿真法和改造/增强法两种方式。Secure Xenix系统采取是改造/增强法。另外值得指出是Secure Xenix系统基于安全注意键(SAK,Secure Attention Key)实现了可信通路(Trusted Path),并在安全确保方面重点考虑了3个目标:系统设计与BLP模型之间一致性;实现安全功效测试;软件配置管理工具开发。第16页国外安全操作系统发展n1987年,美国Trusted Information Systems公司以Mach操作系统为基础开发了B3级Tmach(Trusted Mach)操作系统。
15、除了进行用户标识和鉴别及命名客体存取控制外,它将BLP模型加以改进,运用到对MACH核心端口、存储对象等管理当中。经过对端口间消息传送进行控制和对端口、存储对象、任务等安全标识来加强微核心安全机制。n1989年,加拿大多伦多大学开发了与UNIX兼容安全TUNIS操作系统。在实现中安全TUNIS改进了BLP模型,并用Turing Plus语言(而不是C)重新实现了Unix内核,模块性相当好。Turing Plus是一种强类型高级语言,其大部分语句都具有用于正确性证明形式语义。在发表安全TUNIS设计开发成果中,Gernier等指出,如果不进行系统重新设计,以传统Unix系统为原型,很难开发出高于
16、TCSEC标准B2级安全操作系统,这一方面是因为用于编写Unix系统C语言是一个非安全语言,其次是因为Unix系统内部模块化程度不够。安全TUNIS系统设计目标是B3-A1级,支持这个目标关键也在于:第一其采用了Turing Plus语言,第二其采用了安全策略与安全机制相分离方法,并提供了一个简单而结构规范TCB,从而简化了TCB验证工作。第17页国外安全操作系统发展nASOS(Army Secure Operating System)是针对美军战术需要而设计军用安全操作系统,由TRW企业1990年公布完成。ASOS由两类系统组成,其中一类是多级安全操作系统,设计目标是TCSECA1级;另一类
17、是专用安全操作系统,设计目标是TCSECC2级。两类系统都支持Ada语言编写实时战术应用程序,都能依据不一样战术应用需求进行配置,都能够很轻易地在不一样硬件平台间移植,两类系统还提供了一致用户界面。从详细实现上来看,ASOS操作系统还含有5个主要特点:ASOS操作系统本身也主要是用Ada语言实现;ASOS采取访问控制列表(Access Control List,ACL)实现了细粒度自主访问控制;ASOS依据BLP模型实现了预防信息泄露强制访问控制,依据Biba模型实现了确保数据完整性强制访问控制;ASOS在形式化验证中建立了两个层次规范和证实,一个层次用于抽象安全模型,另一个层次用于形式化顶层
18、规范;用于证实系统安全性主要工具是Gypsy验证环境(GVE),ASOS开发了一个在GVE中工作流分析工具,用于分析系统设计中潜在隐蔽通道。第18页国外安全操作系统发展nOSF/1是开放软件基金会于1990年推出一个安全操作系统,被美国国家计算机安全中心(NCSC)认可为符合TCSECB1级,其主要安全性表现4个方面:系统标识;口令管理;强制存取控制和自主存取控制;审计。nUNIX SVR4.1ES是UI(UNIX国际组织)于1991年推出一个安全操作系统,被美国国家计算机安全中心(NCSC)认可为符合TCSECB2级,除OSF/1外安全性主要表现在4个方面:更全方面存取控制;最小特权管理;可
19、信通路;隐蔽通道分析和处理。n1991年,在欧洲共同体赞助下,英、德、法、荷四国制订了拟为欧共体组员国使用共同标准信息技术安全评定标准(ITSEC)。伴随各种标准推出和安全技术产品发展,美国和同加拿大及欧共体国家一起制订通用安全评价准则(Common Criteria for IT Security Evaluation,CC),1996年1月公布了CC1.0版。CC标准2.0版已于1997年8月颁布,并于1999年7月经过国际标准组织认可,确立为国际标准,即ISO/IEC 15408。第19页国外安全操作系统发展n在1992到1993年之间,美国国家安全局(NSA)和安全计算企业(SCC)研
20、究人员在TMach项目和LOCK项目标基础上,共同设计和实现了分布式可信Mach系统(Distributed Trusted Mach,DTMach)。DTMach项目标后继项目是分布式可信操作系统(Distributed Trusted Operating System,DTOS)。DTOS项目改良了早期设计和实现工作,产生了一些供大学研究原型系统,比如Secure Transactional Resources、DX等。另外DTOS项目产生了一些学术汇报、系统形式化需求说明书、安全策略和特征分析、组合技术研究和对各种微内核系统安全和确保研究。当DTOS项目快要完成时候,NSA、SCC和犹他
21、州大学Flux项目组联合将DTOS安全结构移植到Fluke操作系统研究中去。在将结构移植到Fluke过程中,他们改良了结构以更加好地支持动态安全策略。这个改良后结构就叫Flask。一些Flask接口和组件就是从Fluke到OSKit中接口和组件中继承下来。第20页国外安全操作系统发展n,Flask由NSA在Linux操作系统上实现,而且不一样寻常地向开放源码小区公布了一个安全性增强型版本Linux(SELinux)包含代码和全部文档。n与传统基于TCSEC标准开发方法不一样,1997年美国国家安全局和安全计算企业完成DTOS安全操作系统采取了基于安全威胁开发方法。设计目标包含3个方面:n(1)
22、策略灵活性:DTOS内核应该能够支持一系列安全策略,包含诸如国防部强制存取控制多级安全策略;n(2)与Mach兼容,现有Mach应用应能在不做任何改变情况下运行;n(3)性能应与Mach靠近。第21页nSELinux以Flask安全体系结构为指导,经过安全判定与安全实施分离实现了安全策略独立性,借助访问向量缓存(AVC)实现了对动态策略支持。SELinux定义了一个类型实施(TE)策略,基于角色访问控制(RBAC)策略和多级安全(MLS)策略组合安全策略,其中TE和RBAC策略总是系统实现安全策略有机组成。nEROS(Extremely Reliable Operating System)是一
23、个基于权能(Capability,权能)高性能微内核实时安全操作系统,是GNOSIS(后命名为KeyKOS)体系结构第三代实现。EROS最初由美国宾西法尼亚大学开发,此项目现已转入约翰霍普金斯大学。当前,EROS仍处于研究开发阶段,只支持Intel 486以上系列芯片。第一个EROS内核已在1999年完成,现在开发版本是EROS 2.0,很快就会公布。EROS源代码恪守GPL规范,可在其网站(http:/www.eros-os.org)取得。n其它还有一些安全操作系统开发项目,如HoneywellSTOP、GeminiGEMSOS、DECVMM(Virtual Machine Monitor)
24、等,以及HP和Data General等企业开发安全操作系统。第22页国内安全操作系统发展 n国内也进行了许多相关安全操作系统开发研制工作,并取得了一些研究结果。1990年前后,海军计算技术研究所和解放军电子技术学院分别开始了安全操作系统技术方面探讨,他们都是参考美国TCSEC标准B2级安全要求,基于UNIX System V3.2进行安全操作系统研究与开发。n1993年,海军计算技术研究所继续按照美国TCSEC标准B2级安全要求,围绕Unix SVR4.2/SE,实现了国产自主安全增强包。n1995年,在国家“八五”科技攻关项目“COSA国产系统软件平台”中,围绕UNIX类国产操作系统COS
25、IX V2.0安全子系统设计与实现,中国计算机软件与技术服务总企业、海军计算技术研究所和中国科学院软件研究所一起参加了研究工作。COSIX V2.0安全子系统设计目标是介于美国TCSECB1和B2级安全要求之间,当初定义为B1,主要实现安全功效包含安全登录、自主访问控制、强制访问控制、特权管理、安全审计和可信通路等。第23页国内安全操作系统发展n1996年,由中国国防科学技术工业委员会公布了军用计算机安全评定准则GJB264696(普通简称为军标),它与美国TCSEC基本一致。n1998年,电子工业部十五所基于UnixWare V2.1按照美国TCSEC标准B1级安全要求,对Unix操作系统内
26、核进行了安全性增强。n1999年10月19日,我国国家技术监督局公布了国家标准GB178591999计算机信息系统安全保护等级划分准则,为计算机信息系统安全保护能力划分了等级。该标准已于起强制执行。Linux自由软件广泛流行对我国安全操作系统研究与开发含有主动推进作用。前后,我国安全操作系统研究人员相继推出了一批基于Linux安全操作系统开发结果。这包含:第24页国内安全操作系统发展n中国科学院信息安全技术工程研究中心基于Linux资源,开发完成了符合我国GB178591999第三级(相当于美国TCSEC B1)安全要求安全操作系统SecLinux。SecLinux系统提供了身份标识与判别、自
27、主访问控制、强制访问控制、最小特权管理、安全审计、可信通路、密码服务、网络安全服务等方面安全功效。n依靠南京大学江苏南大苏富特软件股份有限企业开发完成了基于Linux安全操作系统SoftOS,实现安全功效包含:强制访问控制、审计、禁止客体重用、入侵检测等。n信息产业部30所控股三零盛安企业推出强林Linux安全操作系统,到达了我国GB178591999第三级安全要求。第25页国内安全操作系统发展n中国科学院软件所开放系统与汉字处理中心基于红旗Linux操作系统,实现了符合我国GB178591999第三级要求安全功效。中国计算机软件与技术服务总企业以美国TCSEC标准B1级为安全目标,对其COS
28、IX V2.0进行了安全性增强改造。n另外,国防科技大学、总参56所等其它单位也开展了安全操作系统研究与开发工作。3月8日,我国国家技术监督局公布了国家标准GB/T18336信息技术安全技术 信息技术安全性评定准则,它基本上等同采取了国际通用安全评价准则CC。该标准已于12月1日起推荐执行,这将对我国安全操作系统研究与开发产生深入影响。第26页安全操作系统基本概念 n安全操作系统包括很多概念:n主体和客体n安全策略和安全模型n访问监控器和安全内核以及可信计算基。第27页主体和客体 n操作系统中每一个实体组件都必须是主体或者是客体,或者既是主体又是客体。主体是一个主动实体,它包含用户、用户组、进
29、程等。系统中最基本主体应该是用户(包含普通用户和系统管理员、系统安全员、系统审计员等特殊用户)。每个进入系统用户必须是惟一标识,并经过判别确定为真实。系统中全部事件要求,几乎全是由用户激发。进程是系统中最活跃实体,用户全部事件要求都要经过进程运行来处理。在这里,进程作为用户客体,同时又是其访问对象主体。n客体是一个被动实体。在操作系统中,客体能够是按照一定格式存放在一定统计介质上数据信息(通常以文件系统格式存放数据),也能够是操作系统中进程。操作系统中进程(包含用户进程和系统进程)普通有着双重身份。当一个进程运行时,它必定为某一用户服务直接或间接处理该用户事件要求。于是,该进程成为该用户客体,
30、或为另一进程客体(这时另一进程则是该用户客体)第28页安全策略和安全模型 n安全策略与安全模型是计算机安全理论中轻易相互混同两个概念。安全策略是指相关管理、保护和公布敏感信息法律、要求和实施细则。比如,能够将安全策略定为:系统中用户和信息被划分为不一样层次,一些级别比另一些级别高;而且假如主体能读访问客体,当且仅当主体级别高于或等于客体级别;假如主体能写访问客体,当且仅当主体级别低于或等于客体级别。n安全模型则是对安全策略所表示安全需求简单、抽象和无歧义描述,它为安全策略和安全策略实现机制关联提供了一个框架。安全模型描述了对某个安全策略需要用哪种机制来满足;而模型实现则描述了怎样把特定机制应用
31、于系统中,从而实现某一特定安全策略所需安全保护。第29页访问监控器n访问控制机制理论基础是访问监控器(Reference Monitor),由J.P.Anderson首次提出。访问监控器是一个抽象概念,它表现是一个思想。J.P.Anderson把访问监控器详细实现称为引用验证机制,它是实现访问监控器思想硬件和软件组合 第30页安全内核 n安全内核是实现访问监控器概念一个技术,在一个大型操作系统中,只有其中一小部分软件用于安全目标是它理论依据。所以在重新生成操作系统过程中,可用其中安全相关软件来组成操作系统一个可信内核,称之为安全内核。安全内核必须给予适当保护,不能篡改。同时绝不能有任何绕过安全
32、内核存取控制检验存取行为存在。另外安全内核必须尽可能地小,便于进行正确性验证。安全内核由硬件和介于硬件和操作系统之间一层软件组成 第31页可信计算基 n操作系统安全依赖于一些详细实施安全策略可信软件和硬件。这些软件、硬件和负责系统安全管理人员一起组成了系统可信计算基(Trusted Computing Base,TCB)。详细来说可信计算基由以下7个部分组成:n1.操作系统安全内核。n2.含有特权程序和命令。n3.处理敏感信息程序,如系统管理命令等。n4.与TCB实施安全策略相关文件。n5.其它相关固件、硬件和设备。n6.负责系统管理人员。n7.保障固件和硬件正确程序和诊疗软件。第32页安全操
33、作系统机制 n安全操作系统机制包含:n硬件安全机制n操作系统安全标识与判别n访问控制、最小特权管理n可信通路和安全审计第33页硬件安全机制 n绝大多数实现操作系统安全硬件机制也是传统操作系统所要求,优异硬件保护性能是高效、可靠操作系统基础。n计算机硬件安全目标是,确保其本身可靠性和为系统提供基本安全机制。其中基本安全机制包含存放保护、运行保护、I/O保护等。第34页标识与判别 n标识与判别是包括系统和用户一个过程。标识就是系统要标识用户身份,并为每个用户取一个系统能够识别内部名称用户标识符。用户标识符必须是惟一且不能被伪造,预防一个用户冒充另一个用户。n将用户标识符与用户联络过程称为判别,判别
34、过程主要用以识别用户真实身份,判别操作总是要求用户含有能够证实他身份特殊信息,而且这个信息是秘密,任何其它用户都不能拥有它。第35页访问控制 n在安全操作系统领域中,访问控制普通都包括n自主访问控制(Discretionary Access Control,DAC)n强制访问控制(Mandatory Access Control,MAC)两种形式第36页 自主访问控制 n自主访问控制是最惯用一类访问控制机制,用来决定一个用户是否有权访问一些特定客体一个访问约束机制。在自主访问控制机制下,文件拥有者能够按照自己意愿准确指定系统中其它用户对其文件访问权。n亦即使用自主访问控制机制,一个用户能够自主
35、地说明他所拥有资源允许系统中哪些用户以何种权限进行共享。从这种意义上讲,是“自主”。另外自主也指对其它含有授予某种访问权力用户能够自主地(可能是间接)将访问权或访问权某个子集授予另外用户。第37页强制访问控制MAC n在强制访问控制机制下,系统中每个进程、每个文件、每个 IPC 客体(消息队列、信号量集合和共享存贮区)都被赋予了对应安全属性,这些安全属性是不能改变,它由管理部门(如安全管理员)或由操作系统自动地按照严格规则来设置,不像访问控制表那样由用户或他们程序直接或间接地修改。n当一进程访问一个客体(如文件)时,调用强制访问控制机制,依据进程安全属性和访问方式,比较进程安全属性和客体安全属
36、性,从而确定是否允许进程对客体访问。代表用户进程不能改变本身或任何客体安全属性,包含不能改变属于用户客体安全属性,而且进程也不能经过授予其它用户客体存取权限简单地实现客体共享。假如系统判定拥有某一安全属性主体不能访问某个客体,那么任何人(包含客体拥有者)也不能使它访问该客体。从这种意义上讲,是“强制”。第38页强制访问控制和自主访问控制n强制访问控制和自主访问控制是两种不一样类型访问控制机制,它们常结合起来使用。仅当主体能够同时经过自主访问控制和强制访问控制检验时,它才能访问一个客体。n用户使用自主访问控制预防其它用户非法入侵自己文件,强制访问控制则作为更强有力安全保护方式,使用户不能经过意外
37、事件和有意识误操作逃避安全控制。所以强制访问控制用于将系统中信息分密级和类进行管理,适合用于政府部门、军事和金融等领域。第39页最小特权管理 n在现有普通多用户操作系统(如UNIX、Linux等)版本中,超级用户含有全部特权,普通用户不含有任何特权。一个进程要么含有全部特权(超级用户进程),要么不含有任何特权(非超级用户进程)。这种特权管理方式便于系统维护和配置,但不利于系统安全性。一旦超级用户口令丢失或超级用户被冒充,将会对系统造成极大损失。另外超级用户误操作也是系统极大潜在安全隐患。所以必须实施最小特权管理机制。n最小特权管理思想是系统不应给用户超出执行任务所需特权以外特权,如将超级用户特
38、权划分为一组细粒度特权,分别授予不一样系统操作员/管理员,使各种系统操作员/管理员只含有完成其任务所需特权,从而降低因为特权用户口令丢失或错误软件、恶意软件、误操作所引发损失。比如可在系统中定义5个特权管理职责,任何一个用户都不能获取足够权力破坏系统安全策略。第40页可信通路 n在计算机系统中,用户是经过不可信中间应用层和操作系统相互作用。但用户登录,定义用户安全属性,改变文件安全级等操作,用户必须确实与安全关键通信,而不是与一个特洛伊木马打交道。系统必须预防特洛伊木马模仿登录过程,窃取用户口令。n特权用户在进行特权操作时,也要有方法证实从终端上输出信息是正确,而不是来自于特洛伊木马。这些都需
39、要一个机制保障用户和内核通信,这种机制就是由可信通路提供。第41页安全审计 n一个系统安全审计就是对系统中相关安全活动进行统计、检验及审核。它主要目标就是检测和阻止非法用户对计算机系统入侵,并显示正当用户误操作。n审计作为一个事后追查伎俩来确保系统安全,它对包括系统安全操作做一个完整统计。n审计为系统进行事故原因查询、定位,事故发生前预测、报警以及事故发生之后实时处理提供详细、可靠依据和支持,以备有违反系统安全规则事件发生后能够有效地追查事件发生地点和过程以及责任人。第42页代表性安全模型 n安全模型就是对安全策略所表示安全需求简单、抽象和无歧义描述,它为安全策略和它实现机制之间关联提供了一个
40、框架。n安全模型描述了对某个安全策略需要用哪种机制来满足;而模型实现则描述了怎样把特定机制应用于系统中,从而实现某一特定安全策略所需安全保护。第43页安全模型特点 n能否成功地取得高安全级别系统,取决于对安全控制机制设计和实施投入多少精力。不过假如对系统安全需求了解不清楚,即使利用最好软件技术,投入最大精力,也极难到达安全要求目标。安全模型目标就在于明确地表示这些需求,为设计开发安全系统提供方针。安全模型有以下4个特点:n它是准确、无歧义;n它是简易和抽象,所以轻易了解;n它是普通性:只包括安全性质,而不过分地牵扯系统功效或其实现;n它是安全策略显著表现。n安全模型普通分为两种:形式化安全模型
41、和非形式化安全模型。非形式化安全模型仅模拟系统安全功效;形式化安全模型则使用数学模型,准确地描述安全性及其在系统中使用情况。第44页主要安全模型介绍 n主要介绍含有代表性:nBLP机密性安全模型、Biba完整性安全模型和Clark-Wilson完整性安全模型、信息流模型、RBAC安全模型、DTE安全模型和无干扰安全模型等。第45页1.Bell-LaPadula(BLP)模型 nBell-LaPadula模型(简称BLP模型)是D.Elliott Bell和Leonard J.LaPadula于1973年提出一个适合用于军事安全策略计算机操作系统安全模型,它是最早、也是最惯用一个计算机多级安全模
42、型之一。nBLP模型是一个状态机模型,它形式化地定义了系统、系统状态以及系统状态间转换规则;定义了安全概念;制订了一组安全特征,以此对系统状态和状态转换规则进行限制和约束,使得对于一个系统而言,假如它初始状态是安全,而且所经过一系列规则转换都保持安全,那么能够证实该系统终了也是安全。第46页2.Biba模型nBLP模型经过预防非授权信息扩散确保系统安全,但它不能预防非授权修改系统信息。于是Biba等人在1977年提出了第一个完整性安全模型Biba模型,其主要应用是保护信息完整性,而BLP模型是保护信息机密性。nBiba模型也是基于主体、客体以及它们级别概念。模型中主体和客体概念与BLP模型相同
43、,对系统中每个主体和每个客体均分配一个级别,称为完整级别。第47页3.Clark-Wilson完整性模型n在商务环境中,1987年David Clark和David Wilson所提出完整性模型含有里程碑意义,它是完整意义上完整性目标、策略和机制起源,在他们论文中,为了表达用户完整性,他们提出了职责隔离目标;为了确保数据完整性,他们提出了应用相关完整性验证进程;为了建立过程完整性,他们定义了对于转换过程应用相关验证;为了约束用户、进程和数据之间关联,他们使用了一个三元组结构。nClark-Wilson模型关键在于以良构事务(well-formal transaction)为基础来实现在商务环境
44、中所需完整性策略。良构事务概念是指一个用户不能任意操作数据,只能用一个能够确保数据完整性受控方式来操作数据。为了确保数据项(data items)仅仅只能被良构事务来操作,首先得确认一个数据项仅仅只能被一组特定程序来操纵,而且这些程序都能被验证是经过适当结构,而且被正确安装和修改。第48页4.信息流模型n许多信息泄露问题(如隐蔽通道)并非存取控制机制不完善,而是因为缺乏对信息流必要保护。比如恪守BLP模型系统,应该恪守“下读上写”规则,即低安全进程程不能读高安全级文件,高安全级进程不能写低安全级文件。n然而在实际系统中,尽管不一定能直接为主体所见,许多客体(包含缓冲池、定额变量、全程计数器等等
45、)还是能够被全部不一样安全级主体更改和读取,这么入侵者就可能利用这些客体间接地传递信息。要建立高级别安全操作系统,必须在建立完善存取控制机制同时,依据适当信息流模型实现对信息流分析和控制。第49页5.基于角色访问控制模型n基于角色访问控制模型(Role-Based Access Control,RBAC)提供了一个强制访问控制机制。在一个采取RBAC作为授权访问控制系统中,依据企业或组织业务特征或管理需求,普通要求在系统内设置若干个称之为“角色”客体,用以支撑RBAC授权存取控制机制实现。n角色,就是业务系统中岗位、职位或者分工。比如在一个企业内,财会主管、会计、出纳、核实员等每一个岗位都能够
46、设置多个职员详细从事该岗位工作,所以它们都能够视为角色。第50页6.DTE模型nDTE模型最初由Boebert和Kain提出,经修改后在LOCK系统中得到实现。与其它访问控制机制一样,DTE将系统视为一个主动实体(主体)集合和一个被动实体(客体)集合。每个主体有一个属性域,每个客体有一个属性类型,这么全部主体被划分到若干个域中,全部客体被划分到若干个类型中。nDTE再建立一个表“域定义表”(Domain Definition Table),描述各个域对不一样类型客体操作权限。同时建立另一张表“域交互表”(Domain Interaction Table),描述各个域之间许可访问模式(如创建、发
47、信号、切换)。系统运行时,依据访问主体域和客体类型,查找域定义表,决定是否允许访问。第51页7.无干扰模型nGoguen与Meseguer在1982年提出了一个基于自动机理论和域隔离安全系统事项方法,这个方法分为4个阶段:n(1)判定一给定机构安全需求;n(2)用正式/形式化安全策略表示这些需求;n(3)把机构正在(或将要)使用系统模型化;n(4)验证此模型满足策略需求。nGoguen与Meseguer把安全策略与安全模型明确地域分开来。普通来说安全策略是非常简单,而且很轻易用适当形式化方法表示出来。他们提出了一个非常简单用来表示安全策略需求语言,该语言是基于无干扰概念.第52页操作系统安全体
48、系结构n建立一个计算机系统往往需要满足许多要求,如安全性要求,性能要求,可扩展性要求,容量要求,使用方便性要求和成本要求等,这些要求往往是有冲突,为了把它们协调地纳入到一个系统中并有效实现,对全部要求都给予最大可能满足通常是很困难,有时也是不可能。n所以系统对各种要求满足程度必须在各种要求之间进行全局性地折衷考虑,并经过恰当实现方式表示出这些考虑,使系统在实现时各项要求有轻重之分,这就是体系结构要完成主要任务。第53页 安全体系结构含义 n一个计算机系统(尤其是安全操作系统)安全体系结构,主要包含以下4方面内容:n1.详细描述系统中安全相关全部方面。这包含系统可能提供全部安全服务及保护系统本身
49、安全全部安全办法,描述方式能够用自然语言,也能够用形式语言。n2.在一定抽象层次上描述各个安全相关模块之间关系。这能够用逻辑框图来表示,主要用以在抽象层次上按满足安全需求方式来描述系统关键元素之间关系。n3.提出指导设计基本原理。依据系统设计要求及工程设计理论和方法,明确系统设计各方面基本标准。n4.提出开发过程基本框架及对应于该框架体系层次结构。它描述确保系统忠实于安全需求整个开发过程全部方面。为到达此目标,安全体系总是按一定层次结构进行描述第54页 安全体系结构类型 n在美国国防部“目标安全体系”中,把安全体系划分为四种类型:n1.抽象体系(Abstract Architecture)。抽
50、象体系从描述需求开始,定义执行这些需求功效函数。之后定义指导怎样选取这些功效函数及怎样把这些功效有机组织成为一个整体原理及相关基本概念。n2.通用体系(Generic Architecture)。通用体系开发是基于抽象体系决议来进行。它定义了系统分量通用类型(general type)及使用相关行业标准情况,它也明确要求系统应用中必要指导标准。通用安全体系是在已经有安全功效和相关安全服务配置基础上,定义系统分量类型及可得到实现这些安全功效相关安全机制。n3.逻辑体系(Logical Architecture)。逻辑体系就是满足某个假设需求集合一个设计,它显示了把一个通用体系应用于详细环境时基本