Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,*,*,*,系统访问控制与审计技术,本章学习目标:,了解几种基本的访问控制技术,熟悉常用操作系统的安全技术,了解操作系统的审计技术,11.1,访问控制技术,访问控制是在保障授权用户能获取所需资源的同时拒绝非授权用户的安全机制访问控制也是信息安全理论基础的重要组成部分本章讲述访问控制的原理、作用、分类和研究前沿,重点介绍较典型的自主访问控制、强制访问控制和基于角色的访问控制11.1.1,访问控制技术的概念,11.1,访问控制技术,访问控制与其他安全措施之间的关系可以用图,11-1,来简要说明在用户身份认证,(,如果必要,),和授权之后,访问控制机制将根据预先设定的规则对用户访问某项资源,(,目标,),进行控制,只有规则允许时才能访问,违反预定的安全规则的访问行为将被拒绝资源可以是信息资源、处理资源、通信资源或者物理资源,访问方式可以是获取信息、修改信息或者完成某种功能,一般情况可以理解为读、写或者执行。
11.1.2,访问控制原理,11.1,访问控制技术,11.1.2,访问控制原理,访问控制的目的是为了限制访问主体对访问客体的访问权限,从而使计算机系统在合法范围内使用;它决定用户能做什么,也决定代表一定用户身份的进程能做什么访问控制一般包括三种类型:,自主访问控制,、,强制访问控制,和,基于角色的访问控制,11.1,访问控制技术,11.1.2,访问控制原理,自主访问控制(,Discretionary Access Control,,,DAC,)是一种常用的访问控制方式,它基于对主体或主体所属的主体组的识别来限制对客体的访问,这种控制是自主的自主是指主体能够自主的,(,可能是间接的,),将访问权或访问权的某个子集授予其他主体1,自主访问控制,自主访问控制是一种比较宽松的访问控制,一个主体的访问权限具有传递性传递可能会给系统带来安全隐患,某个主体通过继承其他主体的权限而得到了它本身不应具有的访问权限,就可能破坏系统的安全性这是自主访问控制方式的缺点为了实现完整的自主访问系统,访问控制一般由一个矩阵来表示矩阵中的一行表示一个主体的所有权限;一列则是关于一个客体的所有权限;矩阵中的元素是该元素所在行对应的主体对该元素所在列对应的客体的访问权限。
具体实现时,往往是基于矩阵的行或者列来表达访问控制信息11.1,访问控制技术,11.1.2,访问控制原理,访问控制表,(Access Control List,,,ACL),是基于访问控制矩阵中列的自主访问控制1,自主访问控制,(,续,),(,1,)访问控制表,对系统中一个需要保护的客体,O,j,附加的访问控制表的结构如,下,图所示,在上图的例子中,对于客体,O,j,主体,S,0,具有读,(r),和执行,(e),的权利;主体,S,1,只有读的权利;主体,S,2,只有执行的权利;主体,S,m,具有读、写,(w),和执行的权利11.1,访问控制技术,11.1.2,访问控制原理,1,自主访问控制,(,续,),(2),访问能力表,访问能力表,(Access Capabilities List),是最常用的基于行的自主访问控制能力,(capability),是为主体提供的、对客体具有特定访问权限的不可伪造的标志,它决定主体是否可以访问客体以及以什么方式访问客体主体可以将能力转移给为自己工作的进程,在进程运行期间,还可以添加或者修改能力能力的转移不受任何策略的限制,所以对于一个特定的客体,不能确定所有有权访问它的主体。
因此,访问能力表不能实现完备的自主访问控制,而访问控制表是可以实现的11.1,访问控制技术,11.1.2,访问控制原理,2,强制访问控制,强制访问控制系统为所有的主体和客体指定安全级别,,比如绝密级、机密级、秘密级和无密级不同级别标记了不同重要程度和能力的实体不同级别的主体对不同级别的客体的访问是在强制的安全策略下实现的在强制访问控制机制中,将安全级别进行排序,如按照从高到低排列,,规定高级别可以单向访问低级别,,也可以规定低级别可以单向访问高级别这种访问可以是读,也可以是写或修改1,)保障信息完整性策略2,)保障信息机密性策略自主访问控制较弱,而强制访问控制又太强,会给用户带来许多不便因此,实际应用中,往往将自主访问控制和强制访问控制结合在一起使用自主访问控制作为基础的、常用的控制手段;强制访问控制作为增强的、更加严格的控制手段11.1,访问控制技术,11.1.2,访问控制原理,3,基于角色的访问控制,基于角色的访问控制模式,(Role Based Access Control,,,RBAC),中,用户不是自始至终以同样的注册身份和权限访问系统,而是以一定的角色访问,不同的角色被赋予不同的访问权限,系统的访问控制机制只看到角色,而看不到用户。
用户在访问系统前,经过角色认证而充当相应的角色用户获得特定角色后,系统依然可以按照自主访问控制或强制访问控制机制控制角色的访问能力1,)角色的概念,在基于角色的访问控制中,角色,(role),定义为与一个特定活动相关联的一组动作和责任系统中的主体担任角色,完成角色规定的责任,具有角色拥有的权限一个主体可以同时担任多个角色,它的权限就是多个角色权限的总和基于角色的访问控制就是通过各种角色的不同搭配授权来尽可能实现主体的最小权限,(,最小授权指主体在能够完成所有必需的访问工作基础上的最小权限,),11.1,访问控制技术,11.1.2,访问控制原理,3,基于角色的访问控制,(,2,)基于角色的访问控制,基于角色的访问控制就是通过定义角色的权限,为系统中的主体分配角色来实现访问控制的用户先经认证后获得一定角色,该角色被分派了一定的权限,用户以特定角色访问系统资源,访问控制机制检查角色的权限,并决定是否允许访问这种访问控制方法的具体特点如下:,1,)提供了三种授权管理的控制途径,2,)系统中所有角色的关系结构可以是层次化的,便于管理3,)具有较好的提供最小权利的能力,从而提高了安全性4,)具有责任分离的能力。
11.2 Windows 2000,的访问控制,11.2.1 Windows,的安全模型与基本概念,1,安全模型,Windows,的安全模型由以下几个关键部分构成:,1,)登录过程,(Logon Process,,,LP),接受本地用户或者远程用户的登录请求,处理用户信息,为用户做一些初始化工作2,)本地安全授权机构,(Local Security Authority,,,LSA),根据安全账号管理器中的数据处理本地或者远程用户的登录信息,并控制审计和日志这是整个安全子系统的核心3,)安全账号管理器,(Security Account Manager,,,SAM),维护账号的安全性管理数据库,(SAM,数据库,又称目录数据库,),4,)安全引用监视器,(Security Reference Monitor,,,SRM),检查存取合法性,防止非法存取和修改这几部分在访问控制的不同阶段发挥了各自的作用11.2 Windows 2000,的访问控制,11.2.1 Windows,的安全模型与基本概念,2,安全概念,1,)安全标识,(Security Identifier,,,SID),:安全标识和账号唯一对应,在账号创建时创建,账号删除时删除,而且永不再用。
安全标识与对应的用户和组的账号信息一起存储在,SAM,数据库里2,)访问令牌,(Access Token),当用户登录时,本地安全授权机构为用户创建一个访问令牌,包括用户名、所在组、安全标识等信息3,)主体,用户登录到系统之后,本地安全授权机构为用户构造一个访问令牌,这个令牌与该用户所有的操作相联系,用户进行的操作和访问令牌一起构成一个主体4,)对象、资源、共享资源,对象的实质是封装了数据和处理过程的一系列信息集合体资源是用于网络环境的对象共享资源是在网络上共享的对象5,)安全描述符,(,Security Descript,)Windows,系统会为共享资源创建安全描述符,包含了该对象的一组安全属性,安全描述符分为四个部分:,所有者安全标识,(Owner SecurityID),拥有该对象的用户或者用户组的,SD,组安全标识,(GroupSecurity),自主访问控制表,(Discretionary Access Control List,,,DAC),该对象的访问控制表,由对象的所有者控制系统访问控制表,(System Access Control List,,,ACL),定义操作系统将产生何种类型的审计信息,由系统的安全管理员控制。
其中,安全描述符中的每一个访问控制表,(ACL),都由访问控制项,(Access Control Entries,,,ACEs),组成,用来描述用户或者组对对象的访问或审计权限ACEs,有三种类型:,Access Allowed,、,Access Denied,和,System Audit,前两种用于自主访问控制;后一种用于记录安全日志11.2 Windows 2000,的访问控制,11.2.1 Windows,的安全模型与基本概念,2,安全概念,(,续,),Cacls,命令,当一个账号被创建时,,Windows,系统为它分配一个,SID,,并与其他账号信息一起存入,SAM,数据库每次用户登录时,登录主机,(,通常为工作站,),的系统首先把用户输入的用户名、口令和用户希望登录的服务器域信息送给安全账号管理器,安全账号管理器将这些信息与,SAM,数据库中的信息进行比较,如果匹配,服务器发给工作站允许访问的信息,并返回用户的安全标识和用户所在组的安全标识,工作站系统为用户生成一个进程服务器还要记录用户账号的特权、主目录位置、工作站参数等信息然后,本地安全授权机构为用户创建访问令牌,包括用户名、所在组、安全标识等信息。
此后用户每新建一个进程,都将访问令牌复制作为该进程的访问令牌当用户或者用户生成的进程要访问某个对象时,安全引用监视器将用户进程的访问令牌中的,SID,与对象安全描述符中的自主访问控制表进行比较,从而决定用户是否有权访问对象11.2 Windows 2000,的访问控制,11.2.2 Windows,的访问控制过程,11.2 Windows 2000,的访问控制,11.2.2 Windows,的访问控制过程,资源的,本地,访问权限,共有以下,六,种,,每一种权限都可设置为允许或拒绝1,)完全控制,2,),修改,3,)读,取及运行,4,),列出文件夹目录,5,),读取,6,),写入,资源的共享访问权限,共有以下四种:,1,)完全控制,2,)读,取,3,)更改,4,)拒绝访问,11.2 Windows 2000,的访问控制,11.2.3 Windows 2000 Server,系统安全设置,1,用户管理,删除所有不需要的账号,禁用所有暂时不用的账号一定要禁用,“,guest,”,用户重命名,系统默认的管理员,“,Administrator,”,,,然后再创建一个名为,“,Administrator,”,的用户,并分配给这个新用户一个复杂无比的口令,最后不让它属于任何组。
2,使用,NTFS,文件系统,FAT32,无法提供用户所需的针对于本地的单个文件与目录的权限设置NTFS,格式是服务器必须的,使用,FAT32,文件系统没有安全性可言3,不让系统显示上次登录的用户名,通过修改,“管理工具”中的,“,本地安全策略,”的相应选项,或修改系统注册表来,实现,11.2 Wind。