安全操作系统的设计与实现

上传人:飞*** 文档编号:48588031 上传时间:2018-07-17 格式:PPT 页数:150 大小:4.63MB
返回 下载 相关 举报
安全操作系统的设计与实现_第1页
第1页 / 共150页
安全操作系统的设计与实现_第2页
第2页 / 共150页
安全操作系统的设计与实现_第3页
第3页 / 共150页
安全操作系统的设计与实现_第4页
第4页 / 共150页
安全操作系统的设计与实现_第5页
第5页 / 共150页
点击查看更多>>
资源描述

《安全操作系统的设计与实现》由会员分享,可在线阅读,更多相关《安全操作系统的设计与实现(150页珍藏版)》请在金锄头文库上搜索。

1、安全操作系统第七章 安全操作系统的设计与实现对OS进行攻击, 是黑客永恒不变的目标,突破了OS的防御, 就有机会得到计算系统的秘密, 就有机会控制应用程序的运行。内容提要v安全操作系统的设计原理 v安全操作系统的设计 v安全操作系统的开发 v安全操作系统关键技术的实现内容提要v安全操作系统的设计原理 v安全操作系统的设计 v安全操作系统的开发 v安全操作系统关键技术的实现安全操作系统的设计原理v通用操作系统的安全功能 用户认证 存储器保护 文件和I/O设备的访问控制对普通对象的定位和访问控制 共享的实现(保证完整性和一致性) 保证公平的服务 IPC和同步 vSaltzer和Schroeder的

2、八条设计原则存储器保护v用户程序的运行空间 未经批准的用户不能访问!即便是对自己的程序空间,访问也要受限!Linux中的线性区返回公平的服务v极端:饿死现象v资源: CPU:公平调度内存:按需分配 IO设备等等返回IPC和同步v信号量 v管道和FIFOv消息队列 vSocketv共享内存返回75,Saltzer和SchroedervSaltzer, J.H. and M.D. Schroeder, The protection of information in computer systems. Proceedings of the IEEE, 1975. 63(9): p. 1278-13

3、08.v以保护机制的体系结构为中心 v探讨了计算机系统的信息保护问题 v重点考察了权能和访问控制表的实现结构 v给出了信息保护机制的8条设计原则v并指出,如何证明硬件和软件保护机制的设计 与实现的正确性,是一个挑战v信息保护机制的八条设计原则 机制经济性原则:要简单而且短小 Fail-safe默认原则:即失败是保险的。显式授权 VS 隐式授权完全仲裁原则 开放式设计原则:不要基于设计的保密性 特权分离原则 最小特权原则 最少公共机制原则 心理可接受性原则:易用性操作系统安全的可信性v操作系统安全的可信性,依赖 安全功能在系统中实现的完整性 文档系统的清晰说明 系统测试 形式化程度v操作系统 一

4、个大型软件:内核系统软件应用程序验证困难v解决思路: 提供安全保证的部分: 尽可能小 便于验证(测试)硬 件OS kernelSystem SoftwareApplication安全操作系统的一般结构v 高安全级别OS的结构 VS. 低安全级别OS的结构 分离的安全内核? 前者:KSOS,UCLA Secure Linux 后者:LINVS IV,Secure XENIX,TMACH和Secure TUNIS安全操作系统的一般结构内容提要v安全操作系统的设计原理 v安全操作系统的设计 隔离 安全内核 分层设计 环结构 v安全操作系统的开发 v安全操作系统关键技术的实现操作系统设计的基本原则v

5、通用OS 灵活性 性能 开发费用 方便性v 安全内核 隔离性 完整性 可验证性 安全操作系统设计的考虑因素 隔离性:主要是不同进程间的隔离,是操作系统最 基本的安全功能 安全内核的设计: 分层设计 环结构设计内容提要v安全操作系统的设计原理 v安全操作系统的设计 隔离 安全内核 分层设计 环结构 v安全操作系统的开发 v安全操作系统关键技术的实现隔离v有四种方法将一个进程与其他过程分离 物理分离:各进程使用不同的硬件设施 时间分离:各进程使用不同的时间段(宏观) 密码分离: 逻辑分离:v安全操作系统应该将每个用户与所有其他用户 分离开,仔细地只允许受控制的用户间的交互操作系统中隔离机制的实现方

6、法v隔离机制的实现方法: 多个虚拟存储空间 虚拟机多个虚拟存储空间操作系统空间用户1空间用户2空间用户n空间操作系统空间地址0高端存储器对比:早期,多用户OS的存储器,单地址空间内存的实际组织多个虚拟存储空间(举例:IBM MVS)操作系统空间MAINSUB1DATA1SUB2DATA2自由空间操作系统空间用户1 的程序 和数据地址0高端存储器用户1感觉到的内存操作系统空间MAINPROC_ADYNAMIC_DATPROC_B自由空间操作系统空间用户2 的程序 和数据地址0高端存储器用户2感觉到的内存操作系统空间用户2的程序 数据片段操作系统空间地址0高端存储器用户1的程序 数据片段用户3的程

7、序 数据片段用户2的程序 数据片段多个虚拟存储空间(举例:Linux 2.4.18)3GB低端高端内核内核内核内核用户态内核态中断/异常/ 系统调用虚拟存储器虚拟机对比:传统的操作系统终端终端终端虚拟机(举例:IBM VM)虚拟机系统虚拟机: 安全?虚拟机(举例:VMWare)内容提要v安全操作系统的设计原理 v安全操作系统的设计 隔离 安全内核 分层设计 环结构 v安全操作系统的开发 v安全操作系统关键技术的实现安全内核v操作系统中“核”的概念 “核”是操作系统的一部分,用于完成低级功能常规操作系统中,核的功能包括: l同步、进程间通信、中断处理等 v安全内核负责实现整个操作系统的安全机制

8、一般,安全内核被包含在操作系统内核内v为什么要将安全功能隔离在安全内核中?为什么要隔离出一个安全内核v优点 分隔 统一 可修改性 紧凑性 可验证性 覆盖面v安全内核:有什么缺点?主要是性能问题内容提要v安全操作系统的设计原理 v安全操作系统的设计 隔离 安全内核 分层设计 环结构 v安全操作系统的开发 v安全操作系统关键技术的实现分层设计分层操作系统层 层间接口在不同层上操作的模块内容提要v安全操作系统的设计原理 v安全操作系统的设计 隔离 安全内核 分层设计 环结构 v安全操作系统的开发 v安全操作系统关键技术的实现环结构 ring structurevMULTICSv参考ppt: cs.w

9、fu.edu/fulp/CSC790/access2.pdf cse.psu.edu/tjaeger/cse497b-s07/slides/cse497b- lecture-24-macsystems.pdf分层设计的进一步发展Multics中的段v两类:数据和程序 v段相关的权限 读、写、执行和添加 v保护环ring 编号063:环编号越大,特权越低 内核:0环与一个段相关联,而不是整个进程,称 “一个程序在环r中执行” v环跨越和环跨越fault v关于门gatea1a2r1r2r3a1a2 c1c2(1)(2)(3)(4)24246内容提要v安全操作系统的设计原理 v安全操作系统的设计

10、v安全操作系统的开发 安全操作系统开发方法 安全操作系统开发过程 安全操作系统的开发 v安全操作系统关键技术的实现内容提要v安全操作系统的设计原理 v安全操作系统的设计 v安全操作系统的开发 安全操作系统开发方法 安全操作系统开发过程 安全操作系统的开发 v安全操作系统关键技术的实现开发思路v1)设计时就考虑建立一个完整的安全OS包括硬件和软件 如MULTICS v2)先设计一个通用OS,然后加入安全机制 如HP CMW,基于HP UX,达到B1 如数据通用公司的DG UX/B1和DG UX/B2,基于DX UXv后者,安全级别不会超过B2 vB3及以上的SOS必须“从头做起”基于通用操作系统

11、之上开发安全操作系统v一般有三种方法:虚拟机法v在GOS与硬件之间增加一个新的分层:安全内 核 v安全内核提供的接口几乎与原有硬件等价 vGOS本省并未意识到已被安全内核控制v例如KVM 其硬件(IBM 370)支持虚拟机 其原有OS(VM/370)支持虚拟机v缺点: 由于对虚拟机的依赖,局限性太大改进/增强法v在GOS中,对内核和应用程序进行面向安全策 略的分析,加入安全机制,进行改造开发 v保持原有GOS的用户接口v优点: 代价小;用户接口不变;效率变化不大 v缺点: 受GOS的限制 难达B3仿真法v对GOS的内核进行修改,但不受限于GOSv在得到的安全内核之上提供一个仿真程序v缺点: 工

12、作量大 围绕安全策略,仿真困难改进/增强法举例基于某版本通用UNIX操作系统进行安全性开发的例子内容提要v安全操作系统的设计原理 v安全操作系统的设计 v安全操作系统的开发 安全操作系统开发方法 安全操作系统开发过程 安全操作系统的开发 v安全操作系统关键技术的实现安全操作系统开发过程安全操作系统的系统开发过程形式化方法,是非形 式化方法的一个补充形式化方法,要达到 完全,是很困难的半形式化方法一致性?操作系统安全性开发过程用非形式化论据论证系统实现、形式化描述和模型三者是一致的内容提要v安全操作系统的设计原理 v安全操作系统的设计 v安全操作系统的开发 安全操作系统开发方法 安全操作系统开发

13、过程 安全操作系统的开发 v安全操作系统关键技术的实现安全操作系统的开发v 从两个方面进行 安全功能 安全保证v 十项安全功能 标识与鉴别 自主访问控制 标记 强制访问控制 客体重用 审计 数据完整性 可信路径 隐通道分析 可信恢复v 三个方面的安全保证 TCB自身安全保护 l TSF保护 l 资源利用 l TCB访问 TCB设计和实现 l 配置管理、分发和操作、开 发指导性文档、生命周期支 持、测试、脆弱性评定 TCB安全管理内容提要v安全操作系统的设计原理 v安全操作系统的设计 v安全操作系统的开发 v安全操作系统关键技术的实现 自主访问控制的实现 强制访问控制的实现 最小特权的实现 安全

14、审计的实现 隐蔽信道分析自主访问控制的实现v访问控制表ACL v权能表CL在20世纪70年代,有很多权能系统的研究,但都不是很成功。 现代操作系统基本上都采用ACL方法主体 (Subject)客体(Object) File1File2File3 SunnyOwn/Read/WriteReadWrite CloneReadOwn/Read/WriteRead RichardReadWriteOwn/Read/Write访问控制矩阵示例访问控制表权能表访问控制示例实现举例(Linux)v每 个 文 件 都 有 一 个 ACL ?vACL列表的定义in-memory三元组filesystem rep

15、resentationACL的表项类型user:user_id:permissionsuser:permissionsACL的分类v访问ACL文件 目录 v缺省ACL only目录,并可选 用来决定此目录下新产生客体的ACL列表 l若无,则利用系统的umask值来决定系统设置新客体NObj的ACL的方法得到所在目录的default ACL若新的是目录,则设置文件的相掩(见后)ACL的保存v基本ACL(最小化ACL) Inode节点中 v扩展ACL 部分在Inode节点中部分在用户文件数据区中ACL_USER_OBJACL_GROUP_OBJACL_OTHER_OBJACL_USER_OBJAC

16、L_MASK_OBJACL_OTHER_OBJACL_USERACL_GROUP_OBJACL_GROUP可以指定零个或多 个ACL_USER项可以指定零个或多 个ACL_GROUP项2.6.26中ACL操作命令vgetfacl - 取得文件的ACL信息 setfacl - 设置文件的ACL信息 # getfacl passwd# file: passwd # owner: cvsadmin # group: cvsadmin user:rw- group:r- other:r- # setfacl -m u:allen:rw- passwd # getfacl passwd# file: passwd #

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 其它文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号