操作系统讲义 20 第七章.1OS安全与保护学习资料_第1页
操作系统讲义 20 第七章.1OS安全与保护学习资料_第2页
操作系统讲义 20 第七章.1OS安全与保护学习资料_第3页
操作系统讲义 20 第七章.1OS安全与保护学习资料_第4页
操作系统讲义 20 第七章.1OS安全与保护学习资料_第5页
已阅读5页,还剩74页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

第七章操作系统的安全与保护

第七章操作系统的安全与保护7.1安全性概述7.2安全策略7.3安全模型7.4安全机制7.5安全操作系统设计和开发7.6Linux安全机制7.7Windows2003安全机制7.1安全性概述影响计算机系统安全性的因素?OS、网络、数据库。安全性和可靠性可靠性指系统正常持续运行的程度,目标为反故障;安全性是指不因人为疏漏或蓄谋作案而导致信息资源被泄漏、篡改和破坏,目标是反泄密。操作系统安全性的主要内容

1)安全策略:描述一组用于授权使用其计算机及信息资源的规则。

2)安全模型:它是对系统的安全需求,及如何设计和实现安全控制的一个清晰全面的理解和描述。

3)安全机制:实现安全策略描述的安全问题,它关注如何实现系统安全性,包括:认证机制(authentication)、授权机制(authorization)、加密机制(encryption)、审计机制(audit)、最小特权机制(leastprivilege)等。操作系统面临的安全威胁硬件软件数据网络和通信线路7.2安全策略7.2.1安全需求和安全策略7.2.2访问支持策略7.2.3访问控制策略7.2.1安全需求和安全策略

1安全需求和策略

1)机密性--为秘密数据提供保护方法及保护等级的一种特性。

2)完整性--数据和原始数据未发生变化,未遭到偶然或恶意修改或破坏时所具有的一种性质;

3)可记帐性--指要求能证实用户身份,可对有关安全活动进行完整记录、检查和审核,防止用户对访问过某信息或执行过某操作的否认。

4)可用性--防止非法独占资源。安全策略

什么是安全策略:用于授权使用其计算机及信息资源的规则,即有关管理、保护、分配和发布系统资源及敏感信息的规定和实施细则,一个系统可有一个或多个安全策略,其目的是使安全需求得到保障。安全策略分成两类:

1)军事安全策略--提供机密性。

2)商业安全策略--提供完整性。2可信计算基(1)可信计算基TCB--计算机系统内安全保护装置的总体。TCB组成:安全内核、特权程序和命令、处理敏感信息的程序、实施安全策略的文件、相关的固件、硬件和设备、机器诊断程序、安全管理员等。可信计算基(2)

引用监视程序工作原理

操作系统内核

应用进程资源引用控制数据库可信计算基

TCB引用监视程序用户空间内核空间所有系统调用必须经过安全检查可信计算基(3)安全功能模块TSF安全功能策略TSPTSF实现—

一是设置前端过滤器,它能防止入侵者非法进入系统;二是访问监督器,它能防止越权访问,两者都是在硬件基础上通过软件实现确定的安全策略,并提供所要求的附加服务。7.2.2访问支持策略访问支持策略的作用

1标识与鉴别

1)用户标识

2)用户鉴别

2可记帐性

3确切保证和连续保护

4客体重用

5隐蔽信道分析

6可信路径和可信恢复用作身份标识和鉴别的三类信息用户知道的信息--口令机制用户拥有的东西--智能卡用户的生物特征--生物学特征7.2.3访问控制策略

1访问控制属性(1)与访问控制策略相关的因素有:主体、客体和主客体属性

1)主体:普通用户信息属主系统管理员访问控制属性(2)2)客体:

(1)一般客体--文件、目录、数据和程序

(2)设备客体--磁盘、磁带、显示器、打印机、网络节点

(3)特殊客体--进程发信访问控制属性(3)

3)主客体属性:属性又称敏感标记主体属性:

(1)用户ID/用户组ID(2)用户访问许可级别

(3)用户需知属性

(4)角色

(5)权能列表访问控制属性(4)客体属性:(1)敏感性标记

(2)访问控制列表外部状态数据内容和上下文环境

4)用户与主体绑定应用进程是固定为特定用户服务,它在运行中代表该用户对客体资源进行访问,其权限应与所代表的用户相同,这一点可通过用户与主体绑定实现。系统进程是为所有用户提供服务,当应用进程进行系统调用时,它开始执行内核函数,这时系统进程代表该用户在执行,运行在核心态,拥有操作系统权限。2自主访问控制策略自主访问控制策略--根据系统中信息属主指定方式或默认方式,即按用户意愿来确定拥有的资源允许系统中哪些用户以何种权限共享。自主访问控制工具--自主访问控制策略可用三元组(S,O,A)表示,简化后生成权能表和访问控制表。自主访问控制策略的缺点3强制访问控制策略强制访问控制机制下,系统内的每个主体被赋予许可标记或访问标记,以表示他对敏感性客体的访问许可级别;系统内的每个客体被赋予敏感性标记,以反映该客体的安全级别。安全系统通过比较主、客体的相应标记来决定是否授予一个主体对客体的访问权限。7.3安全模型7.3.1安全模型概述7.3.2几种安全模型简介7.3.1安全模型概述(1)什么是安全模型?

安全模型是对安全策略所表达的安全需求精确、无歧义的抽象描述。在安全策略与安全机制之间提供关联,描述安全策略需用哪种机制满足及如何将特定机制应用于系统中,从而,实现某种安全策略所需的安全与保护。安全模型概述(2)安全模型分类?

非形式化安全模型仅模拟系统的安全功能,开发过程:从安全需求出发,推出功能规范,再实现安全系统,其间主要采用论证与测试技术;形式化安全模型使用数学模型精确地描述安全性及其在系统中使用的情况,开发途径:建立抽象模型,推出形式化规范,通过证明方法来实现安全系统。状态机模型开发步骤定义与安全有关的状态变量。定义安全状态需满足的条件。定义状态转移函数。证明转移函数能够维持安全状态。定义初始状态。依据安全状态的定义,证明初始状态是安全的。7.3.2几种安全模型简介1基于访问控制矩阵的安全模型

1)Lampson访问控制矩阵模型

2)Graham-Denning模型

3)Harrison-Ruzzo-Ullman模型

2基于格的安全模型

1)Bell-LaPadula模型

2)D.Denning信息流模型BLP多级安全模型什么是BLP模型?

适用于军事安全策略的操作系统多级安全模型。BLP模型的安全策略?1)自主安全策略--使用一个访问矩阵表示。

2)强制安全策略--简单安全特性和*特性。BLP模型两条基本规则

(1)简单安全规则:主体对客体进行读访问的必要条件是主体的安全级支配客体的安全级,即主体的安全级别不小于客体的保密级别,主体的范畴集包含客体的全部范畴。(或者说主体只能向下读,不能向上读。如将军可阅读中校的文件,但反之不允许。)(2)*特性规则:主体对客体进行写访问的必要条件是客体的安全级支配主体的安全级,即客体的保密级别不小于主体的保密级别,客体的范畴集包含主体的全部范畴。(或者说主体只能向上写,不能向下写。如中校可发消息给将军的信箱告知情况,但反之不允许。)Bell-LaPadula多级安全模型5E63C4DB21A安全等级

4321写读主体客体7.4安全机制7.4.1硬件安全机制7.4.2认证机制7.4.3授权机制7.4.4加密机制7.4.5审计机制7.4.1硬件安全机制1主存保护

1)不支持虚拟主存的系统

(1)下界和上界寄存器法

(2)基址和限长寄存器法

(3)主存块的锁与进程的钥匙配对法钥匙和主存锁主存锁0110块1101块0101块0110块0110PSW的其余部分钥匙进程IBMSystem/370钥匙和锁作为存储保护和授权机制主存被分割成2KB大小的主存块,每块由硬件另设7个二进位的存储控制键。(2位指示物理块是否被引用或修改,4位用作“主存锁”,1位称“取保护位”。)进程分得一个钥匙值,运行时钥匙放入PSW的存储控制键字段,处理器访问主存或DMA执行页面I/O时,把钥匙和锁进行匹配,决定是否允许访问。访问不符,会产生保护中断。进程使用1~15;操作系统使用0值,被允许访问整个主存,还有权修改和设置钥匙和主存锁。“取保护位”指示“主存锁”是适用于写还是读/写,钥匙与锁匹配时允许写操作;若“取保护位”为1,则执行读操作时也要检查钥匙和锁匹配与否,若“取保护位”为0,即使密钥和锁不匹配,也允许读访问,从而实现信息共享。2)支持虚拟存储器的系统虚存隔离技术—内核空间和用户空间隔离、虚实映射由系统实现、管理表对进程是私有的、表中增加访问类型字段。Windows分页虚存管理1)区分内核模式页面和用户模式页面:

2)区分页面类型:区分页面访问模式-不可访问、只读、读写、只能执行、执行和读、执行和读写。任何其他模式页面访问造成违法;

3)进程地址空间页面状态:有三种-空闲、保留和提交,被记录在对应页表项中。空闲页面是指尚未分配给进程的无效页面,任何访问试图都会产生无效页号错误;访问保留或提交页面会造成不同类型的缺页中断处理。3)沙盒技术什么是沙盒技术?--系统可限制调用函数的特权为调用进程所具有的授权的一小部分特权。如限制程序在一个小范围的主存区域(主存沙盒)中执行,访问沙盒外的数据及转向沙盒外的代码的企图都会产生保护中断,Java可定制的沙盒安全模型。保护用户免受恶意程序代码攻击,Java程序可在沙盒范围内做任何操作,但不能超越范围,对非可信Javaapplet,沙盒会限制它的活动,如读写本地磁盘、连接网络主机、建立新进程、下载相关代码等都作出限制。Java沙盒的基本组件有:类下载器、类文件验证器和安全管理器等。2运行保护用户空间系统空间应用进程系统进程处理器模式扩展操作系统的访问权限运行在内户态运行在核心态不可执行特权指令可执行特权指令VAX/VMS操作系统利用处理器的四种模式内核(kernel)态:执行操作系统内核,包括主存管理、中断处理、I/O操作等执行(executive)态:执行操作系统系统调用,如文件操作等。监管(supervisor)态:执行操作系统其余系统调用,如应答用户请求。用户(user)态:执行应用程序,如编译、编辑、链接等实用程序和各种应用程序。3I/O保护文件映射I/O--仅有授权的系统进程,如设备驱动程序和存储管理程序才能实现文件到主存区域的文件映射操作。I/O指令--I/O指令为特权指令。

7.4.2认证机制1用户身份的标识与鉴别标识与鉴别的目的--标识是识别用户身份,用户标识符与用户联系的过程称鉴别。认证机制应做好以下工作

1)TCB维护认证数据,2)TCB保护认证数据,

3)TCB维护、显示、保护所有活动用户、用户帐户信息;2UNIX/Linux系统的标识和鉴别系统的/etc/passwd文件含有全部系统掌握的用户登录信息,passwd中的记录为用冒号隔开的七个字段,例如:smith:xyz246ght:6759:4302:JameQsmith:/home/smith/:/bin/sh3Kerberos网络身份认证(1)客户机A上的进程欲通过网络通信来调用服务器B上的一个进程的服务。Kerberos提供身份认证服务AS及票证颁发服务TGS,允许客户和应用服务器在一个特定会话中传送验证消息到合作进程。客户必须向KDC的AS证明自己身份,才可接收分发给自己的票证,通过口令完成这项工作。客户会收到在整个会话期均有效的用于访问专用服务器(TGS)的票证,该专用服务器的任务是分发其他应用服务器的票证。Kerberos网络身份认证(2)密钥分发中心(KDC)

Kerberos体系结构2b2a3b3a1b1a

客户机A认证服务器(AS)应用服务器B票证颁发服务器(TGS)口令KAT+tg_ticketAUTTGS+tg_ticketKAB+sg_ticketAUTB+sg_ticketKAB+结果Kerberos议协(1)步1A从AS处得到TGS所需要的许可票证

1a登录时,A向AS提供口令,以证明其身份,AS在数据库中验证A的访问权限,并生成相应票证。1bAS给A返回一个消息E({KAT,tg_ticket},KA),KAT是A和TGS通信的会话密钥,tg_ticket是一个通往TGS的许可票证。此消息使用A的密钥KA加密,因此,只有A可以获得KAT和tg_ticket。Kerberos议协(2)步2A从TGS处得到B所需要的许可票证

2aA向TGS申请B的票证,A提供tg_ticket(步1中已获得)、应用服务器标识B和一个认证符AUTTGS。许可票证形式为:tg_ticket=E({A,TGS,KAT},KTGS),此消息使用TGS的密钥KTGS加密,只有TGS可以解密它,含义是:允许A从TGS处取得B的许可票证,且必须使用KAT进行认证。认证符AUTTGS的形式为AUTTGS=E(A,KAT),用于向TGS证明A是此申请请求的创建者。

2bTGS给A返回一个消息E({KAB,sg_ticket},KAT),其中,KAB是用于A和B通信的会话密钥,sg_ticket是通往B的许可票证。此消息使用会话密钥KAT加密,因此,只有A可以获得KAB和sg_ticket。Kerberos议协(3)步3A从B处得到所需要的服务3aA向B请求所需服务,A提供sg_ticket(步2中已获得)和认证符AUTB。服务许可票证形式为sg_ticket=E({A,B,KAB},KB),此消息使用B的密钥加密,仅能被B所解密,且具有含义:允许A从B处获得服务,并且A必须使用密钥KAB进行认证。认证符AUTB形式为AUTB=E(A,KAB),用于向B证明A是此申请请求的创建者。3bB执行所请求的服务,然后,将结果返回给A,如有需要,可用KAB对结果进行加密。Kerberos议协(4)KDC服务器必须是可信的,它拥有一份客户身份拷贝,知道如何加密只有客户才能够解密的信息,并能生成独特的会话密钥去加密客户和应用服务器之间的会话。提供给客户一个“容器”-许可票证,其中包含客户不能读取的信息,但可以传送到应用服务器验证。7.4.3授权机制1授权机制的功能和安全系统模型什么是授权?主体被认证后,确定它是否有权访问客体,只有在安全策略许可时才能访问允许它访问的客体。授权机制的主要功能:授权确定访问权限实施存取权限。认证和授权用户1认证机制授权机制主体1可访问的资源计算机系统主体1、主体2可访问的资源用户2主体1主体2安全系统模型安全策略访问监控器访问权限授权机制主体 客体O

S

2自主访问控制机制主体

客体file1file2file3P1read/write/executereadwriteP2readread/write/executereadP3readwriteread/write/execute访问控制矩阵示例1)基于行的自主访问控制机制(1)(1)权能表进程P1的CL:file1(rwx);file2(r--);file3(-w-);进程P3的CL:file1(r--);file2(-w-);file3(rwx);权能表示例……1)基于行的自主访问控制机制(2)(2)前缀表--对每个主体赋予前缀(profiles)表,包含受保护的客体名和主体对它的访问权限。(3)口令表--每个客体都有一个口令,主体在对客体访问前,必须向安全系统提供该客体的口令,如果正确便允许访问。2)基于列的自主访问控制机制file1(a)访问控制表P1(rwx)P2(r--)P3(r--)

…file1P1GROUP5rwx*GROUP5--xP3*r--**---(b)优化的访问控制表

