了解操作系统安全的发展历史;
掌握安全操作系统的安全策略与模型; (重点)
掌握安全操作系统的访问控制机制; (重点)
了解安全操作系统的评测方法与准则。
系统安全架构发展回顾和TCB的提出
可信计算基(Trusted Computing Base,TCB)
TCB是计算机系统内保护装置的总体,包括:硬件、固件、软件和负责执行安全策略的组合体
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-99uvi1Ri-1636730799867)(C:\Users\LENOVO\AppData\Roaming\Typora\typora-user-images\image-20211111212807973.png)]
硬件结构安全和操作系统安全是计算机系统安全的基础。
TCB的硬件组成举例
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-PNOBKZBT-1636730799870)(https://i.loli.net/2021/11/11/KNpL3RwGZP8ueaY.png)]
TCB的软件组成举例
1970s提出的引用监视器(Reference Monitor, RM 可作为TCB软件部分)
自主访问控制(Discretionary Access Control,DAC)
用来决定一个用户是否有权限访问此客体的一种访问约束机制,该客体的所有者可以按照
自己的意愿指定系统中的其他用户对此客体的访问权。(例如:操作系统用户Alice新建了一个文本文件userAlice.txt,在DAC下,Alice就能自由设置哪些用户能够读/写文件userAlice.txt )
敏感标记(Sensitivity Label)
用以表示客体安全级别并描述客体数据敏感性的一组信息,在可信计算基中把敏感标记作为强制访问控制决策的依据。
强制访问控制(Mandatory Access Control,MAC 需要基于敏感标记)
用于将系统中的信息分密级和类进行管理,以保证每个用户只能够访问那些被标明可以由他访问的信息的一种访问约束机制。
角色(Role):
系统中一类访问权限的集合。 基于角色的访问控制RBAC
隐蔽信道(Covert Channel)
允许进程以危害系统安全策略的方式传输信息的信道。
客体重用(Object Reuse)
对曾经包含一个或几个客体的存贮介质(如页框、盘扇面、磁带)重新分配和重用。
可信通路(Trusted Path)
终端人员能借以直接同可信计算基通信的一种机制。该机制只能由有关终端操作人员或可信计算基启动,并且不能被不可信软件模仿。
多级安全(MultiLevel Secure,MLS)
一类包含不同等级敏感信息的系统,它既可供具有不同安全许可的用户同时进行合法访问,又能阻止用户去访问其未被授权的信息
**安全操作系统(**Secure Operating System)
能对所管理的数据与资源提供适当的保护级、有效地控制硬件与软件功能的操作系统
多级安全操作系统(Multilevel Secure Operating System)
实现了多级安全策略的安全操作系统,比如符合美国TCSEC B1级以上的安全操作系统。
2.安全操作系统
定义
安全策略是指有关管理、保护和发布敏感信息的法律、规定和实施细则。(密码算法设计得再完美,也需要配合安全策略使用,才能达到安全目的)。
操作系统是安全的 是指它满足某一给定的安全策略。
进行安全操作系统的设计和开发时 也要围绕一个给定的安全策略进行。
1.军事安全策略(安全策略最早来源于军事系统)
军事安全策略是基于保护机密信息的策略。每条信息被标识为一个特定的等级,如:
2.商业安全策略(军事安全策略的变形)
中国墙安全策略(典型的商业安全策略)
反映了对信息访问保护的某种商业需求(要求:一个用户至多访问同一冲突类中某一个公司的信息)。
安全策略建立在三个抽象等级上:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cEqsaEgP-1636730799875)(https://i.loli.net/2021/11/11/xd8Z3iX5WlcJ2Dy.png)]
和其他的商业策略不同,中国墙策略注重机密性和完整性。
定义:对安全策略所表达的安全需求的简单、抽象和无歧义的描述。
它为安全策略和安全策略实现机制的关联提供了一种框架。
要开发安全系统首先必须建立系统的安全模型。
特点:
分类:形式化的安全模型和非形式化的安全模型
形式化的安全模型是设计开发高级别安全系统的前提。
如果是用非形式化的开发路径,修改一个现有的操作系统以改进它的安全性能,则只能达到中等的安全级别
主要安全模型
BLP机密性安全模型
Bell-Lapadula模型
保障信息机密性策略(BLP模型):
Biba完整性安全模型
RBAC安全模型
Clark-Wilson完整性安全模型
信息流模型
DTE安全模型
无干扰安全模型
在计算机系统中,安全机制的主要内容是访问控制,包括以下3个任务:
这里,“访问控制”仅适用于计算机系统内的主体和客体,而不包括外界对系统的访问。控制外界对系统访问的技术是标识与鉴别。
主要讲述自主访问控制、强制访问控制和基于角色的访问控制三种形式
1.基本概念
最常用的一类访问控制机制,是由客体所有者决定一个用户是否有权访问一些特定客体的一种访问约束机制。
目前在操作系统中实现的DAC机制是基于矩阵的行或列表达访问控制信息(访问控制矩阵
2.实现举例
UNIX、Linux、VMS等系统中,在每个文件上附加一段有关访问控制信息的二进制位
使用命令:ls –la 将出现每个文件的具体DAC信息
1.基本概念
系统中的每个进程、每个文件、每个IPC客体(消息队列、信号量集合和共享存储区)都被赋予了相应的安全属性,这些安全属性是不能改变的,它由管理部门或由操作系统自动地按照严格的规则来设置。
与DAC重要的区别:不能像访问控制表那样由客体所有者直接或间接地修改安全属性 不灵活。
强制访问控制用于将系统中的信息分密级和类进行管理,适用于政府部门、军事和金融等领域。
一般将强制访问控制和多级安全体系相提并论
1) 军事安全策略
安全级由两方面的内容构成:保密级别和范畴集
实际上范畴集常常是空的,而且很少有几个范畴名。
在安全级中保密级别是线性排列的。
2) 多级安全规则与BLP模型
BLP模型的目标就是详细说明计算机的多级操作规则。
BLP模型的两条基本的规则:
2.实现举例
UNIX SVR 4.1ES分别对系统中的主体和客体赋予了相应的安全级,并采用了BLP模型对应的多级安全规则。
3.使用强制访问控制规则防止特洛伊木马
1.基本概念
RBAC与MAC的区别在于:MAC是基于多级安全需求的,而RBAC是基于角色的。
2.实现举例
racle Solaris 11的RBAC功能控制用户对通常限于root角色的任务的访问。
很多操作系统中都发现了漏洞。
1.已知的漏洞
2.漏洞利用的例子
总的来说,安全操作系统的安全缺陷是由于复杂情形(例如用户接口)的错误分析造成的,或者是由于安全策略中的二义性或疏忽造成的。利用简单的安全机制实现清楚而完善的安全策略 能够显著减少漏洞和入侵。
1.评测方法
形式化验证 最精确、工作量巨大、复杂、困难
自动机LTS通信系统演算CCSπ演算应用π演算
非形式化确认 安全需求检查、设计及代码检查、模块及系统测试
入侵分析 应当掌握操作系统典型的安全漏洞,试图发现并利用
2.评估准则
美国TCSEC
根据所采用的安全策略、系统所具备的安全功能将系统分为四类7个安全级别
即:D类、C类、B类和A类
中国国标GB17859-1999
将计算机信息系统安全保护能力划分为5个等级
国际通用安全评价准则CC
CC标准提出了“保护轮廓”,将评估过程分为“功能”和“保证”两部分,结合了欧洲的ITSEC,美国的TESEC,加拿大的CTCPEC和国际标准化组织提出的ISO SC27 WG3的安全评价标准,是目前最全面的信息技术安全评估标准。
CC标准在内容上包括三部分: