操作系统安全基础.ppt
《操作系统安全基础.ppt》由会员分享,可在线阅读,更多相关《操作系统安全基础.ppt(118页珍藏版)》请在课桌文档上搜索。
1、第八章 操作系统安全基础,内容提要,本章介绍Windows 2000服务器的安全配置。操作系统的安全将决定网络的安全,从保护级别上分成安全初级篇、中级篇和高级篇,共36条基本配置原则。安全配置初级篇讲述常规的操作系统安全配置,中级篇介绍操作系统的安全策略配置,高级篇介绍操作系统安全信息通信配置。,操作系统概述,目前服务器常用的操作系统有三类:UnixLinuxWindows这些操作系统都是符合C2级安全级别的操作系统。但是都存在不少漏洞,如果对这些漏洞不了解,不采取相应的措施,就会使操作系统完全暴露给入侵者。,安全级别列表,UNIX系统,UNIX操作系统是由美国贝尔实验室开发的一种多用户、多任
2、务的通用操作系统。它从一个实验室的产品发展成为当前使用普遍、影响深远的主流操作系统。UNIX诞生于20世纪60年代末期,贝尔实验室的研究人员于1969年开始在GE645计算机上实现一种分时操作系统的雏形,后来该系统被移植到了DEC的PDP-7小型机上。1970年给系统正式取名为Unix操作系统。到1973年,Unix系统的绝大部分源代码都用C语言重新编写过,大大提高了Unix系统的可移植性,也为提高系统软件的开发效率创造了条件。,主要特色,UNIX操作系统经过20多年的发展后,已经成为一种成熟的主流操作系统,并在发展过程中逐步形成了一些新的特色,其中主要特色包括5个方面。(1)可靠性高(2)极
3、强的伸缩性(3)网络功能强(4)强大的数据库支持功能(5)开放性好,Linux系统,Linux是一套可以免费使用和自由传播的类Unix操作系统,主要用于基于Intel x86系列CPU的计算机上。这个系统是由全世界各地的成千上万的程序员设计和实现的。其目的是建立不受任何商品化软件的版权制约的、全世界都能自由使用的Unix兼容产品。Linux最早开始于一位名叫Linus Torvalds的计算机业余爱好者,当时他是芬兰赫尔辛基大学的学生。目的是想设计一个代替Minix(是由一位名叫Andrew Tannebaum的计算机教授编写的一个操作系统示教程序)的操作系统。这个操作系统可用于386、486
4、或奔腾处理器的个人计算机上,并且具有Unix操作系统的全部功能。,Linux是一个免费的操作系统,用户可以免费获得其源代码,并能够随意修改。它是在共用许可证GPL(General Public License)保护下的自由软件,也有好几种版本,如Red Hat Linux、Slackware,以及国内的Xteam Linux、红旗Linux等等。Linux的流行是因为它具有许多优点,典型的优点有7个。,Linux典型的优点有7个。,(1)完全免费(2)完全兼容POSIX 1.0标准(3)多用户、多任务(4)良好的界面(5)丰富的网络功能(6)可靠的安全、稳定性能(7)支持多种平台,Window
5、s系统,Windows NT(New Technology)是微软公司第一个真正意义上的网络操作系统,发展经过NT3.0、NT40、NT5.0(Windows 2000)和NT6.0(Windows 2003)等众多版本,并逐步占据了广大的中小网络操作系统的市场。Windows NT众多版本的操作系统使用了与Windows 9X完全一致的用户界面和完全相同的操作方法,使用户使用起来比较方便。与Windows 9X相比,Windows NT的网络功能更加强大并且安全。,Windows NT系列操作系统,Windows NT系列操作系统具有以下三方面的优点。(1)支持多种网络协议由于在网络中可能存
6、在多种客户机,如Windows 95/98、Apple Macintosh、Unix、OS/2等等,而这些客户机可能使用了不同的网络协议,如TCP/IP协议、IPX/SPX等。Windows NT系列操作支持几乎所有常见的网络协议。(2)内置Internet功能随着Internet的流行和TCP/IP协议组的标准化,Windows NT内置了IIS(Internet Information Server),可以使网络管理员轻松的配置WWW和FTP等服务。(3)支持NTFS文件系统Windows 9X所使用的文件系统是FAT,在NT中内置同时支持FAT和NTFS的磁盘分区格式。使用NTFS的好处
7、主要是可以提高文件管理的安全性,用户可以对NTFS系统中的任何文件、目录设置权限,这样当多用户同时访问系统的时候,可以增加文件的安全性。,系统安全概述脆弱性分析技术的脆弱性配置的脆弱性管理的脆弱性,安全操作系统的基本概念,安全操作系统涉及很多概念:主体和客体安全策略和安全模型访问监控器和安全内核以及可信计算基。,主体和客体,操作系统中的每一个实体组件都必须是主体或者是客体,或者既是主体又是客体。主体是一个主动的实体,它包括用户、用户组、进程等。系统中最基本的主体应该是用户(包括一般用户和系统管理员、系统安全员、系统审计员等特殊用户)。每个进入系统的用户必须是惟一标识的,并经过鉴别确定为真实的。
8、系统中的所有事件要求,几乎全是由用户激发的。进程是系统中最活跃的实体,用户的所有事件要求都要通过进程的运行来处理。在这里,进程作为用户的客体,同时又是其访问对象的主体。客体是一个被动的实体。在操作系统中,客体可以是按照一定格式存储在一定记录介质上的数据信息(通常以文件系统格式存储数据),也可以是操作系统中的进程。操作系统中的进程(包括用户进程和系统进程)一般有着双重身份。当一个进程运行时,它必定为某一用户服务直接或间接的处理该用户的事件要求。于是,该进程成为该用户的客体,或为另一进程的客体(这时另一进程则是该用户的客体),安全策略和安全模型,安全策略与安全模型是计算机安全理论中容易相互混淆的两
9、个概念。安全策略是指有关管理、保护和发布敏感信息的法律、规定和实施细则。例如,可以将安全策略定为:系统中的用户和信息被划分为不同的层次,一些级别比另一些级别高;而且如果主体能读访问客体,当且仅当主体的级别高于或等于客体的级别;如果主体能写访问客体,当且仅当主体的级别低于或等于客体的级别。安全模型则是对安全策略所表达的安全需求的简单、抽象和无歧义的描述,它为安全策略和安全策略实现机制的关联提供了一种框架。安全模型描述了对某个安全策略需要用哪种机制来满足;而模型的实现则描述了如何把特定的机制应用于系统中,从而实现某一特定安全策略所需的安全保护。,访问监控器,访问控制机制的理论基础是访问监控器(Re
10、ference Monitor),由J.P.Anderson首次提出。访问监控器是一个抽象概念,它表现的是一种思想。J.P.Anderson把访问监控器的具体实现称为引用验证机制,它是实现访问监控器思想的硬件和软件的组合,安全内核,安全内核是实现访问监控器概念的一种技术,在一个大型操作系统中,只有其中的一小部分软件用于安全目的是它的理论依据。所以在重新生成操作系统过程中,可用其中安全相关的软件来构成操作系统的一个可信内核,称之为安全内核。安全内核必须予以适当的保护,不能篡改。同时绝不能有任何绕过安全内核存取控制检查的存取行为存在。此外安全内核必须尽可能地小,便于进行正确性验证。安全内核由硬件和
11、介于硬件和操作系统之间的一层软件组成。,可信计算基,操作系统的安全依赖于一些具体实施安全策略的可信的软件和硬件。这些软件、硬件和负责系统安全管理的人员一起组成了系统的可信计算基(Trusted Computing Base,TCB)。具体来说可信计算基由以下7个部分组成:1.操作系统的安全内核。2.具有特权的程序和命令。3.处理敏感信息的程序,如系统管理命令等。4.与TCB实施安全策略有关的文件。5.其它有关的固件、硬件和设备。6.负责系统管理的人员。7.保障固件和硬件正确的程序和诊断软件。,1 Windows系统的安全架构2 Windows的安全子系统3 Windows的账户及密码系统4 W
12、indows的权利与权限5 Windows的系统服务和进程6 Windows的日志系统,Windows系统安全机制,1.Windows系统的安全架构,6个主要的安全服务:Audit(审计),Administration(管理),Encryption(加密),Access Control(访问控制),User Authentication(用户身份验证),Corporate Security PolicyCorporate Security Policy(安全组策略)。,1.1 Windows系统的安全组件,C2级别的操作系统中所包含的安全组件:访问控制的判断(Discretion access
13、 control)Windows 支持对象的访问控制的判断。这些需求包括允许对象的所有者可以控制谁被允许访问该对象以及访问的方式。对象重用(Object reuse)当资源(内存、磁盘等)被某应用访问时,Windows 禁止所有的系统应用访问该资源,这也就是为什么Windows NT禁止undelete已经被删除的文件的原因。强制登陆(Mandatory log on)与Windows for Workgroups,Windwows95,Windows 98不同,Windows2K/NT要求所有的用户必须登陆,通过认证后才可以访问资源。由于网络连接缺少强制的认证,所以Windows 作为C2级
14、别的操作系统必须是未连网的。审核(Auditing)Windows NT 在控制用户访问资源的同时,也可以对这些访问作了相应的记录。对象的访问控制(Control of access to object)Windows NT不允许直接访问系统的某些资源。必须是该资源允许被访问,然后是用户或应用通过第一次认证后再访问。,1.2 Windows系统的对象,为了实现自身的安全特性,Windows2K/NT把所有的资源作为系统的特殊的对象。这些对象包含资源本身,Windows2K/NT提供了一种访问机制去使用它们。Microsoft的安全就是基于以下的法则:用对象表现所有的资源只有Windows2K/
15、NT才能直接访问这些对象对象能够包含所有的数据和方法对象的访问必须通过Windows 2K/NT的安全子系统的第一次验证存在几种单独的对象,每一个对象的类型决定了这些对象能做些什么Windows 中首要的对象类型有:文件文件夹打印机I/O设备窗口线程进程内存这些安全构架的目标就是实现系统的牢固性。从设计来考虑,就是所有的访问都必须通过同一种方法认证,减少安全机制被绕过的机会。,2.Windows安全子系统,(执行服务),(接口和播放),(内核),(硬件提取层),Windows安全子系统的组件,Windows NT安全子系统包含五个关键的组件:Security identifiers,Acces
16、s tokens,Security descriptors,Access control lists,Access Control Entries。安全标识符(Security Identifiers):就是我们经常说的SID,每次当我们创建一个用户或一个组的时候,系统会分配给改用户或组一个唯一SID,当你重新安装Windows NT后,也会得到一个唯一的SID。SID永远都是唯一的,由计算机名、当前时间、当前用户态线程的CPU耗费时间的总和三个参数决定以保证它的唯一性。例:S-1-5-21-1763234323-3212657521-1234321321-500访问令牌(Access tok
17、ens):用户通过验证后,登陆进程会给用户一个访问令牌,该令牌相当于用户访问系统资源的票证,当用户试图访问系统资源时,将访问令牌提供给Windows NT,然后Windows NT检查用户试图访问对象上的访问控制列表。如果用户被允许访问该对象,Windows NT将会分配给用户适当的访问权限。访问令牌是用户在通过验证的时候有登陆进程所提供的,所以改变用户的权限需要注销后重新登陆,重新获取访问令牌。,安全描述符(Security descriptors):Windows NT中的任何对象的属性都有安全描述符这部分。它保存对象的安全配置。访问控制列表(Access control lists):访
18、问控制列表有两种:任意访问控制列表(Discretionary ACL)、系统访问控制列表(System ACL)。任意访问控制列表包含了用户和组的列表,以及相应的权限,允许或拒绝。每一个用户或组在任意访问控制列表中都有特殊的权限。而系统访问控制列表是为审核服务的,包含了对象被访问的时间。访问控制项(Access control entries):访问控制项(ACE)包含了用户或组的SID以及对象的权限。访问控制项有两种:允许访问和拒绝访问。拒绝访问的级别高于允许访问。当你使用管理工具列出对象的访问权限时,列表的排序是以文字为顺序的,它并不象防火墙的规则那样由上往下的,不过好在并不会出现冲突,
19、拒绝访问总是优先于允许访问的。,2.1Windows安全子系统的身份认证,WinlogonGraphical Identification and Authentication DLL(GINA)图形辨认和鉴定动态链接Local Security Authority(LSA)本地安全认证Security Support Provider Interface(SSPI)Authentication PackagesSecurity support providersNetlogonServiceSecurity Account Manager(SAM),Windows安全子系统的身份认证架构示意
20、图,Winlogon,Local Security Authorit以及Netlogon作为服务运行,其他的以DLL方式被这些文件调用。,Winlogon and Gina:,Winlogon调用GINA DLL,并监视安全认证序列。而GINA DLL提供一个交互式的界面为用户登陆提供认证请求。GINA DLL被设计成一个独立的模块,当然我们也可以用一个更加强有力的认证方式(指纹、视网膜)替换内置的GINA DLL。Winlogon在注册表中查找HKLMSoftwareMicrosoftWindows NTCurrentVersionWinlogon,如果存在GinaDLL键,Winlogon
21、将使用这个DLL,如果不存在该键,Winlogon将使用默认值MSGINA.DLL,本地安全认证(Local Security Authority),本地安全认证(LSA)是一个被保护的子系统,它负责以下任务:调用所有的认证包,检查在注册表HKLMSYSTEMCurrentControlSetControlLSA下AuthenticationPAckages下的值,并调用该DLL进行认证(MSV_1.DLL)。在4.0版里,Windows NT会寻找HKLMSYSTEMCurrentControlSetControlLSA 下所有存在的SecurityPackages值并调用。重新找回本地组的
22、SIDs和用户的权限。创建用户的访问令牌。管理本地安装的服务所使用的服务账号。储存和映射用户权限。管理审核的策略和设置。管理信任关系。,安全支持提供者的接口(Security Support Provide Interface),微软的Security Support Provide Interface很简单地遵循RFC 2743和RFC 2744的定义,提供一些安全服务的API,为应用程序和服务提供请求安全的认证连接的方法(Kerberos/NTLM)。,认证包(Authentication Package),认证包可以为真实用户提供认证。通过GINA DLL的可信认证后,认证包返回用户的S
23、IDs给LSA,然后将其放在用户的访问令牌中。,安全支持提供者(Security Support Provider),安全支持提供者是以驱动的形式安装的,能够实现一些附加的安全机制,默认情况下,Windows NT安装了以下三种:Msnsspc.dll:微软网络挑战/反应认证模块Msapsspc.dll:分布式密码认证挑战/反应模块,该模块也可以在微软网络中使用Schannel.dll:该认证模块使用某些证书颁发机构提供的证书来进行验证,常见的证书机构比如Verisign。这种认证方式经常在使用SSL(Secure Sockets Layer)和PCT(Private Communicatio
24、n Technology私有信息技术)协议通信的时候用到。,网络登陆(Netlogon),网络登陆服务必须在通过认证后建立一个安全的通道。要实现这个目标,必须通过安全通道与域中的域控制器建立连接,然后,再通过安全的通道传递用户的口令,在域的域控制器上响应请求后,重新取回用户的SIDs和用户权限。,安全账号管理者(Security Account Manager),安全账号管理者,也就是我们经常所说的SAM,它是用来保存用户账号和口令的数据库。保存了注册表中HKLMSecuritySam中的一部分内容。不同的域有不同的Sam,在域复制的过程中,Sam包将会被拷贝。,2.2Windows身份认证机
25、制,LanManager认证(称为LM协议)早期版本NTLM v1 认证协议 NT 4.0 SP3之前的版本NTLM v2 认证协议 NT 4.0 SP4开始支持Kerberos v5认证协议 Windows 2000活动目录,NTLM身份认证过程,1、客户端首先在本地加密自己的密码成为密码散列2、客户端向服务器发送自己的帐号,这个帐号是没有经过加密的,明文直接传输。3、服务器产生一个16位的随机数字发送给客户端,作为一个challenge(挑战)4、客户端再用加密后的密码散列来加密这个challenge,然后把这个返回给服务器,作为response。5、服务器把用户名、给客户端的challe
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 操作 系统安全 基础
链接地址:https://www.desk33.com/p-250614.html