ACL和优化ACL表3)自主访问控制机制实现举例(1)(1)“拥有者/同组用户/其他用户”模式UNIX/Linux的文件保护机制是一种简单的授权机制。主体有惟一的用户ID(uid),且属于某个用户组,用户组有惟一的用户组ID(gid),代表用户的进程继承用户的uid和gid,实际上是第一个为用户启动的shell进程,该shell进程及其所有子孙进程都继承这个uid和gid。系统中能对客体访问的主体被分为:客体属主、同组用户和其他用户。对每个客体的访问模式区分为:读(r)、写(w)和执行(x),这些信息构成一个简化的访问控制矩阵,允许客体的属主和特权用户为客体设定访问控制信息。当主体访问客体时,根据进程的uid、gid和客体的访问控制信息验证访问的合法性。自主访问控制机制实现举例(2)(2)“访问控制表ACL”和“拥有者/同组用户/其他用户”结合模式在安全操作系统UNIXSVR4.1中,采用“访问控制表ACL”和“拥有者/同组用户/其他用户”结合的实现方法。每个文件对应一个ACL;在通信机制IPC中,使每个消息队列/信号量集合/共享存储区对应一个ACL。自主访问控制机制实现举例(3)ACL操作:“授权”、“取消”“查阅”。ACL安全检验策略如下:若进程以x权限访问客体,则x必须在客体的ACL项中;若进程搜索路径,则它必须具有该路径中每个子目录的搜索权。例如,当进程访问文件时,调用自主访问控制机制,将进程uid、gid等用户标识信息和请求访问方式mode,与ACL中的ACL项相比较,检验是否允许进程以mode方式访问该文件。3强制访问控制机制(1)1)强制访问控制的概念强制访问控制用于将系统中的信息分密级和范畴进行管理,保证用户只能够访问那些被标明能够由他访问的信息的一种访问约束机制。系统中每个主体(进程),每个客体(文件、消息队列、信号量集、共享存储区等)都被赋予相应的安全属性,这些安全属性不能改变,它由安全系统自动地按严格的规则设置或由安全管理员管理。当主体访问一个客体时,调用强制访问控制机制,根据主体的安全属性和访问方式,比较它和客体的安全属性,确定是否允许主体对客体进行访问。

强制访问控制机制(2)对系统的主体和客体分别赋予与其身份相对应的安全属性的外在表示-安全标签,它有两部分组成:{安全类别:范畴}。

(1)安全类别-有等级的分类安全级别:也称密级,系统用来保护信息(客体)的安全程度。敏感性标签:客体的安全级别的外在表示,系统利用此敏感性标签来判定进程是否拥有对此客体的访问权限。许可级别:进程(主体)的安全级别,用来判定此进程对信息的访问程度。许可标签:进程的安全级别的外在表示,系统利用进程的安全级别来判定它是否拥有对要访问的信息的相应权限。

强制访问控制机制(3)(2)范畴-无等级概念范畴是该安全级别信息所涉及的部门,用来判定该用户是否属于信息对应的部门。例如,在公司内,可建立信息安全类别:ConfidentialRestricted(技术信息)、Restricted(内部信息)和Unrestricted(公开信息)。公司内的范畴可以为:Accounting(财务部)、Marketing(市场部)、Advertising(广告部)、Engineering(工程部)和Research&Development(研发部)。

