第四章 安全需求与安全策略.ppt
《第四章 安全需求与安全策略.ppt》由会员分享,可在线阅读,更多相关《第四章 安全需求与安全策略.ppt(76页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、安全操作系统,中国科学技术大学计算机系 陈香兰(051287161312) 助教:裴建国 Autumn 2008,第三章 安全需求与安全策略,在项目启动阶段进行安全设计,而不是在实现或维护阶段 后来加上的服务包和补丁会带来新的漏洞 容易陷入补丁、修复、再补丁的恶性循环 启动阶段目标: 定义系统的需求 确定系统的用户 起草一份针对系统的安全策略 这是这一阶段必不可少的部分,是构建一个可信系统的基础 安全需求安全策略,内容提要,安全需求 安全策略 安全策略的分类 访问控制策略 访问支持策略 DTE策略,4.1 安全需求4.1.1 安全需求的定义,所谓安全需求,就是在设计一个安全系统时期望得到的安全
2、保障。 不同的用户、不同的行业、不同的地点以及不同的社会制度有不同的安全需求 个人隐私、商业机密、军事安全、防假冒、防篡改、可审计等,举例:电子交易中的安全需求,目的:保证电子交易的安全 安全需求 保证交易双方身份的确定性需求 电子交易的双方,可能素昧平生、相隔千里 要能确认对方的身份 客户端是否是一个骗子?商店是否黑店? 因此,电子交易的前提是能方便而可靠地确认对方身份 信息的完整性需求 输入时可能会发生意外差错,或者故意欺诈 传输时可能会发生信息丢失、重复或者发生次序差异 因此,电子交易的基础是保持交易双方的信息完整性,信息的不可伪造性需求 电子交易中,交易双方的文件必须是不可伪造的,否则
3、将损害某一方的利益 这也是不可抵赖性的前提 信息的不可抵赖性需求 交易一旦达成,是不能被抵赖的,否则也将损害某一方的利益 交易过程中,各个环节都必须是不可抵赖的,一般化的安全需求,机密性需求,防止信息被泄漏给未授权的用户 自主安全策略、强制安全策略;需知原则 完整性需求,防止未授权用户对信息的修改 维护系统资源在一个有效的、预期的状态,防止资源被不正确、不适当的修改;维护系统不同部分的一致性;防止在涉及记账或审计的事件中“舞弊”行为的发生。 可记账性需求,防止用户对访问过某信息或执行过某一操作以否认 可用性需求,保证授权用户对系统信息的可访问性 “授权用户的任何正确的输入,系统会有相应的正确的
4、输出”,3.2 安全策略,安全策略:针对面临的威胁决定采用何种对策的方法 安全策略为针对威胁而选择和实行对策提供了框架,安全,不安全,3.1.1 定义“安全系统”定义,在计算机安全领域内,一个系统是“安全系统”是指该系统达到了当初设计时所制定的安全策略的要求。 在有限状态自动机下, 安全策略:是“这样一种状态,它将系统状态分为已授权/安全状态和未授权/非安全的状态” 一个“安全系统”:是“一个如果起始状态为授权状态,其后也不会进入未授权状态的系统”,策略语言,策略语言:用来表达安全性或完整性策略的语言 策略与实现无关,它描述对系统中实体或行为的约束 高级策略语言 使用抽象的方法表达对于实体的约
5、束 精确 低级策略语言 根据输入或者调用选项来表达对系统中的程序约束,高级策略语言,设:系统连接到Internet上。Web浏览器从远程站点下载程序并在本地执行。 Pandey和Hashii:针对Java程序的策略约束语言(Policy constraint language) 实体:类或方法类:一些被实施特定的访问约束的对象的集合方法:调用一个操作的方法的集合 实例化:主体s创建了某个类c的一个实例,“s -| c”调用:主体s1执行了另一个主体s2,“s1 | s2”,访问约束deny(s op x) when bop为“-|”或“| ”;x为另一个主体或类 条件b为真时,主体s不能对x执
6、行操作op省略x,表示禁止s对所有实体进行操作,继承:用来将各个访问约束关联起来。 例:deny(s -| c1.f) when b1deny(s -| c2.f) when b2 若c1是c2的子类,则正确的约束为:deny(s -| c1.f) when b1b2,例,策略规定下载的程序不能访问Unix的password文件。程序中访问本地文件的类和方法如下: class File public file(String name); public String getfilename(); public char read(); 则约束规则如下: deny(|file.read) when
7、 (file.getfilename()=“/etc/passwd”),例:类Socket定义为网络套接字,方法Network.numconns定义为当前活动的网络连接数 下面的访问约束禁止在达到100个连接数后再建立任何新的连接 deny(|Socket) when (Network.numconns =100) 这种策略语言忽略了策略的具体实现,因此是高级策略语言,DTEL语言,Domain Type Enforcement Language Boebert和Kain 将类型限制为两种:数据和指令 根据语言的类型,在实现一级上进行构造来表达约束 成为防火墙系统以及其他安全系统的组成要素 该
8、语言将低级语言和高级语言的元素结合起来,抽象地对配置加以描述,因此也属于高级策略语言,DTEL将每个客体与一个type关联,而每个主体与一个domain相关连 限制domain成员对某type的客体所能执行的操作 DTEL将Unix系统分为4个相互隔离的主体域 user_d:普通用户域 admin_d:管理员用户域 login_d:兼容DTE认证过程的域 daemon_d:系统后台守护进程的域,系统从daemon_d域开始运行(init进程) 当用户试图登录系统,init进程就创建一个login_d域的login进程 login进程控制user_d和admin_d DTE提出了如下5个客体型
9、sysbin_t:可执行文件 readable_t:可读文件 writeable_t:可写文件 dte_t:DTE数据 generic_t:由用户进程产生的数据,当init进程开始时,首先在daemon_d域中启动 对writeable_t中的任何客体,能创建c、读取r、写入w和搜索d 对sysbin_t中的任何客体,能够读取r、搜索d和执行x 对generic_t,readable_t,dte_t中的任何客体,能够读取和搜索 当init进程调用登录程序时,登录程序自动转换到login_d域中 表示为: domain daemon_d = (/sbin/init), (crwd-writabl
10、e_t), (rxd- sysbin_t), (rd-generic_t, dte_t, readable_t), (auto-login_d);,与写权限分离,若一个daemon_d的主体被攻破?,另外: domain admin_d = (/usr/bin/sh, /usr/bin/csh, /usr/bin/ksh), (crwxd-generic_t), (crwxd-readable_t, writable_t, dte_t, sysbin_t), (sigtstp-daemon_d); 还有 domain user_d = (/usr/bin/sh, /usr/bin/csh, /
11、usr/bin/ksh), (crwxd-generic_t), (rxd-sysbin_t), (crwd-writable_t), (rd-readable_t, dte_t);,若用户进程试图改变系统二进制文件?,注意:用户进程不能跳出用户域。,以及 domain login_d = (/usr/bin/login), (crwd-writable_t), (rd-readable_t, generic_t, dte_t), setauth, (exec-user_d, admin_d);,起初,系统始于daemon_d域 initial_domain = daemon_d; 用一系列的
12、assign语句来设置客体的初始型,如 assign r generic_t /; assign r writable_t /usr/var, /dev, /tmp; assign r readable_t /etc; assign r -s dte_t /dte; assign r -s sysbin_t /sbin, /bin, /usr/bin, /usr/sbin,-r,表示该型被递归的应用 -s,表示该型与名称绑定。(删除后重建,同名同型),有 序,添加对用户更改系统日志的限制,为日志文件定义一个新的型log_t,只有daemon_d的主体和新加的log_d的主体才能更改系统日志 d
13、omain daemon_d = (/sbin/init), (crwd-writable_t), (rxd-readable_t), (rd-generic_t, dte_t, sysbin_t), (auto-login_d, log_d); domain log_d = (/usr/sbin/syslogd), (crwd-log_t), (rwd-writable_t), (rd-generic_t, readable_t); assign -r log_t /usr/var/log; assign writable_t /usr/var/log/wtmp, /usr/var/log/
14、utmp;,syslogd是否能访问系统的可执行文件?,若用户试图操作日志客体?,低级策略语言,低级策略语言只是一系列命令的输入或参数设置,用来设置或检查系统中的约束 例如: 基于UNIX的窗口系统X11为控制台访问提供一种语言。该语言由一条命令xhost和指导此命令的语法组成,可以根据主机名(IP地址)控制访问。以下命令 xhost +groucho chico对系统进行设定,允许主机groucho连接控制台,但禁止来自主机chico的连接,又如: 文件系统的扫描程序采用规定的策略检查文件系统的一致性。该策略由按需要设定的数据库构成。每个扫描程序使用自己的小型语言来描述需要的设定。 扫描程序
15、tripwire假设了一种一致性策略。它记录初始状态。在以后运行时,将报告设置发生改变的文件。 策略由两个文件:tw.config和database组成。前者包括待检查属性的描述;后者为上次运行时属性的值。 数据库可读,但难以编辑。,安全策略的分类,基于应用场合的分类 军事安全策略/政府安全策略 以提供信息机密性为主要目的 也涉及完整性、可记账性以及可用性 商业安全策略 以提供完整性为主要目的 面向事务 也要涉及机密性、可记账性以及可用性,Lipner指出了商业安全策略中需注意的五个方面 用户不能写自己的程序 程序员可以在非产品的系统中开发和测试程序 必须要有一个特殊处理 上述特殊处理必须被控
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第四章 安全需求与安全策略 第四 安全 需求 安全策略
限制150内