《《操作系统安全》第三章-windows系统安全要素ppt课件.ppt》由会员分享,可在线阅读,更多相关《《操作系统安全》第三章-windows系统安全要素ppt课件.ppt(112页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第三章 Windows系统安全要素系统安全要素Windows系统安全要素系统安全要素o 一、目的要求一、目的要求o 1.掌握Windows系统各种安全要素的概念,内涵和原理。o 2.掌握各种安全要素的管理操作及使用方法。o 二、工具器材二、工具器材o Windows Server 2003,Windows XP操作系统o 三、学习方式建议三、学习方式建议o 理论学习+上机操作3.1 Windows系统安全模型系统安全模型o 影响影响Windows系统安全的要素有很多:系统安全的要素有很多:安全模型,文件系统,域和工作组,注册表,安全模型,文件系统,域和工作组,注册表,进程和线程等等,其中进程和
2、线程等等,其中Windows系统安全系统安全模型是核心。模型是核心。 Windows系统安全模型系统安全模型o Windows系统的安全性根植于系统的安全性根植于Windows系统系统的核心的核心(Kernel)层,它为各层次提供一致的安全层,它为各层次提供一致的安全模型。模型。Windows系统安全模型是系统安全模型是Windows系系统中密不可分的子系统,控制着统中密不可分的子系统,控制着Windows系统中系统中对象的访问对象的访问(如文件、内存、打印机等如文件、内存、打印机等)。在。在Windows系统中,对象实质上是指一系列信息集系统中,对象实质上是指一系列信息集合体,封装了数据及处
3、理过程,使之成为一个可被合体,封装了数据及处理过程,使之成为一个可被广泛引用的整体。当对象用于网络环境时,称之为广泛引用的整体。当对象用于网络环境时,称之为资源;当对象在网络中共享时,称之为共享资源。资源;当对象在网络中共享时,称之为共享资源。o Windows 安全模型基于安全对象。操作系统的安全模型基于安全对象。操作系统的每个组件都必须确保其负责的对象的安全性。每个组件都必须确保其负责的对象的安全性。Windows 安全模型主要基于每个对象的权限,安全模型主要基于每个对象的权限,以及少量的系统级特权。安全对象包括(但不限于)以及少量的系统级特权。安全对象包括(但不限于)进程、线程、事件和其
4、它同步对象,以及文件、目进程、线程、事件和其它同步对象,以及文件、目录和设备。录和设备。o 对于每种类型的对象,一般的读、写和执行权限都对于每种类型的对象,一般的读、写和执行权限都映射到详细的对象特定权限中。例如,对于文件和映射到详细的对象特定权限中。例如,对于文件和目录,可能的权限包括读或写文件或目录的权限、目录,可能的权限包括读或写文件或目录的权限、读或写扩展的文件属性的权限、遍历目录的权限,读或写扩展的文件属性的权限、遍历目录的权限,以及写对象的安全描述符的权限。以及写对象的安全描述符的权限。3.1.1 Windows系统安全模型组件系统安全模型组件o 安全标识符安全标识符 (SID,S
5、ecurity Identifiers)o 安全标识符标识一个用户、组或登录会话。每个用安全标识符标识一个用户、组或登录会话。每个用户都有一个唯一的户都有一个唯一的 SID,在登录时由操作系统检,在登录时由操作系统检索。当你重新安装系统后,也会得到一个唯一的索。当你重新安装系统后,也会得到一个唯一的SID。 SID由计算机名、当前时间、当前用户态由计算机名、当前时间、当前用户态线程的线程的CPU耗费时间的总和三个参数决定,以保耗费时间的总和三个参数决定,以保证它的唯一性。证它的唯一性。访问令牌(访问令牌(Access Token)o 用户通过验证后,登录进程会给用户一个访问令牌,用户通过验证后
6、,登录进程会给用户一个访问令牌,该令牌相当于用户访问系统资源的票证,当用户试该令牌相当于用户访问系统资源的票证,当用户试图访问系统资源时,将访问令牌提供给图访问系统资源时,将访问令牌提供给Windows 系统,然后系统检查用户试图访问对象上的访问控系统,然后系统检查用户试图访问对象上的访问控制列表。如果用户被允许访问该对象,系统将会分制列表。如果用户被允许访问该对象,系统将会分配给用户适当的访问权限。访问令牌是用户在通过配给用户适当的访问权限。访问令牌是用户在通过验证的时候由登录进程所提供的,所以改变用户的验证的时候由登录进程所提供的,所以改变用户的权限需要注销后重新登陆,重新获取访问令牌。权
7、限需要注销后重新登陆,重新获取访问令牌。访问令牌(访问令牌(Access Token)o 每个进程都有一个访问令牌,访问令牌描述进程的每个进程都有一个访问令牌,访问令牌描述进程的完整的安全上下文。它包含用户的完整的安全上下文。它包含用户的 SID、用户所、用户所属组的属组的SID、登录会话的、登录会话的 SID,以及授予用户的,以及授予用户的系统级特权列表。系统级特权列表。o 默认情况下,当进程的线程与安全对象交互时,系默认情况下,当进程的线程与安全对象交互时,系统使用进程的主访问令牌。但是,一个线程可以模统使用进程的主访问令牌。但是,一个线程可以模拟一个客户端帐户。当一个线程模拟客户端帐户时
8、,拟一个客户端帐户。当一个线程模拟客户端帐户时,它除了拥有自己的主令牌之外还有一个模拟令牌。它除了拥有自己的主令牌之外还有一个模拟令牌。模拟令牌描述线程正在模拟的用户帐户的安全上下模拟令牌描述线程正在模拟的用户帐户的安全上下文。模拟在远程过程调用文。模拟在远程过程调用 (Remote Procedure Call, RPC) 处理中尤其常见处理中尤其常见 .访问令牌(访问令牌(Access Token)o 描述线程或进程的受限制的安全上下文的访问令牌描述线程或进程的受限制的安全上下文的访问令牌被称为受限令牌。受限令牌中的被称为受限令牌。受限令牌中的 SID 只能设置为只能设置为拒绝访问安全对象
9、,而不能设置为允许访问安全对拒绝访问安全对象,而不能设置为允许访问安全对象。此外,令牌可以描述一组有限的系统级特权。象。此外,令牌可以描述一组有限的系统级特权。用户的用户的 SID 和标识保持不变,但是在进程使用受和标识保持不变,但是在进程使用受限令牌时,用户的访问权限是有限的。限令牌时,用户的访问权限是有限的。CreateRestrictedToken 函数创建一个受限令函数创建一个受限令牌。牌。访问令牌(访问令牌(Access Token)o 受限令牌对于运行不可信代码(例如电子邮受限令牌对于运行不可信代码(例如电子邮件附件)很有用。当您右键单击可执行文件,件附件)很有用。当您右键单击可执
10、行文件,选择选择“运行方式运行方式”并选择并选择“保护我的计算机保护我的计算机和数据不受未授权程序的活动影响和数据不受未授权程序的活动影响”时,时,Microsoft Windows XP 就会使用受限就会使用受限令牌。令牌。安全描述符安全描述符(Security Descriptors)o 每个命名的每个命名的 Windows 对象都有一个安全描述符,对象都有一个安全描述符,一些未命名的对象也有。它保存对象的安全配置。一些未命名的对象也有。它保存对象的安全配置。安全描述符描述对象的所有者和组安全描述符描述对象的所有者和组SID,以及对象,以及对象的的 ACL。o 对象的安全描述符通常由创建该
11、对象的函数创建。对象的安全描述符通常由创建该对象的函数创建。譬如当驱动程序调用譬如当驱动程序调用 IoCreateDevice 或或 IoCreateDeviceSecure 例程来创建设备对象例程来创建设备对象时,系统将一个安全描述符应用于创建的设备对象时,系统将一个安全描述符应用于创建的设备对象并为对象设置并为对象设置 ACL。访问控制列表(访问控制列表(Access Control Lists) o 访问控制列表访问控制列表 (ACL) 允许细粒度地控制对允许细粒度地控制对对象的访问。对象的访问。ACL 是每个对象的安全描述是每个对象的安全描述符的一部分。每个符的一部分。每个 ACL 包
12、含零个或多个访包含零个或多个访问控制条目问控制条目 (ACE)。而每个。而每个 ACE 仅包含仅包含一个一个 SID,用来标识用户、组或计算机以,用来标识用户、组或计算机以及该及该 SID 拒绝或允许的权限列表。拒绝或允许的权限列表。o 访问控制列表有两种:任意访问控制列表访问控制列表有两种:任意访问控制列表(Discretionary ACL)、系统访问控制)、系统访问控制列表(列表(System ACL)。任意访问控制列)。任意访问控制列表包含了用户和组的列表,以及相应的权限:表包含了用户和组的列表,以及相应的权限:允许或拒绝。每一个用户或组在任意访问控允许或拒绝。每一个用户或组在任意访问
13、控制列表中都有特殊的权限。而系统访问控制制列表中都有特殊的权限。而系统访问控制列表是为审核服务的,包含了对象被访问的列表是为审核服务的,包含了对象被访问的时间。时间。访问控制项(访问控制项(Access Control Entries)o 访问控制项(访问控制项(ACE)包含了用户或组的)包含了用户或组的SID以及对象的权限。访问控制项有两种:以及对象的权限。访问控制项有两种:允许访问和拒绝访问。拒绝访问的级别高于允许访问和拒绝访问。拒绝访问的级别高于允许访问。允许访问。3.1.2 Windows系统安全模型构成系统安全模型构成o Windows的安全系统提供了对事件的审核及详细的安全系统提供
14、了对事件的审核及详细的跟踪手段来监控网络上资源的访问和应用。的跟踪手段来监控网络上资源的访问和应用。o Windows系统安全模型由登录流程系统安全模型由登录流程(Logon Process,LP)、本地安全认证、本地安全认证(Local Security Authority,LSA)、安全账号管理器、安全账号管理器(Security Account Manager,SAM)和安全和安全引用监视器引用监视器(Security Reference Monitor,SRM)组合而成。组合而成。o 1登录流程登录流程o 登录流程接受本地用户的本地登录请求登录流程接受本地用户的本地登录请求或者远程用户
15、的远程登录请求,使用户和系或者远程用户的远程登录请求,使用户和系统之间建立联系。如图统之间建立联系。如图3.1所示。所示。o 登录开始,登录开始,Windows系统的系统的Winlogon进程会显示一个安全性交互对话框,要求用进程会显示一个安全性交互对话框,要求用户输入用户名、口令和用户希望登录的服务户输入用户名、口令和用户希望登录的服务器域。如果用户信息有效,系统将开始确器域。如果用户信息有效,系统将开始确认用户身份。认用户身份。Windows系统把用户信息通系统把用户信息通过安全系统传输到安全账号管理器,并对用过安全系统传输到安全账号管理器,并对用户身份进行确认。户身份进行确认。 o 登录
16、开始,登录开始,Windows系统的系统的Winlogon进程会显示一个安全性交互对话框,要求用进程会显示一个安全性交互对话框,要求用户输入用户名、口令和用户希望登录的服务户输入用户名、口令和用户希望登录的服务器域。如果用户信息有效,系统将开始确器域。如果用户信息有效,系统将开始确认用户身份。认用户身份。Windows系统把用户信息通系统把用户信息通过安全系统传输到安全账号管理器,并对用过安全系统传输到安全账号管理器,并对用户身份进行确认。户身份进行确认。 o 安全账号管理器把用户登录信息与服务器里安全账号管理器把用户登录信息与服务器里的安全账号管理数据进行比较,如果两者匹的安全账号管理数据进
17、行比较,如果两者匹配,服务器将通知工作站允许用户进行访问。配,服务器将通知工作站允许用户进行访问。Winlogon进程将调用进程将调用Win32子系统为用子系统为用户产生一个新的进程,同时服务器还将记录户产生一个新的进程,同时服务器还将记录用户的一些信息,如用户享用的特权、主目用户的一些信息,如用户享用的特权、主目录所在位置及工作站参数等。录所在位置及工作站参数等。o 然后本地安全认证开始构造访问令牌然后本地安全认证开始构造访问令牌(Access Token),与用户进行的所有),与用户进行的所有操作相连接。用户进行的操作与访问令牌一操作相连接。用户进行的操作与访问令牌一起构成一个主体(起构成
18、一个主体(Subject)。当用户要)。当用户要求访问一个对象时,主体的访问令牌的内容求访问一个对象时,主体的访问令牌的内容将与对象的存取控制列表通过一个有效性访将与对象的存取控制列表通过一个有效性访问程序进行比较,这个程序将决定允许或拒问程序进行比较,这个程序将决定允许或拒绝用户发出的访问要求。绝用户发出的访问要求。o 2本地安全认证本地安全认证o 本地安全认证是本地安全认证是Windows系统的核心,它系统的核心,它通过确认安全账号管理器中的数据信息来处通过确认安全账号管理器中的数据信息来处理用户从本地或远程的登录。理用户从本地或远程的登录。o LSA负责本地和网络登录的用户认证,要么负责
19、本地和网络登录的用户认证,要么和域控制器通信,要么和本地和域控制器通信,要么和本地SAM比较。比较。LSA首先确定是否要在本地进行认证,或提首先确定是否要在本地进行认证,或提交的凭证是否应和域控制器比较进行确认。交的凭证是否应和域控制器比较进行确认。如果认证属于本地系统,如果认证属于本地系统,LSA把凭证和把凭证和SAM数据库相比较;否则数据库相比较;否则LSA把认证请求把认证请求传送到域控制器以核实证书。传送到域控制器以核实证书。o 认证成功后,本地安全机构产生和提交与用认证成功后,本地安全机构产生和提交与用户凭证关联的安全标识符清单,并把这些标户凭证关联的安全标识符清单,并把这些标识符合并
20、到用户的安全令牌中。令牌发出后,识符合并到用户的安全令牌中。令牌发出后,大多数访问控制决策直接发生在用户进程和大多数访问控制决策直接发生在用户进程和安全引用监视器之间。除了认证工作外,安全引用监视器之间。除了认证工作外,LSA还负责把还负责把SRM产生的安全事件记入事产生的安全事件记入事件日志中。件日志中。o调用所有的认证包,检查在注册表调用所有的认证包,检查在注册表HKLMSYSTEMCurrentControlSetControlLSA下下Authentication Packages下的值,并调用该下的值,并调用该DLL进行进行认证(认证(MSV_1.DLL)。在)。在4.0版里,版里,
21、Windows NT会寻找会寻找HKLMSYSTEMCurrentControlSetControlLSA 下所有存在的下所有存在的SecurityPackages值并调用。值并调用。o重新找回本地组的重新找回本地组的SIDs和用户的权限。和用户的权限。o创建用户的访问令牌。创建用户的访问令牌。o管理本地安装的服务所使用的服务账号。管理本地安装的服务所使用的服务账号。o 储存和映射用户权限。储存和映射用户权限。o 管理审核的策略和设置。管理审核的策略和设置。o 管理信任关系。管理信任关系。o 3 安全账号管理器安全账号管理器o 安全账号管理器维护账号的安全性管理数据库,即安全账号管理器维护账号
22、的安全性管理数据库,即SAM数据库,又称目录数据库数据库,又称目录数据库(Directory Database)。该数据库包含所有用户和组的账号。该数据库包含所有用户和组的账号信息,其中包含安全标识信息,其中包含安全标识(Securityldentifier,SID)。安全标识在账号新建时被创建,直到账号。安全标识在账号新建时被创建,直到账号被删除。一旦用户账号被删除,就不能被重建,因被删除。一旦用户账号被删除,就不能被重建,因为原先的账号不再存在了。用相同的名字新建的账为原先的账号不再存在了。用相同的名字新建的账号将被赋予不同的安全标识,不会保留原有的权限。号将被赋予不同的安全标识,不会保留
23、原有的权限。o 安全账号管理器提供本地安全认证使用的用户有效安全账号管理器提供本地安全认证使用的用户有效身份服务,使用安全账号管理器数据库来审计用户身份服务,使用安全账号管理器数据库来审计用户登录时输人的信息,并给用户返回一个安全标识及登录时输人的信息,并给用户返回一个安全标识及用户所属组的安全标识。当用户登录入网时,本地用户所属组的安全标识。当用户登录入网时,本地安全认证将创建一个访问令牌,该访问令牌包含用安全认证将创建一个访问令牌,该访问令牌包含用户名、用户所属的组及安全标识等信息,用户所有户名、用户所属的组及安全标识等信息,用户所有的程序将拥有访问令牌的拷贝。当用户要求访问一的程序将拥有
24、访问令牌的拷贝。当用户要求访问一个对象时,系统将把访问令牌中的安全标识与对象个对象时,系统将把访问令牌中的安全标识与对象的访问控制列表的访问控制列表(Access Control List,ACL)进行对比,以确认用户是否具有对对象的访问权限进行对比,以确认用户是否具有对对象的访问权限.o 根据网络的配置,在一个或多个根据网络的配置,在一个或多个Windows系统中可能存在不同的安全账号管理数据库。系统中可能存在不同的安全账号管理数据库。在登录时存取的安全账号管理数据库取决于在登录时存取的安全账号管理数据库取决于用户是以工作站上的用户账号登录,还是以用户是以工作站上的用户账号登录,还是以网络账
25、号登录。当一个用户在每一台工作站网络账号登录。当一个用户在每一台工作站上都有独立账号时,登录时存取的安全账号上都有独立账号时,登录时存取的安全账号管理数据库就位于用户登录的工作站上。管理数据库就位于用户登录的工作站上。o 在一个有集中存放的用户账号的网络设置在一个有集中存放的用户账号的网络设置(如单域模式如单域模式)中,在域控制器上有一个集中中,在域控制器上有一个集中的安全账号管理数据库。如果以工作站上的的安全账号管理数据库。如果以工作站上的账号登录,存取在工作站上的安全账号管理账号登录,存取在工作站上的安全账号管理数据库;如果以域上的账号登录,则存取在数据库;如果以域上的账号登录,则存取在域
26、控制器上的安全账号管理数据库。域控制器上的安全账号管理数据库。o在另一种有集中存放用户账号的网络设置在另一种有集中存放用户账号的网络设置(如主控域的网络设如主控域的网络设置置)中,在主域控制器中,在主域控制器(MasterDomain Controller)上有上有一个被同时复制到该域的所有备份域控制器一个被同时复制到该域的所有备份域控制器(Backup DomainController)上的安全账号管理数据库。如果以工作上的安全账号管理数据库。如果以工作站上的用户账号登录,访问工作站上的安全账号管理数据库;站上的用户账号登录,访问工作站上的安全账号管理数据库;如果以域上的用户账号登录,那么访
27、问在主域控制器或备份域如果以域上的用户账号登录,那么访问在主域控制器或备份域控制器上的安全账号管理数据库。备份域控制器分担主域控制控制器上的安全账号管理数据库。备份域控制器分担主域控制器上用户请求的有效性确认工作。器上用户请求的有效性确认工作。o被设置为单列服务器被设置为单列服务器(Stand Alone Server)的的Windows系统不做用户在域内的身份验证工作。系统不做用户在域内的身份验证工作。o 4安全引用监视器安全引用监视器o 安全引用监视器是安全引用监视器是Windows系统的一个组系统的一个组成部分,它以内核模式成部分,它以内核模式(Kernel Mode)运运行,负责检查行
28、,负责检查Windows系统的存取合法性,系统的存取合法性,以保护资源,使其免受非法存取和修改。安以保护资源,使其免受非法存取和修改。安全引用监视器为对象的有效访问提供服务并全引用监视器为对象的有效访问提供服务并为用户提供访问权限,同时还能够阻止非授为用户提供访问权限,同时还能够阻止非授权用户访问对象。权用户访问对象。o 为了确保所有类型对象都得到保护,安全引用监视为了确保所有类型对象都得到保护,安全引用监视器在系统中只维护一个有效性的复制访问代码。用器在系统中只维护一个有效性的复制访问代码。用户在要求访问对象时,必须通过安全引用监视器的户在要求访问对象时,必须通过安全引用监视器的有效验证,而
29、不能直接访问对象。有效验证,而不能直接访问对象。o 安全引用监视器对用户是透明的,它是系统维护合安全引用监视器对用户是透明的,它是系统维护合法性检验的唯一组件,并能保护所有的对象。安全法性检验的唯一组件,并能保护所有的对象。安全引用监视器还产生由本地安全权威记载的日志信息。引用监视器还产生由本地安全权威记载的日志信息。3.1.3 Windows Vista的安全模型的安全模型o Windows Vista 为用户帐户引进了一种为用户帐户引进了一种新的安全模型。新的安全模型。 此模型也在此模型也在 Windows 7 和和 Windows Server 2008 中使用,提中使用,提供了一种更安
30、全可信的环境。与供了一种更安全可信的环境。与 Windows XP 相似,新的安全模型包括相似,新的安全模型包括标准用户帐户和管理员帐户。标准用户帐户和管理员帐户。 o 新的安全模型不会在所有时间都授予管理特新的安全模型不会在所有时间都授予管理特权。甚至当管理员执行不需要更高特权的非权。甚至当管理员执行不需要更高特权的非管理任务时,也是在标准特权下运行。这样管理任务时,也是在标准特权下运行。这样做更加安全,因为用户不再使用可能被恶意做更加安全,因为用户不再使用可能被恶意利用的不必要的特权来运行。此功能称为利用的不必要的特权来运行。此功能称为“用户访问控制用户访问控制”,或简称为,或简称为 UA
31、C。o 默认情况下,操作系统以默认情况下,操作系统以“管理员批准模式管理员批准模式”运行。运行。在管理员批准模式下,无论您是作为标准用户还是在管理员批准模式下,无论您是作为标准用户还是管理员运行,每当您尝试执行需要管理员特权的操管理员运行,每当您尝试执行需要管理员特权的操作时,都会出现作时,都会出现 UAC 对话框。如果您是作为标准对话框。如果您是作为标准用户运行,则用户运行,则 UAC 对话框会提示您输入继续运行对话框会提示您输入继续运行所需的管理员帐户名和密码。如果是作为管理员运所需的管理员帐户名和密码。如果是作为管理员运行,行,UAC 对话框会要求您确认您想要使用当前管对话框会要求您确认
32、您想要使用当前管理员凭据来执行过程。该对话框还提供了一个输入理员凭据来执行过程。该对话框还提供了一个输入新管理员帐户名和密码来继续执行操作的选项。新管理员帐户名和密码来继续执行操作的选项。3.2.1 对象对象o 对象对象(Objects)是是Windows系统安全环境中基系统安全环境中基本的操作单元。本的操作单元。Windows系统的各种资源以对象系统的各种资源以对象的形式来组织,例如的形式来组织,例如File Object, Driver Object, Device Object等等,但实际上这些所等等,但实际上这些所谓的谓的“对象对象”在系统的对象管理器(在系统的对象管理器(Object
33、 Manager)看来只是完整对象的一个部分)看来只是完整对象的一个部分对对象实体(象实体(Object Body)。)。Windows XP中有中有31种不同类型的对象,种不同类型的对象,Object Body反映了某反映了某一类型对象的特征信息。一类型对象的特征信息。 o 对象为对象为Windows系统提供了较高的安全级。系统提供了较高的安全级。从外部来看,它们把数据隐藏起来并只按对从外部来看,它们把数据隐藏起来并只按对象的功能所定义的方式提供信息,建立起一象的功能所定义的方式提供信息,建立起一个保护层,可以有效地防止外部程序对网络个保护层,可以有效地防止外部程序对网络数据的直接访问。数据
34、的直接访问。Windows系统正是通过系统正是通过阻止程序直接访问对象来获得较高的安全级阻止程序直接访问对象来获得较高的安全级的,所有对对象的操作都必须事先得到授权的,所有对对象的操作都必须事先得到授权并由并由Windows系统来执行系统来执行 o 在在Windows系统中,可以用安全描述器系统中,可以用安全描述器(Security Descriptor)或访问令牌来设定对象或访问令牌来设定对象的属性,从而使对象得到保护。的属性,从而使对象得到保护。o 对象有两种类型:复合对象和原子对象。包含其它对象有两种类型:复合对象和原子对象。包含其它对象作为其组成成分的对象称为复合对象对象作为其组成成分
35、的对象称为复合对象,复合对复合对象更增强了抽象数据类型的能力;原子对象则不能象更增强了抽象数据类型的能力;原子对象则不能容纳别的对象。例如,目录是复合对象,而文件则容纳别的对象。例如,目录是复合对象,而文件则是原子对象。在父对象中生成的子对象可以拥有父是原子对象。在父对象中生成的子对象可以拥有父对象所拥有的许可权限。对象所拥有的许可权限。3.2.2 共享资源共享资源o共享资源共享资源(Shared Resource)是指提供出来以便通过网络是指提供出来以便通过网络进行应用的任何对象。最常用的共享资源包括:文件、目录和进行应用的任何对象。最常用的共享资源包括:文件、目录和打印机等,打印机等,Wi
36、ndows系统也会建立一些特殊的共享对象。建系统也会建立一些特殊的共享对象。建立共享对象的用户或进程被称为共享对象的所有者立共享对象的用户或进程被称为共享对象的所有者(Owner)。o共享资源的所有者能够进一步决定共享对象的权限。当用户需共享资源的所有者能够进一步决定共享对象的权限。当用户需要共享某一个对象时,用户必须为共享资源选择一个唯一要共享某一个对象时,用户必须为共享资源选择一个唯一(Unique)的名字,然后赋予其他的用户和组以不同的访问权的名字,然后赋予其他的用户和组以不同的访问权限。在该系列过程设定以后,通常限。在该系列过程设定以后,通常Windows系统会为共享资系统会为共享资源
37、创建安全描述符源创建安全描述符(Security Descriptor),安全描述符包,安全描述符包含一组安全属性,以确保共享资源阻止非授权访问。含一组安全属性,以确保共享资源阻止非授权访问。o共享资源的访问权限共享资源的访问权限(Share Permissions)共有以下几种。共有以下几种。o1完全控制完全控制(Full Control):用户可以读取、修改、添加新:用户可以读取、修改、添加新文件,修改目录及修改该文件的许可权。用户还可拥有该目录文件,修改目录及修改该文件的许可权。用户还可拥有该目录及其文件的所有权。及其文件的所有权。o2拒绝访问拒绝访问(No Access):用户被拒绝访
38、问。:用户被拒绝访问。o3读取读取(Read):用户可以读取文件,但不能修改现有文件:用户可以读取文件,但不能修改现有文件的内容。的内容。o4更改更改(Change):用户可以读取文件,将文件添加给目录,:用户可以读取文件,将文件添加给目录,并可以修改现有文件的内容。并可以修改现有文件的内容。3.3.1 FAT文件系统文件系统o 1FAT16文件系统文件系统o FAT16文件系统是最早用于小型磁盘和简单文件文件系统是最早用于小型磁盘和简单文件结构的简单文件系统。结构的简单文件系统。FAT16文件系统得名于它文件系统得名于它的组织方法:采用的组织方法:采用FAT16文件系统格式化的卷文件系统格式
39、化的卷(卷卷是格式化后由文件系统使用的分区或分区集合是格式化后由文件系统使用的分区或分区集合)以以簇的形式进行分配。默认簇的大小由卷的大小决定。簇的形式进行分配。默认簇的大小由卷的大小决定。对于对于FAT16文件系统,簇数目必须可以用文件系统,簇数目必须可以用16位的位的二进制数字表示,并且是二进制数字表示,并且是2的乘方。的乘方。o 如果用户使用如果用户使用Windows 95、MS-DOS、OS2等操作系统,建议使用等操作系统,建议使用FAT16文件文件系统格式。不过,需要注意的是,系统格式。不过,需要注意的是,FAT16文件系统最好用在较小的卷上,因为在不考文件系统最好用在较小的卷上,因
40、为在不考虑簇大小的情况下,使用虑簇大小的情况下,使用FAT16文件系统,文件系统,卷不能大于卷不能大于2GB。o 较之较之FATl6,FAT32最大的优势是它支持最大的优势是它支持分区的能力远远大于分区的能力远远大于FATl6。FATl6最大最大只能支持只能支持4GB,而,而FAT32却可达到却可达到2047GB(其中其中4GB用于分区容量的扩充用于分区容量的扩充),但在但在Windows 2000中的中的FAT32最大只最大只能使用能使用32GB。FAT32比比FAT16支持更小支持更小的簇和更大的卷,这就使得的簇和更大的卷,这就使得FAT32卷的空卷的空间分配更有效率。间分配更有效率。3.
41、3.2 NTFSo NTFS(New Technology File System)文件系统最早出现在文件系统最早出现在1993年的年的Windows NT操操作系统中,它的出现大幅度地提高了微软原来的作系统中,它的出现大幅度地提高了微软原来的FAT文件系统的性能。文件系统的性能。NTFS是一个日志系统,这是一个日志系统,这意味着除了向磁盘中写入信息,该文件系统还会为意味着除了向磁盘中写入信息,该文件系统还会为所发生的所有改变保留一份日志。这一功能让所发生的所有改变保留一份日志。这一功能让NTFS文件系统在发生错误的时候(比如系统崩溃文件系统在发生错误的时候(比如系统崩溃或电源供应中断)更容易
42、恢复,也让这一系统更加或电源供应中断)更容易恢复,也让这一系统更加强壮。在这些情况下,强壮。在这些情况下,NTFS能够很快恢复正常,能够很快恢复正常,而且不会丢失任何数据。而且不会丢失任何数据。 o NTFS另一个引人注目的特点,即良好的安另一个引人注目的特点,即良好的安全性全性,是是NTFS成为成为Windows网络中最常网络中最常用的文件系统的最主要的原因。用的文件系统的最主要的原因。NTFS的安的安全系统非常强大,可以对文件系统中对象的全系统非常强大,可以对文件系统中对象的访问权限(允许或禁止)做非常精细的设置。访问权限(允许或禁止)做非常精细的设置。NTFS Master File T
43、able (MFT)中)中包含了一个包含了一个NTFS分区中所有文件的记录。分区中所有文件的记录。o 每个每个MFT入口都有一个特殊的入口都有一个特殊的metadata标签,叫做标签,叫做SD(security descriptor,安全描述符),这个标签中包含了谁可以访安全描述符),这个标签中包含了谁可以访问这个文件或文件夹的所有控制信息。每个问这个文件或文件夹的所有控制信息。每个SD标签都包含了一个用户列表,这个列表标签都包含了一个用户列表,这个列表被称为被称为Access Control List (ACL访问访问控制列表),只有包含在这个列表里的用户控制列表),只有包含在这个列表里的用
44、户才被允许访问该对象。才被允许访问该对象。oNTFS是一个元数据驱动的系统。事实上,当你第一次创建是一个元数据驱动的系统。事实上,当你第一次创建NTFS分区的时候,很多元数据文件就被创建了,每个元数据分区的时候,很多元数据文件就被创建了,每个元数据文件都帮助跟踪文件系统中某个特定的对象。文件都帮助跟踪文件系统中某个特定的对象。o每个每个NTFS分区都会有一个分区都会有一个Master File Table,这个关联文,这个关联文件被命名为件被命名为$MFT。事实上,。事实上,NTFS创建了两个创建了两个MFT文件。第文件。第一个是一个是$MFT,被存放在,被存放在NTFS分区的开头。为了增强可
45、靠性,分区的开头。为了增强可靠性,NTFS分区还有一个名为分区还有一个名为$MFTMirr的的MTF文件。在文件。在Windows NT 4.0及其后的版本中,这个文件都被存放在及其后的版本中,这个文件都被存放在NTFS分区的末尾。在分区的末尾。在Windows NT 3.51及以前的版本中,及以前的版本中,这个这个MFT镜像文件被存放在分区的中间。镜像文件被存放在分区的中间。 3.3.3 其他常用文件系统其他常用文件系统o1CIFSo通用通用Internet文件系统文件系统(Common Internet File System,CIFS)是是Internet迅猛发展的直接结果,是计算迅猛发
46、展的直接结果,是计算机用户在企业内部网和因特网上共享文件的标准方法。机用户在企业内部网和因特网上共享文件的标准方法。CIFS作为一种协议为作为一种协议为Internet网络间文件、对象的共享操作提供网络间文件、对象的共享操作提供了无缝联结。了无缝联结。CIFS是一种开放、跨平台的技术,它基于是一种开放、跨平台的技术,它基于Microsoft Windows和其他和其他PC操作系统内嵌的本地文件共操作系统内嵌的本地文件共享协议服务器消息块享协议服务器消息块(Server Message Block,SMB),并进行了增强,而且获得了广泛的平台支持,包括并进行了增强,而且获得了广泛的平台支持,包括
47、UNIX,VMS和和Macintosh。o 2EFSo EFS(Encrypting File System,加密文件系,加密文件系统)是统)是NTFS5的一个新属性,可为文件或目录进的一个新属性,可为文件或目录进行加密。它提供了在磁盘上存储行加密。它提供了在磁盘上存储NTFS文件的核心文件的核心文件加密技术。文件加密技术。EFS加密技术是基于公开密钥并以加密技术是基于公开密钥并以整体的系统服务形式运行,加密和解密都是在文件整体的系统服务形式运行,加密和解密都是在文件操作过程中进行的。任何不知晓密文的用户,试图操作过程中进行的。任何不知晓密文的用户,试图去访问加密文件的行为都是徒劳的,系统将会
48、产生去访问加密文件的行为都是徒劳的,系统将会产生“访问拒绝访问拒绝”的信息框来拒绝该用户的访问。这样的信息框来拒绝该用户的访问。这样就能使它易于管理而难于被攻击,并且对文件所有就能使它易于管理而难于被攻击,并且对文件所有者是透明的。者是透明的。 o EFS是是Windows 2000/ Windows 2003/XP/VISTA所特有的一个实用功能,对所特有的一个实用功能,对于于NTFS卷上的文件和数据,都可以直接被操作系卷上的文件和数据,都可以直接被操作系统加密保存。如果硬盘上的文件已经使用统加密保存。如果硬盘上的文件已经使用EFS进行进行了加密,即使一个攻击者能访问到硬盘上,由于没了加密,
49、即使一个攻击者能访问到硬盘上,由于没有解密的密钥,文件也是不可用的,在很大程度上有解密的密钥,文件也是不可用的,在很大程度上提高了数据的安全性。这种特性对于移动用户、通提高了数据的安全性。这种特性对于移动用户、通过宽带连接的用户、对敏感数据有更高安全要求的过宽带连接的用户、对敏感数据有更高安全要求的机构的益处是显而易见的。机构的益处是显而易见的。 o EFS可以被认为是除可以被认为是除NTFS外的第二层防护,为访外的第二层防护,为访问一个被加密的文件,用户必须有访问到文件的问一个被加密的文件,用户必须有访问到文件的NTFS权限。有相关权限。有相关NTFS权限的用户能看到文件权限的用户能看到文件
50、夹中的文件,但不能打开文件,除非有相应的解密夹中的文件,但不能打开文件,除非有相应的解密密钥。同样,一个用户有相应的密钥但没有相应的密钥。同样,一个用户有相应的密钥但没有相应的NTFS权限也不能访问到文件。所以一个用户要能权限也不能访问到文件。所以一个用户要能打开加密的文件,同时需要打开加密的文件,同时需要NTFS权限和解密密钥。权限和解密密钥。 o3. DFSo分布式文件系统分布式文件系统(Distributed File System,DFS)是是Windows 2000以后版本中的一个功能强大的工具。利用分以后版本中的一个功能强大的工具。利用分布式文件系统,系统管理员可以使用户更加方便地