2)强制访问控制的实现(1)安全标签的实现基于多级安全策略,系统的访问控制机制的实现要基于以下内容:对每个客体赋予一个敏感性标签,此标签标明系统用来保护此信息的安全程度(级别);对每个主体(进程)赋予一个许可标签,此标签用来指定此进程的可信程度;系统通过基于主体(进程)的许可标签和客体(信息)的敏感性标签来判定该进程是否拥有对该信息相应的访问权限;系统保证对所有I/O的信息都能够正确地标记反映其安全级别的敏感性标签。安全标签实现要点类别部分:由于类别部分反映的是一种等级关系,故又称安全等级或密级,在安全类别中密级按线性顺序排列,例如,公开<机密<秘密<绝密,在实现时以数字从小到大依次递增表示其安全等级。范畴部分:范畴部分由无等级概念的元素组成,表示一个清晰的信息领域,范畴集之间不存在等级,但具有包含或被包含关系,也可以是无关的;在实现中范畴用数字代表,范畴集是数字的集合表示。安全标签A和B之间存在四种关系A支配B:当且仅当A的安全等级大于等于B的安全等级,A的范畴集包含B的范畴集,即B的范畴集是A的范畴集的子集。B支配A:当且仅当B的安全等级大于等于A的安全等级,B的范畴集包含A的范畴集,即A的范畴集是B的范畴集的子集。A等于B:当且仅当A的安全等级等于B的安全等级,A的范畴集中的任何一项也是B的范畴集中的一项,反之亦然,也即A支配B,B支配A。A与B无关:A安全级的范畴集不包含B安全级的范畴集,同时B安全级的范畴集不包含A安全级的范畴集。(2)基于安全标签的强制访问控制进程D许可标签:{confidential:a、b、c}进程A许可标签:{secret:a、b、c}进程B许可标签:{topsecret:a、b、c}进程C许可标签:{topsecret:d、e、f}filex敏感性标签:{secret:a、b、c}写许可读许可读许可写拒绝写拒绝读拒绝读拒绝写许可基于安全标签的强制访问控制3)强制访问控制防止特洛伊木马强制访问控制的场合下,对于违反强制访问控制的特洛伊木马,可防止它取走信息。例如,*特性能阻止正在机密级上运行的进程中的特洛伊木马把机密信息写入一个公开的文件内,因为用机密进程写入的文件的安全级必须至少是机密级;再如,公司对系统中自己拥有的信息指定强制访问范畴,只有公司雇员才可能进入这个范畴,如果它的一个雇员使用特洛伊木马,他不可能将该公司的信息传递到这个范畴以外的地点,但在这个范畴里,信息可在各用户间自由传递。4特殊授权机制-最小特权原理1)最小特权原理

POSIX最小特权原理,(1)在硬件特权方面,当处理器不是以特权模式或特权域方式运行时,必须限制特权机器指令的使用,限制对某些存储区域的访问;(2)在软件特权方面,由操作系统赋予某些程序的恰好够用的特权,这些特权允许它超越在应用程序上实施的常规访问控制,或者调用所选择的函数,具有多种类型软件特权的系统允许在最小特权方面实施细粒度控制;(3)进程在系统中代表用户和系统管理员的行为,不应获得多于完成它们工作所需的特权。2)最小特权管理的实现用户特权:将特权集分别映射到不同管理用户身上:(1)系统安全管理员:

(2)系统审计员:

(3)系统操作员:

(4)安全操作员:

(5)网络管理员:3)最小特权管理的实现进程特权和文件特权:对可执行文件赋予相应特权集,这样可让非特权用户完成部分特权但又不具有其它特权。对进程可根据其执行的程序和所代表的用户,赋予相应特权集。当进程请求特权操作时(如安装文件系统),将调用特权管理机制,判定该进程的特权集中是否具有该操作特权。这样特权不再和用户标识相关,即不是基于用户ID,它直接与进程及可执行文件相关联。新进程继承的特权既有进程的特权,也有所执行的文件的特权,这种机制一般称“基于文件的特权机制”,其最大优点是特权的细化,它的继承性提供了执行进程可增加特权的能力。7.4.4加密机制(1)

数据加密模型明文密文原始明文加密算法解密算法加密密钥解密密钥加密机制(2)

数据加密概念加密与解密明文与密文加密函数(算法)与解密函数(算法)密码系统对信息应提供功能:秘密性、鉴别性、完整性和防抵赖。2基于密钥的算法分类1)对称算法加密/解密密钥是相同的,加密密钥能够从解密密钥中推算出来,反之也成立。

2)公开密钥算法用作加密的密钥不同于用作解密的密钥,解密密钥不能根据加密密钥计算出来。加密密钥可公开,其他人能用加密密钥来加密信息,但只有用相应解密密钥才能解密信息,3计算机密码算法

1)数据加密标准DES--美国标准、对称算法、安全性好、密钥管理难以满足开放性要求。

2)公开密钥算法RSA

基本技术如下:网中每个节点产生一对密钥,用来对它接收的消息加密和解密;每个系统都把加密密钥放在公共文件中,这是公开密钥,另一个设为私有

温馨提示

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

评论

0/150

提交评论