《操作系统安全机制课件》由会员分享,可在线阅读,更多相关《操作系统安全机制课件(81页珍藏版)》请在金锄头文库上搜索。
1、 第二章第二章 操作系统安全机制操作系统安全机制江江苏大学大学计算机学院算机学院操作系统安全机制操作系统安全的主要目标访问控制访问控制身份鉴别身份鉴别监督系统运行的安全性监督系统运行的安全性保证系统的安全性和完整性保证系统的安全性和完整性操作系统安全机制普遍的安全机制信任的功能性信任的功能性时间检测时间检测审计跟踪审计跟踪安全恢复安全恢复操作系统安全机制2.1标识与鉴别机制用户标识(identification):用来标明用户身份,确保用户的惟一性和可辨认性的标志,一般选用用户名称和用户标识符(UID)来标明一个系统用户,名称和标识符均为公开的明码信息。用户标识是有效实施其他安全策略,如用户数
2、据保护和安全审计的基础。通过为用户提供标识,TCB能使用户对自己的行为负责。操作系统安全机制用户鉴别用户鉴别(authentication):用特定信息对用户身份、设备和其他实体的真实性进行确认,用于鉴别的信息是非公开的和难以仿造的,如口令(也称密钥)。用户鉴别是有效实施其他安全策略的基础。操作系统安全机制三类信息用作身份标识和鉴别用户知道的信息用户拥有的东西用户的生物特征利用其中的任何一类都可进行身份认证,但若能利用多类信息,或同时利用三类中的不同信息,会增强认证机制的有效性和强壮性。操作系统安全机制2.1.2 密码口令机制简单易行,但最为脆弱口令管理系统管理员的职责用户的职责口令实现要点操
3、作系统安全机制2.1.3 生物鉴别方法用户提供自己独有的生理或行为上的特点常见的指纹识别操作系统安全机制2.2 访问控制用户进程是固定为某特定用户服务的,它在运行中代表该用户对客体资源进行访问,其权限应与所代表的用户相同,这一点可通过用户与主体绑定实现。操作系统安全机制用户与主体绑定系统进程是动态地为所有用户提供服务的,它的权限随着服实对象的变化而改变,这需要将用户的权限与为其服务的进程的权限动态地相关联。这也就是说,一个进程在不同时刻对一个客体有不同的访问权限,取决于它当时所执行的任务。当进程在执行正常的用户态应用程序时(用户进程),它所拥有的权限与其代表的用户有关;当进程进行系统调用时,它
4、开始执行内核函数(系统进程),此时运行在核心态,拥有操作系统权限。操作系统安全机制授权机制的功能经典的计算机系统两种机制的关键点,当一个用户试图访问计算机系统时,认证机制首先标识与鉴别用户身份用户进入系统后,再由授权机制检查其是否拥有使用本机资源的权限及有多大的访问权限。授权机制的功能是授权和存取控制,其任务是:授权,确定给予哪些主体存取哪些客体的权力。确定存取权限,通常有:读、写、执行、删除、追加等存取方式。实施存取权限。操作系统安全机制认证和授权 用户1认证机制授权机制主体1主体1可访问的资源计算机系统主体2用户2主体1、主体2可访问的资源操作系统安全机制2.2.2 自主访问控制策略本策略
5、根据系统中信息属主指定方式或默认方式、即按照用户的意愿来确定用户对每一个客体的访问权限,这一点上对信息属主是“自主的”。这样一来,它能提供精细的访问控制策略,能将访问控制粒度细化到单个用户(进程)。按照系统访问控制策略实现的访问控制机制,能够为每个命名客体指定命名用户和用户组,并规定他们对客体的访问权限,没有访问权限的用户,只允许由授权用户指定其对客体的访问权。操作系统安全机制矩阵模型:矩阵模型:设S为全体主体的集合,Ss 1,s 2,s m 。设O为全体客体的集合,Oo 1,o 2,o n 。设R为全体权力的集合,Rr 1,r 2,r l 。记权力矩阵为: a 1 1 ,a 1 2 ,a 1
6、 n S 1 a 2 1 ,a 2 2 ,a 2 n S2 A =o 1,o 2,o n a m 1 ,a m 2 ,a m n Sm 自主访问控制模型自主访问控制模型操作系统安全机制矩阵的每一行对应一个主体,每一列对应一个矩阵的每一行对应一个主体,每一列对应一个客体。行与列交叉点上的元素客体。行与列交叉点上的元素a ij ij 表示主体表示主体si i 对对客体客体oj j 所拥有的所有权力的集合。所拥有的所有权力的集合。当当主主体体si i 要要对对客客体体oj j 进进行行访访问问时时,访访问问控控制制机机制制检检查查aij ij ,看看主主体体si i 是是否否具具有有对对客客体体oj
7、 j 进进行行访访问问的的权权力力,以以决决定定主主体体si i 是是否否可可对对客客体体oj j 进进行行访问,以及进行什么样的访问。访问,以及进行什么样的访问。自主性自主性 客客体体的的属属主主有有权权将将其其客客体体的的访访问问权权力力授授予予其其它它主体,或主体,或收回收回。自主访问控制模型自主访问控制模型操作系统安全机制矩阵模型的实现矩阵模型的实现基于矩阵列基于矩阵列- 对对需需要要保保护护的的客客体体附附件件一一个个访访问问控控制制表表,标明各拥有权力的主体的标识与权限。标明各拥有权力的主体的标识与权限。- UNIX,LINUX,NT基于矩阵的行基于矩阵的行-在每个主体上附件一个可
8、访问的客体的明在每个主体上附件一个可访问的客体的明细表:细表: 权力表权力表 口令口令自主访问控制模型自主访问控制模型操作系统安全机制1. 基于行的自主存取控制机制在每个主体上都附加一个该主体可访问的客体明细表,根据表中信息的不同又可分成3种:操作系统安全机制1) 权能表 进程ID1的CL:文件X(rw-);程序Y(r-);进程IDn的CL:内存段Z(rw-);程序Y(r-x);用户可以把全能表拷贝给其他用户,也可以从其他用户取回用户可以把全能表拷贝给其他用户,也可以从其他用户取回操作系统安全机制2)前缀表对每个主体赋予前缀(Profiles)表,它包含受保护的客体名和主体对它的访问权限,每当
9、主体访问某客体时,自主存取控制机制将检查主体的前缀是否具有它所请求的访问权。 权限管理复杂操作系统安全机制3)口令表(Passwords List)在基于口令表的自主存取控制机制中,每个客体都有一个口令,主体在对客体访问前,必须向安全系统提供该客体的口令,如果正确便允许访问。 操作系统安全机制2. 基于列的自主存取控制机制存取控制表ACL(Access Control List)是十分有效的自主访问控制机制,被许多系统采用。此机制如下实现,在每个客体上都附加一个可访问它的主体的明细表,表示存取控制矩阵,表中的每一项都包括主体的身份和主体对该客体的访问权限。操作系统安全机制ACL和优化ACL P
10、ID1,r-xPID2,rw-PID3,-xPID4,rwx客体Y (a)存取控制表 文件XPID1 GROUP5 rwx* GROUP5 -xPID3 * -* * r- (b)优化的存取控制表 操作系统安全机制3. 自主存取控制机制实现举例1)“拥有者/同组同户/其他用户”模式2)“存取控制表ACL”和“拥有者/同组同户/其他用户”结合模式在安全操作系统UNIX SVR4.1中,采用“存取控制表ACL”和“拥有者/同组同户/其他用户”结合的实现方法,ACL只对于“拥有者/同组同户/其他用户”无法分组的用户才使用。 操作系统安全机制2.2.3 强制访问控制策略在强制访问控制机制下,系统内的每
11、个用户或主体被赋予一个许可标记或访问标记,以表示他对敏感性客体的访问许可级别;同样,系统内的每个客体被赋予一个敏感性标记(sensitivity label),以反映该客体的安全级别。安全系统通过比较主、客体的相应标记来决定是否授予一个主体对客体的访问请求权限。操作系统安全机制实现多级安全访问控制机制必须对系统的主体和客体分别赋予与其身份相对称的安全属性的外在表示-安全标签,它有两部分组成: 安全类别:范畴操作系统安全机制(1) 安全类别有等级的分类安全级别:也称密级,系统用来保护信息(客体)的安全程度。 敏感性标签:客体的安全级别的外在表示,系统利用此敏感性标签来判定一进程是否拥有对此客体的
12、访问权限。许可级别:进程(主体)的安全级别,用来判定此进程对信息的访问程度。许可标签:进程的安全级别的外在表示,系统利用进程的安全级别来判定此进程是否拥有对要访问的信息的相应权限。操作系统安全机制(2) 范畴无等级概念范畴是该安全级别信息所涉及的部门。操作系统安全机制公司内可以建立信息安全类别Confidential Restricted(技术信息)、 Restricted(内部信息)Unrestricted(公开信息);军事部门的信息安全类别Top Secret(绝密)、Secret(秘密)、Confidential(机密)和Unclassified(公开) 操作系统安全机制公司内的范畴Ac
13、counting(财务部)、Marketing(市场部)、Advertising(广告部)、Engineering(工程部)和Reserch&Development(研发部)。在公司内,财务部经理与市场部经理虽然级别相同(都是经理),但由于两人分属不同部门(财务部负责财务,市场部负责市场),从而,分 属 两 个 不 同 的 范 畴 ( Accounting、Marketing),故市场部经理是不能够访问财务部经理的信息的。操作系统安全机制2.2.4 基于角色的访问控制 BRACBRAC介绍介绍h由由ISTIST的的FerraioloFerraiolo等人在等人在9090年代提出。年代提出。hN
14、ISTNIST成立专门机构进行研究。成立专门机构进行研究。h9696年提出一个较完善的基于角色的访问年提出一个较完善的基于角色的访问控制参考模型控制参考模型RBAC96RBAC96。操作系统安全机制 BRACBRAC的基本思想的基本思想根据用户在一个组织中担任的角色来确根据用户在一个组织中担任的角色来确定对其所的授权。定对其所的授权。BRACBRAC是强制访问模型,不是是强制访问模型,不是DACDAC虽然一个用户担任一个角色后,便可以虽然一个用户担任一个角色后,便可以拥有该角色的权限,但是他不能将权限拥有该角色的权限,但是他不能将权限转授给别人。转授给别人。操作系统安全机制 BRAC BRAC
15、的基本概念的基本概念hRBACRBAC的的基基本本思思想想是是根根据据用用户户所所担担任任的的角角色色来来决决定定用用户户的的在系统中的访问权限。在系统中的访问权限。h一一个个用用户户必必须须扮扮演演某某种种角角色色,而而且且还还必必须须激激活活这这一一角角色色,才能对一个对象进行访问或执行某种操作。才能对一个对象进行访问或执行某种操作。安全管理员用户角色/权限指定指定访问或操作激活激活操作系统安全机制 BRAC BRAC的基本概念的基本概念h用户(用户(UserUser) 访问计算机资源的主体。访问计算机资源的主体。用户集合为用户集合为 U U. .h角色(角色(rolerole) 一种岗位
16、,代表一种资格、权利和责任。一种岗位,代表一种资格、权利和责任。角色集合为角色集合为 R. R.h权限(权限(permissionpermission) 对客体的操作权力。对客体的操作权力。权限集合为权限集合为 P. P.h用户分配(用户分配(User AssignmentUser Assignment) 将用户与角色关联。将用户与角色关联。 用户分配集合为用户分配集合为UA=(u,r)|uU, rR . UA=(u,r)|uU, rR . 用户用户 u u与角色与角色 r r关联后,将拥有关联后,将拥有 r r的权限。的权限。操作系统安全机制 BRAC BRAC的基本概念的基本概念h权限分配
17、(权限分配(Permission AssignmentPermission Assignment) 将角色与权限关联。将角色与权限关联。 权限分配集合为权限分配集合为PA=(p,r)|pP, rR .PA=(p,r)|pP, rR . 权限权限 p p与角色与角色 r r关联后,角色关联后,角色 r r将拥有权限将拥有权限 p p。h激活角色(激活角色(Actve RoleActve Role) 角色只有激活才能起作用,否则不起作用。角色只有激活才能起作用,否则不起作用。 通过会话激活角色。通过会话激活角色。h会话(会话(SessionSession) 用户要访问系统资源时,必须先建立一个会话
18、。用户要访问系统资源时,必须先建立一个会话。 一次会话仅对应一个用户。一次会话仅对应一个用户。一次会话可激活几个角色。一次会话可激活几个角色。操作系统安全机制 BRAC BRAC的基本机制的基本机制hRBACRBAC的授权机制:的授权机制: a. a.分为两步:分为两步: 将用户分配给角色将用户分配给角色 将访问权限分配给角色将访问权限分配给角色 b. b.授权要满足安全约束条件。授权要满足安全约束条件。 最小特权原则最小特权原则 职责分离原则职责分离原则 角色互斥原则角色互斥原则 角色激活限制原则角色激活限制原则 c c. .角色分级,高级角色可以继承低级角色的访问权限。角色分级,高级角色可
19、以继承低级角色的访问权限。操作系统安全机制 BRAC BRAC的基本机制的基本机制hRBACRBAC用户与角色的关系:(多对多关系)用户与角色的关系:(多对多关系) a. a.一个用户可担当多个角色一个用户可担当多个角色 b. b.一个角色可分配给多个用户一个角色可分配给多个用户h角色和权限之间的关系:角色和权限之间的关系:(多对多的关系)(多对多的关系) a. a.一个角色可以拥有多个访问权限,一个角色可以拥有多个访问权限, b. b.不同的角色也可以拥有相同的权限。不同的角色也可以拥有相同的权限。h角色和角色的关系:角色和角色的关系:(分级关系)(分级关系) 高级角色可以继承低级角色的访问
20、权限。高级角色可以继承低级角色的访问权限。操作系统安全机制 BRAC BRAC的基本机制的基本机制l角色分级角色分级 a.a.角色分级是组织角色的一种自然方法角色分级是组织角色的一种自然方法。 b.b.角角色色分分级级的的结结果果将将导导致致一一个个角角色色可可以以直直接接或或间间接接地地继承另一角色的访问权限。继承另一角色的访问权限。 c. c.直接继承:相邻角色之间的继承。直接继承:相邻角色之间的继承。 d.d.间接继承:非相邻角色之间的继承。间接继承:非相邻角色之间的继承。 操作系统安全机制角色分级角色分级(role hierarchy)(role hierarchy)继承关系继承关系
21、高级角色中间角色高级角色低级角色低级角色中间角色中间角色高级角色操作系统安全机制 BRAC BRAC的基本机制的基本机制l安全约束安全约束约束是设计高级安全策略的一个强有力的机制。约束是设计高级安全策略的一个强有力的机制。各个环节施加安全约束,以实现不同的安全策略。各个环节施加安全约束,以实现不同的安全策略。可以定义在系统层,也可以定义在应用层。可以定义在系统层,也可以定义在应用层。可以是事件触发的,也可以不是事件触发的。可以是事件触发的,也可以不是事件触发的。n职责分离约束职责分离约束合合理理划划分分任任务务和和相相关关权权限限,以以保保证证多多用用户户协协同同工工作作的的安全性。安全性。如
22、,公检法三权分立,互相配合,又互相监督。如,公检法三权分立,互相配合,又互相监督。操作系统安全机制n角色互斥约束角色互斥约束如如果果一一组组角角色色是是互互斥斥的的,那那么么一一个个用用户户或或同同一一个个访访问权限只能被分配给其中的一个角色。问权限只能被分配给其中的一个角色。 利用角色互斥约束可实现职责分离。利用角色互斥约束可实现职责分离。 例如,一个人不能又当裁判员又当运动员。例如,一个人不能又当裁判员又当运动员。n最小特权约束最小特权约束只给角色分配完成某工作所需的最小权力。只给角色分配完成某工作所需的最小权力。n角色激活约束角色激活约束 激激活活数数约约束束 限限制制一一个个角角色色同
23、同时时授授权权和和激激活活的的数数目目。如如总总经经理理只有只有1 1个。个。角色激活时间约束角色激活时间约束 限制一个角色激活的时间。如岗位任期制。限制一个角色激活的时间。如岗位任期制。 操作系统安全机制 BRAC96模型模型hBRAC96模型包括模型包括4个层次:个层次:hBRAC0:基础模型:基础模型hBRAC1:在:在BRAC0的基础上增加了角色分级的基础上增加了角色分级hBRAC2:在:在BRAC0的基础上增加了角色和权限约束的基础上增加了角色和权限约束hBRAC3:集成了:集成了BRAC1 和和BRAC2h h BRAC3 BRAC3 加强模型加强模型加强模型加强模型BRAC0 B
24、RAC0 基础模型基础模型基础模型基础模型BRAC2 BRAC2 高级模型高级模型高级模型高级模型高级模型高级模型高级模型高级模型 BRAC1 BRAC1操作系统安全机制 BRAC96模型模型用户U角色B权限P用户分配用户分配权限分配权限分配分级安全约束会话操作系统安全机制 BRAC BRAC模型的优缺点模型的优缺点h便便于于授授权权管管理理。如如系系统统管管理理员员需需要要修修改改系系统统设设置置等等内内容容时时,必必须须有有几几个个不不同同角角色色的的用用户户到到场场方能操作,增强了安全性。方能操作,增强了安全性。h便于处理工作分级。如,文件等资源分级管理。便于处理工作分级。如,文件等资源
25、分级管理。h利利用用安安全全约约束束,容容易易实实现现各各种种安安全全策策略略,如如最最小特权,职责分离等。小特权,职责分离等。h便于任务分担,不同角色完成不同的任务。便于任务分担,不同角色完成不同的任务。操作系统安全机制MAC和和DAC的应用的应用在在C C级操作系统中应用级操作系统中应用MACMAC访问控制模型访问控制模型在在B B级以上操作系统中将级以上操作系统中将MACMAC和和DACDAC联合应联合应用用 访问请求MAC检查DAC检查拒绝访问失败通过通过接受访问操作系统安全机制2.3 最小特权管理最小特权原则是系统安全中最基本的原则之一。所谓最小特权(Least Privilege)
26、,指的是在完成某种操作时所赋予网络中每个主体(用户或进程)必不可少的特权。最小特权原则,则是指应限定网络中每个主体所必须的最小特权,确保可能的事故、错误、网络部件的篡改等原因造成的损失最小。最小特权原则一方面给予主体必不可少的特权,这就保证了所有的主体都能在所赋予的特权之下完成所需要完成的任务或操作;另一方面,它只给予主体必不可少的特权,这就限制了每个主体所能进行的操作。操作系统安全机制最小特权原则要求每个用户和程序在操作时应当使用尽可能少的特权,而角色允许主体以参与某特定工作所需要的最小特权去签入(Sign)系统。被授权拥有强力角色(Powerful Roles)的主体,不需要动辄运用到其所
27、有的特权,只有在那些特权有实际需求时,主体才去运用它们。如此一来,将可减少由于不注意的错误或是侵入者假装合法主体所造成的损坏发生,限制了事故、错误或攻击带来的危害。它还减少了特权程序之间潜在的相互作用,从而使对特权无意的、没必要的或不适当的使用不太可能发生。这种想法还可以引申到程序内部:只有程序中需要那些特权的最小部分才拥有特权。 操作系统安全机制在安全操作系统中,为了维护系统的正常运行及其安全策略库,管理员往往需要一定的特权直接执行一些受限的操作或进行超越安全策略控制的访问。特权是超越访问控制限制的能力,它和访问控制结合使用,提高了系统的灵活性。操作系统安全机制举例对可执行文件赋予相应的特权
28、集对于系统中的每个进程,根据其执行的程序和所代表的用户的用户,赋予相应的特权集。请求特权操作,将调用特权管理机制,判断该进程的特权级集中是否有这种操作特权。操作系统安全机制2.4可信通路是用户能够借以直接同可信计算基是用户能够借以直接同可信计算基TCB通信的一种机制。通信的一种机制。保障用户和内核的可信通信。保障用户和内核的可信通信。实现方法:实现方法:n两台终端,一台做通常工作,一台用作与内核的硬两台终端,一台做通常工作,一台用作与内核的硬连接连接n仍然用同种终端,通过发信号(安全注意键仍然用同种终端,通过发信号(安全注意键SAK)给核心给核心操作系统安全机制2.5 安全审计安全审计就是对系
29、统中有关安全的活动进行记录、安全审计就是对系统中有关安全的活动进行记录、检查及审核。检查及审核。主要目的:检测和阻止非法用户对计算机系统的主要目的:检测和阻止非法用户对计算机系统的入侵,并显示合法用户的误操作。入侵,并显示合法用户的误操作。审计机制是通过对日志的分析来完成的。审计机制是通过对日志的分析来完成的。日志就是记录的事件或统计数据,都能提供关于日志就是记录的事件或统计数据,都能提供关于系统使用及性能方面的信息。系统使用及性能方面的信息。主要作用:主要作用:n发现不安全因素,及时报警发现不安全因素,及时报警n对违反安全规则的行为或企图提供证据对违反安全规则的行为或企图提供证据n对已受攻击
30、的系统,可以提供信息帮助进行损失评估和系统恢复对已受攻击的系统,可以提供信息帮助进行损失评估和系统恢复操作系统安全机制审计系统的组成审计系统的组成操作系统安全机制日志记录的原则日志记录的原则 在理想情况下,日志应该记录每个可能的事件,在理想情况下,日志应该记录每个可能的事件,在理想情况下,日志应该记录每个可能的事件,在理想情况下,日志应该记录每个可能的事件,以便分析发生的所有事件,并恢复任何时刻进行的以便分析发生的所有事件,并恢复任何时刻进行的以便分析发生的所有事件,并恢复任何时刻进行的以便分析发生的所有事件,并恢复任何时刻进行的历史情况。但这样存储量过大,并且将严重影响系历史情况。但这样存储
31、量过大,并且将严重影响系历史情况。但这样存储量过大,并且将严重影响系历史情况。但这样存储量过大,并且将严重影响系统的性能。因此。日志的内容应该是有选择的。一统的性能。因此。日志的内容应该是有选择的。一统的性能。因此。日志的内容应该是有选择的。一统的性能。因此。日志的内容应该是有选择的。一般情况下日志的记录应该满足如下的原则:般情况下日志的记录应该满足如下的原则:般情况下日志的记录应该满足如下的原则:般情况下日志的记录应该满足如下的原则:(1 1) 日志应该记录任何必要的事件,以检测已知的攻击模式。日志应该记录任何必要的事件,以检测已知的攻击模式。日志应该记录任何必要的事件,以检测已知的攻击模式
32、。日志应该记录任何必要的事件,以检测已知的攻击模式。(2 2) 日志应该记录任何必要的事件,以检测异常的攻击模式。日志应该记录任何必要的事件,以检测异常的攻击模式。日志应该记录任何必要的事件,以检测异常的攻击模式。日志应该记录任何必要的事件,以检测异常的攻击模式。(3 3) 日志应该记录关于记录系统连续可靠工作的信息。日志应该记录关于记录系统连续可靠工作的信息。日志应该记录关于记录系统连续可靠工作的信息。日志应该记录关于记录系统连续可靠工作的信息。操作系统安全机制日志的内容日志的内容审计功能的启动和关闭审计功能的启动和关闭使用身份鉴别机制使用身份鉴别机制将客体引入主体的地址空间将客体引入主体的
33、地址空间删除客体删除客体管理员、安全员、审计员和一般操作人员的操作管理员、安全员、审计员和一般操作人员的操作其他专门定义的可审计事件其他专门定义的可审计事件 日志系统根据安全要求记录上面事件的部分或全部。日志系统根据安全要求记录上面事件的部分或全部。日志系统根据安全要求记录上面事件的部分或全部。日志系统根据安全要求记录上面事件的部分或全部。通常,对于一个事件,日志应包括事件发生的日期和时通常,对于一个事件,日志应包括事件发生的日期和时通常,对于一个事件,日志应包括事件发生的日期和时通常,对于一个事件,日志应包括事件发生的日期和时间、引发事件的用户(地址)事件、和源目的的位置、间、引发事件的用户
34、(地址)事件、和源目的的位置、间、引发事件的用户(地址)事件、和源目的的位置、间、引发事件的用户(地址)事件、和源目的的位置、事件类型、事件成败等。事件类型、事件成败等。事件类型、事件成败等。事件类型、事件成败等。操作系统安全机制记录机制 不同的系统可采用不同的机制记录日志。但大多情况可不同的系统可采用不同的机制记录日志。但大多情况可不同的系统可采用不同的机制记录日志。但大多情况可不同的系统可采用不同的机制记录日志。但大多情况可用系统调用用系统调用用系统调用用系统调用SyslogSyslog来记录日志,也可用来记录日志,也可用来记录日志,也可用来记录日志,也可用SNMPSNMP记录。下面记录。
35、下面记录。下面记录。下面简单介绍下简单介绍下简单介绍下简单介绍下SyslogSyslog: SyslogSyslog由由由由SyslogSyslog守护程序、守护程序、守护程序、守护程序、SyslogSyslog规则集及规则集及规则集及规则集及SyslogSyslog系系系系统调用三部分组成,如下图:统调用三部分组成,如下图:统调用三部分组成,如下图:统调用三部分组成,如下图:操作系统安全机制安全审计分析安全审计分析(1)潜在侵害分析:)潜在侵害分析:日志分析应能用一些规则去监控审日志分析应能用一些规则去监控审计事件,并根据规则发现潜在的入侵计事件,并根据规则发现潜在的入侵。(2)基于异常检测
36、的轮廓:)基于异常检测的轮廓:确定正常行为轮廓,当日确定正常行为轮廓,当日志中的事件违反它或超出他的一定门限,能指出将要发生志中的事件违反它或超出他的一定门限,能指出将要发生的威胁。的威胁。(3)简单攻击探测:)简单攻击探测:对重大威胁特征有明确描述,当攻对重大威胁特征有明确描述,当攻击现象出现,能及时指出击现象出现,能及时指出。(4)复杂攻击检测:)复杂攻击检测:要求高的日志分析系统还应能检测要求高的日志分析系统还应能检测到多部入侵序列,当攻击序列出现,能预测其发生的步骤。到多部入侵序列,当攻击序列出现,能预测其发生的步骤。日志分析就是在日志中寻找模式,其主要内容:日志分析就是在日志中寻找模
37、式,其主要内容:日志分析就是在日志中寻找模式,其主要内容:日志分析就是在日志中寻找模式,其主要内容:操作系统安全机制审计事件查阅审计事件查阅 由于审计系统是追踪、恢复的直接依据,甚至是司法依由于审计系统是追踪、恢复的直接依据,甚至是司法依据,因此其自身的安全性十分重要。审计系统的安全性主据,因此其自身的安全性十分重要。审计系统的安全性主要是查阅和存储的安全。要是查阅和存储的安全。 审计事件的查阅应该受到严格的限制,不能篡改日志。审计事件的查阅应该受到严格的限制,不能篡改日志。通常通过以下不同的层次来保证查阅的安全。通常通过以下不同的层次来保证查阅的安全。 (1)审计查阅:审计系统以可理解的方式
38、为授权用户提)审计查阅:审计系统以可理解的方式为授权用户提供查阅日志和分析结果的功能。供查阅日志和分析结果的功能。 (2)有限审计查阅:审计系统只能提供对内容的读权限,)有限审计查阅:审计系统只能提供对内容的读权限,因此应拒绝具有读以外权限的用户访问审计系统。因此应拒绝具有读以外权限的用户访问审计系统。 (3)可选审计查阅:在有限审计查阅的基础上限制查阅)可选审计查阅:在有限审计查阅的基础上限制查阅的范围。的范围。操作系统安全机制审计事件存储审计事件存储 审计事件的存储也有安全性的要求,具体审计事件的存储也有安全性的要求,具体有如下几种情况。有如下几种情况。 (1)受保护的审计踪迹存储:)受保
39、护的审计踪迹存储:即要求存储系即要求存储系统对日志事件具有防护功能,防止未授权的修改和删统对日志事件具有防护功能,防止未授权的修改和删除,并具有检测修改和删除的能力。除,并具有检测修改和删除的能力。 (2)审计数据的可用性保证:)审计数据的可用性保证:在审计存储系在审计存储系统遭受意外时,能防止或检测审计记录的修改,在存统遭受意外时,能防止或检测审计记录的修改,在存储介质存满或存储失败时,能确保记录不被破坏。储介质存满或存储失败时,能确保记录不被破坏。 (3)防止审计数据丢失:)防止审计数据丢失:在审计踪迹超过预定在审计踪迹超过预定的门限或记满时,应采取相应的措施防止数据丢失。的门限或记满时,
40、应采取相应的措施防止数据丢失。这种措施可以是忽略可审计事件、只允许记录有特殊这种措施可以是忽略可审计事件、只允许记录有特殊权限的事件、覆盖以前记录、停止工作等等。权限的事件、覆盖以前记录、停止工作等等。操作系统安全机制1.NT审计子系统结构审计子系统结构 几乎几乎Windows NT系统中的每一项事务都可以在一定系统中的每一项事务都可以在一定程度上被审计,可以在控制面板中,系统管理员可以根据程度上被审计,可以在控制面板中,系统管理员可以根据各种用户事件的成功和失败选择审计策略,如登陆和退出、各种用户事件的成功和失败选择审计策略,如登陆和退出、文件访问、权限非法和关闭系统等。文件访问、权限非法和
41、关闭系统等。Windows NT使用使用一种特殊的格式存放它的日志文件,这种各式的文件可以一种特殊的格式存放它的日志文件,这种各式的文件可以被事件查看器被事件查看器Event viewer读取。读取。应用实例应用实例Windows NT 中的安全审计中的安全审计操作系统安全机制 Windows NT的日志文件很多,但主要是系统日志、安全日的日志文件很多,但主要是系统日志、安全日志和应用日志三个。这三个审计日志是审计一志和应用日志三个。这三个审计日志是审计一Windows NT系统系统的核心。默认安装时安全日志不打开。的核心。默认安装时安全日志不打开。 Windows NT中所有可中所有可被审计
42、的事件都存入了其中的一个日志。被审计的事件都存入了其中的一个日志。(1)Application Log:包括用:包括用NT Security authority注册的应注册的应用程序产生的信息。用程序产生的信息。(2)Security Log:包括有关通过:包括有关通过NT可识别安全提供者和客户的可识别安全提供者和客户的系统访问信息。系统访问信息。(3)System Log: 包含所有系统相关事件的信息。包含所有系统相关事件的信息。察看器可以在察看器可以在察看器可以在察看器可以在Administrative toolAdministrative tool程序组中找到。程序组中找到。程序组中找到
43、。程序组中找到。系统管理员可以使用事件察看器的系统管理员可以使用事件察看器的系统管理员可以使用事件察看器的系统管理员可以使用事件察看器的FilterFilter选项根据一选项根据一选项根据一选项根据一定条件选择要查看的日志条目。查看条件条件包括类定条件选择要查看的日志条目。查看条件条件包括类定条件选择要查看的日志条目。查看条件条件包括类定条件选择要查看的日志条目。查看条件条件包括类别、拥护和消息类型。别、拥护和消息类型。别、拥护和消息类型。别、拥护和消息类型。1.NT审计子系统结构审计子系统结构操作系统安全机制应用实例应用实例Windows NT 中的安全审计中的安全审计2.审计日志和记录格式
44、审计日志和记录格式 Windows NT的审计日志由一系列的事件记录组成,的审计日志由一系列的事件记录组成,每一个事件记录分为三个功能部分:头、事件描述和每一个事件记录分为三个功能部分:头、事件描述和可选的附加数据项。如下表显示了一个事件记录的结可选的附加数据项。如下表显示了一个事件记录的结构。安全日志的入口通常由头和事件描述组成。构。安全日志的入口通常由头和事件描述组成。数据数据时间时间用户名用户名计算机名计算机名事件事件ID源源类型类型种类种类可变内容可变内容,依赖于事件。可以使问题的文本解释和纠正措施的建依赖于事件。可以使问题的文本解释和纠正措施的建议议附加域。如果采用的话,包含可以字节
45、或字显示的二进制数据及附加域。如果采用的话,包含可以字节或字显示的二进制数据及事件记录的源应用产生的信息事件记录的源应用产生的信息记录头记录头记录头记录头事件描述事件描述事件描述事件描述附加数据附加数据附加数据附加数据操作系统安全机制时间记录头有下列域组成:时间记录头有下列域组成:(1)日期:事件的日期)日期:事件的日期标识。标识。(2)时间:事件的时间标识。)时间:事件的时间标识。(3)用户名:表识事件是有谁触发的。)用户名:表识事件是有谁触发的。(4)计算机名:事件所在的计算机名。当用户在整个企业范围内集中)计算机名:事件所在的计算机名。当用户在整个企业范围内集中 安全管理时,该信息大大简
46、化了审计信息的回顾。安全管理时,该信息大大简化了审计信息的回顾。(5)事件)事件ID:事件类型的数字标识。在事件记录描述中,这个域通常被:事件类型的数字标识。在事件记录描述中,这个域通常被映射映射 成一个文本表识(事件名)。成一个文本表识(事件名)。 (6) 源:用来响应事件纪录的软件。源可以是一个应用程序、一个系统服源:用来响应事件纪录的软件。源可以是一个应用程序、一个系统服务或一个设备驱动器。务或一个设备驱动器。(7)类型:事件严重性指示器。在系统和应用日志中,类型可以是错误、)类型:事件严重性指示器。在系统和应用日志中,类型可以是错误、警告或信息,按重要性降序排列。警告或信息,按重要性降
47、序排列。(8)种类:触发事件类型,主要用在安全日志中指示该类事件的成功)种类:触发事件类型,主要用在安全日志中指示该类事件的成功 或失败审计已经被许可。或失败审计已经被许可。操作系统安全机制 3. NT 3. NT事件日志管理特征事件日志管理特征事件日志管理特征事件日志管理特征 Windows NT提供了大量特征给系统管理员区管理提供了大量特征给系统管理员区管理操作系统事件日志机制。例如:管理员能限制日志的大操作系统事件日志机制。例如:管理员能限制日志的大小并规定当文档达到容量上限时,如何去处理这些小并规定当文档达到容量上限时,如何去处理这些文件文件文件文件。选项包括:用新纪录去冲掉最老的纪录
48、,停止系统直到选项包括:用新纪录去冲掉最老的纪录,停止系统直到事件日志备受共清除。事件日志备受共清除。 操作系统安全机制应用实例应用实例Windows NT 中的安全审计中的安全审计4. NT安全日志的审计策略安全日志的审计策略NT安全日志由审计策略支配,审计策略可以通过配置审计策安全日志由审计策略支配,审计策略可以通过配置审计策略对话框中的选项来建立。略对话框中的选项来建立。NT的审计规则如下(既可以审计成功的操作,又可以审计失的审计规则如下(既可以审计成功的操作,又可以审计失败的操作):败的操作):(1)登陆及注销()登陆及注销(2)用户及组管理()用户及组管理(3)文件及对象访问)文件及
49、对象访问(4)安全性规则更改()安全性规则更改(5)重新启动、关机及系统级事件)重新启动、关机及系统级事件(6)进程追踪()进程追踪(7)文件和目录审计)文件和目录审计操作系统安全机制5.管理和维护管理和维护NT审计审计 通常情况下,通常情况下,通常情况下,通常情况下,Windows NT Windows NT 不是将所有的事件都记不是将所有的事件都记不是将所有的事件都记不是将所有的事件都记录日志,而需要手动启动审计的功能。这是首先需要从开录日志,而需要手动启动审计的功能。这是首先需要从开录日志,而需要手动启动审计的功能。这是首先需要从开录日志,而需要手动启动审计的功能。这是首先需要从开始菜单
50、中选择程序,然后再选择管理工具。从管理工具子始菜单中选择程序,然后再选择管理工具。从管理工具子始菜单中选择程序,然后再选择管理工具。从管理工具子始菜单中选择程序,然后再选择管理工具。从管理工具子菜单选择用户管理器,显示出用户管理起窗口。然后从用菜单选择用户管理器,显示出用户管理起窗口。然后从用菜单选择用户管理器,显示出用户管理起窗口。然后从用菜单选择用户管理器,显示出用户管理起窗口。然后从用户管理器的菜单中单击户管理器的菜单中单击户管理器的菜单中单击户管理器的菜单中单击policies(policies(策略策略策略策略) ),再单击,再单击,再单击,再单击audit(audit(审审审审计计
51、计计) ),审计策略窗口就出现了。接着选择单选框,审计策略窗口就出现了。接着选择单选框,审计策略窗口就出现了。接着选择单选框,审计策略窗口就出现了。接着选择单选框”audit ”audit thest events”(thest events”(审计这些事件审计这些事件审计这些事件审计这些事件) )。最后选择需要启动事件。最后选择需要启动事件。最后选择需要启动事件。最后选择需要启动事件的按的按的按的按OKOK,然后关闭用户管理器。值得注意的是在启动,然后关闭用户管理器。值得注意的是在启动,然后关闭用户管理器。值得注意的是在启动,然后关闭用户管理器。值得注意的是在启动Windows NTWind
52、ows NT的审计功能时,需要仔细选择审计的内容。的审计功能时,需要仔细选择审计的内容。的审计功能时,需要仔细选择审计的内容。的审计功能时,需要仔细选择审计的内容。操作系统安全机制审计日志将产生大量的数据,因此较为合理的方法是首先设置审计日志将产生大量的数据,因此较为合理的方法是首先设置审计日志将产生大量的数据,因此较为合理的方法是首先设置审计日志将产生大量的数据,因此较为合理的方法是首先设置进行简单审计,然后在监视系统的情况下逐步增加复杂的审计进行简单审计,然后在监视系统的情况下逐步增加复杂的审计进行简单审计,然后在监视系统的情况下逐步增加复杂的审计进行简单审计,然后在监视系统的情况下逐步增
53、加复杂的审计要求。当需要审查审计日志以跟踪网络或机器上的异常事件时,要求。当需要审查审计日志以跟踪网络或机器上的异常事件时,要求。当需要审查审计日志以跟踪网络或机器上的异常事件时,要求。当需要审查审计日志以跟踪网络或机器上的异常事件时,采用一些第三方提供的工具是一个叫有效率的选择。采用一些第三方提供的工具是一个叫有效率的选择。采用一些第三方提供的工具是一个叫有效率的选择。采用一些第三方提供的工具是一个叫有效率的选择。 最后介绍一下最后介绍一下最后介绍一下最后介绍一下Windows NTWindows NT的三个日志文件的物理位置。的三个日志文件的物理位置。的三个日志文件的物理位置。的三个日志文
54、件的物理位置。 系统日志:系统日志:系统日志:系统日志:%systemroot%system32configsysevent.evt%systemroot%system32configsysevent.evt 安全日志:安全日志:安全日志:安全日志:%systemroot%system32configsecevent.evt%systemroot%system32configsecevent.evt 应用程序日志:应用程序日志:应用程序日志:应用程序日志: %systemroot%system32configappevent.evt%systemroot%system32configappev
55、ent.evt5.管理和维护管理和维护NT审计审计操作系统安全机制2.6 存储保护、运行保护和I/O保护优优秀秀的的实实体体(硬硬件件)保保护护设设施施是是实实现现高高效效、安安全全、可可靠靠的的操操作作系系统统的的基基础础,计计算算机机硬硬件件安安全全的的目目标标是是保保证证其其自自身身的的可可靠靠性性,并并为操作系统提供基本的安全设施,为操作系统提供基本的安全设施,操作系统安全机制保护方法保护方法隔离隔离 操操作作系系统统的的一一个个基基本本安安全全方方法法是是隔隔离,把一个客体与其它客体隔离起来。离,把一个客体与其它客体隔离起来。物物理理隔隔离离:不不同同的的处处理理使使用用不不同同的的
56、物物理理设设备备。如如,不不同同安安全全级级别别的的处处理理输输出出使使用不同的打印机;用不同的打印机;操作系统安全机制时间隔离:时间隔离:不同安全级别的处理在不同的时间执行;不同安全级别的处理在不同的时间执行;逻辑隔离:逻辑隔离:用户的操作在没有其它处理存在的情况下执行。用户的操作在没有其它处理存在的情况下执行。操操作作系系统统限限制制程程序序的的访访问问,以以使使该该程程序序不不能能访访问问允允许许范围之外的客体。范围之外的客体。虚虚拟拟机机是是软软件件是是运运行行在在硬硬件件之之上上、操操作作系系统统之之下下的的支支撑撑软软件件,可可以以使使一一套套硬硬件件运运行行多多个个操操作作系系统
57、统,分分别别执执行行不不同密级任务。同密级任务。密码隔离:密码隔离:用用密密码码加加密密数数据据,以以其其它它处处理理不不能能理理解解的的形形式式隐隐藏藏数数据据操作系统安全机制然然而而隔隔离离仅仅仅仅是是问问题题的的一一半半。我我们们除除了了要要对对用用户户和和客客体体进进行行隔隔离离外外,我我们们还还希希望望能能够够提提供供共共享享。例例如如,不不同同安安全全级级别别的的处处理理能能调调用用同同一一个个的的算算法法或或功功能能调调用用。我我们们希希望望既既能能够够提提供供共共享享,而而又又不不牺牺牲牲各各自自的的安安全性。全性。操作系统安全机制隔绝隔绝当当操操作作系系统统提提供供隔隔绝绝时
58、时,并并发发运运行行的的不不同同处处理理不不能能察察觉觉对对方方的的存存在在。每每个个处处理理有有自自己己的的地地址址空空间间、文文件件和和其其它它客客体体。操操作作系系统统限限制制每每个个处处理理,使使其其它它处处理理的的客体完全隐蔽。客体完全隐蔽。 操作系统安全机制(1) 内存保护常用的有:内存保护、运行保护和I/O保护等。 多多道道程程序序的的最最重重要要问问题题是是阻阻止止一一个个程程序序影影响响另另一一个个程程序序的的存存储储器器。这这种种保保护护可可以以作作成成硬硬件件机机制制,以以保保护护存存储储器器的的有有效效使用,而且成本很低使用,而且成本很低操作系统安全机制 1) 固定地址
59、界限设设置置地地址址界界限限,使使操操作作系系统统在在界界限限的的一一边边,而而用用户户程程序序在在界界限限的的另另一一边边。主主要要是是阻阻止止用用户户程程序序破破坏坏操操作作系系统的程序。统的程序。这这种种固固定定界界限限方方式式的的限限制制是是死死扳扳的的,因因为为给给操操作作系系统统预留的存储空间是固定的,不管是否需要。预留的存储空间是固定的,不管是否需要。 操作系统操作系统操作系统硬件地址界限操作系统用户程序用户程序0 0n-1n-1n n高高操作系统安全机制2)浮动地址界限浮动地址界限界界限限寄寄存存器器(fence fence registerregister):它它存存储储操操
60、作作系系统统的的端端地地址。址。与固定界限方式不同,这里的界限是可以变化的。与固定界限方式不同,这里的界限是可以变化的。每每当当用用户户程程序序要要修修改改一一个个地地址址的的数数据据时时,则则把把该该地地址址与与界界限限地地址址进进行行比比较较,如如果果该该地地址址在在用用户户区区则则执执行行,如如果果该该地地址在操作系统区则产生错误信号、并拒绝执行。址在操作系统区则产生错误信号、并拒绝执行。操作系统操作系统操作系统界限寄存器操作系统用户程序用户程序0 0n-1n-1n n高高操作系统安全机制一个界限寄存器的保护是单向的。换句话说,一个界限寄存器的保护是单向的。换句话说,可保护用户不侵入操作
61、系统区,但不能保护一可保护用户不侵入操作系统区,但不能保护一个用户对另一用户区的侵入。个用户对另一用户区的侵入。类似地,用户也不能隔离保护程序的代码区和类似地,用户也不能隔离保护程序的代码区和数据区。数据区。 通常采用通常采用多对多对地址界限寄存器,其中一个为上地址界限寄存器,其中一个为上界,另一个为下界(界,另一个为下界(或一个为基址,另一个为或一个为基址,另一个为界长界长)。把程序之间,数据之间,堆栈之间隔)。把程序之间,数据之间,堆栈之间隔离保护起来。离保护起来。操作系统安全机制操作系统操作系统程序程序程序程序2 2上界寄存器上界寄存器操作系统操作系统程序程序程序程序3 30 0n-1n
62、-1n n高高高高操作系统操作系统程序程序程序程序1 1下界寄存器下界寄存器mmm+1m+1基址寄存器基址寄存器界长寄存器界长寄存器操作系统安全机制3)3)内存块锁与进程钥匙配对法内存块锁与进程钥匙配对法 PSWPSW的其余部分的其余部分 钥匙钥匙内存锁内存锁01100110块块11011101块块01010101块块01100110块块 0110 0110进程进程操作系统安全机制(2)(2)支持虚拟内存的系统支持虚拟内存的系统进进程程的的存存储储空空间间的的隔隔离离可可以以很很容容易易地地通通过过虚虚拟拟存存储储器器的的方方法法来来实实现现,分分段段、分分页页或或段段页页式式,提提供供了了管
63、管理理和和保保护护主主存存的的有有效效方方法法,这这类类系系统统通通过过段段表表、页页表表和和段段页页表表间间接接地地访访问问虚虚拟拟内内存存的的一一个个段段或或一一个个页页。由由于于表表对对于于进进程程是是私私有有的的,因因此此,通通过过在在有有关关表表项项中中设设置置保保护护信信息息,每每个个进进程程可可以以对对该该进进程程能能( (私私有有或或共共享享) )访访问问的的任任何何段段或或页页面面具具有有不不同同的的访访问问权权限限,在在每每次次地地址址转转换换时时执执行行必必需需的的权权限限检查。检查。操作系统安全机制(3)(3)沙盒技术沙盒技术在大多数操作系统中,一个进程调用的函数会在大
64、多数操作系统中,一个进程调用的函数会自动继承调用进程的所有访问特权,特别是可自动继承调用进程的所有访问特权,特别是可以访问进程的整个虚拟内存。以访问进程的整个虚拟内存。若函数是不可信的,如若函数是不可信的,如InternetInternet上下载的程序上下载的程序( (很可能带有特洛伊木马很可能带有特洛伊木马) ),这种不受限制的访,这种不受限制的访问是不允许的,会给系统造成严重威胁。问是不允许的,会给系统造成严重威胁。为了限制不可信程序造成潜在损害的范围,系为了限制不可信程序造成潜在损害的范围,系统可限制特权为调用进程所具有的授权的统可限制特权为调用进程所具有的授权的一小一小部分部分特权,通
65、常称这种缩小访问后的环境为特权,通常称这种缩小访问后的环境为“沙盒沙盒”。 操作系统安全机制2 2运行保护运行保护安全操作系统采用分层设计;安全操作系统采用分层设计;运行域是进程运行的区域;运行域是进程运行的区域;运行域保护机制:根据安全策略,把进程的运行运行域保护机制:根据安全策略,把进程的运行区域划分为一些同心环,进行运行的安全保护。区域划分为一些同心环,进行运行的安全保护。最内环具有最小的环号,具有最高的安全级别;最内环具有最小的环号,具有最高的安全级别;最外环具有最大的环号,具有最低的安全级别;最外环具有最大的环号,具有最低的安全级别;内环不受外环的入侵,却可利用外环的资源,并内环不受
66、外环的入侵,却可利用外环的资源,并控制外环。控制外环。操作系统安全机制等级机制保护某一环不被外层环侵入,并能控制外环等级机制保护某一环不被外层环侵入,并能控制外环进程隔离机制:隔离同一环内同时运行的各个进程进程隔离机制:隔离同一环内同时运行的各个进程R0R0R1R1RnRn操作系统安全机制3 I/O保护IOIO保护是系统中最复杂的;保护是系统中最复杂的;大大多多数数情情况况下下,把把IOIO设设备备视视为为文文件件,且且规规定定IOIO是是仅仅由由操操作作系系统统完完成成的的一一个个特特权权操操作作,对对读读写写操操作作提提供供一一个个高高层层系系统统调调用用。在在这这一一过过程程中中,用户不控制用户不控制IOIO操作的细节。操作的细节。CPUCPU与与计计算算机机系系统统相相连连接接的的各各种种外外围围设设备备通通信信时时,必必须须读读写写设设备备控控制制器器提提供供的的各各种种寄寄存存器器,对对这这类类寄寄存存器器的的访访问问可可采采用用两两种种途途径径:内内存存映映射接口和射接口和I/OI/O指令指令( (集集) )。 操作系统安全机制