《《自主访问控制》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《自主访问控制》PPT课件.ppt(53页珍藏版)》请在三一办公上搜索。
1、操作系统的安全,6.1操作系统安全基础 操作系统安全的概念 操作系统安全是指该系统能够控制外部对系统信息的访问,即只有经过授权的用户(或进程)才能对信息资源进行相应的读、写、删除等操作,以保护合法用户对授权资源的使用,防止非法入侵者对系统资源的侵占与破坏。操作系统安全一般包括两层意思:一是操作系统在设计时通过权限访问控制、信息加密性保护、完整性鉴定等一些机制实现的安全;二是操作系统在使用中通过一系列的配置,保证操作系统尽量避免由于实现时的缺陷或是应用环境因素产生的不安因素。只有通过这两方面的同时努力,才能最大可能地建立安全的操作环境。,安全操作系统,安全操作系统的含义是在操作系统的工作范围之内
2、,提供尽可能强的访问控制和审计机制,在用户与应用程序之间和系统硬件与资源之间进行符合安全政策的调度,限制非法的访问,在信息系统的最底层进行保护。,6.2访问控制技术 访问控制的概念,1什么是访问控制 访问控制是指主体依据某些控制策略或权限对客体本 身或是其资源进行的不同授权访问。访问控制是在身份认证的基础上,根据身份对提出的资源访问请求加以控制,是针对越权使用资源的现象进行防御的措施。访问控制是网络安全防范和保护的主要策略,它可以限制对关键资源的访问,防止非法用户或合法用户的不慎操作所造成的破坏。,访问控制的目的和作用,是为了限制访问主体(用户、进程、服务等)对访问客体(文件、系统等)的访问权
3、限,从而使计算机系统在合法范围内使用;决定用户能做什么,也决定代表一定用户利益的程序能做什么。,目的:,作用:,是对需要访问系统及其数据的人进行鉴别,并验证其合法身份;也是进行记账、审计等的前提。,访问控制系统的三个要素,主体(Subject)客体(Object)访问策略,访问控制的实现过程,1 认证2 访问策略的实现3 审计,访问控制的一般实现机制和方法,一般实现机制 基于访问控制属性 访问控制表/矩阵 基于用户和资源分档(“安全标签”)多级访问控制常见实现方法 访问控制表(ACL)访问能力表(Capabilities)授权关系表,访问控制列表(Access Control List),访问
4、控制列表是从客体角度进行设置的、面向客体的访问控制。每个客体有一个访问控制列表,用来说明有权访问该客体的所有主体及其访问权限,如下图所示。图中说明了不同主体对客体(PAYROLL文件)的访问权限。其中,PAYROLL的访问控制列表如下,Access Control Lists,access matrix,given system has identified a user determine what resources they can accessgeneral model is that of access matrix withsubject-active entity(user,pr
5、ocess)object-passive entity(file or resource)access right way object can be accessedcan decompose bycolumns as access control listsrows as capability tickets,Access Control Matrix,。直观地看,访问控制矩阵是一张表格,每行代表一个用户(即主体),每列代表一个存取目标(即客体),表中纵横对应的项是该用户对该存取客体的访问权集合(权集)。下图是访问控制矩,访问权限Readallows the user to read th
6、e file or view the file attributes.Writeallows the user to write to the file,which may include creating,modifying,or appending onto the file.Executethe user may load the file and execute it.Deletethe user may remove this file from the system.Listallows the user to view the files attributes.,:Access
7、Control Lists,访问控制能力列表,能力表是访问控制矩阵的另一种表示方式。在访问控制矩阵表中可以看到,矩阵中存在一些空项(空集),这意味着有的用户对一些客体不具有任何访问或存取的权力,显然保存这些空集没有意义。能力表的方法是对存取矩阵的改进,它将矩阵的每一列作为一个客体而形成一个存取表。每个存取表只由主体、权集组成,无空集出现。为了实现完善的自主访问控制系统,由访问控制矩阵提供的信息必须以某种形式保存在系统中,这种形式就是用访问控制表,访问控制的一般策略,自主访问控制(DAC)自主访问控制(Discretionary Access Control)是一种最为普遍的访问控制手段,其依据
8、是用户的身份和授权,并为系统中的每个用户(或用户组)和客体规定了用户允许对客体进行访问的方式。每个用户对客体进行访问的要求都要经过规定授权的检验,如果授权中允许用户以这种方式访问客体,则访问就可以得到允许,否则就不予许可。,Discretionary Access Controls,自主访问控制任意访问控制:根据主体身份或者主体所属组的身份或者二者的结合,对客体访问进行限制的一种方法。最常用的一种方法,这种方法允许用户自主地在系统中规定谁可以存取它的资源实体,即用户(包括用户程序和用户进程)可选择同其他用户一起共享某个文件。自主:指具有授与某种访问权力的主体能够自己决定是否将访问权限授予其他的
9、主体。安全操作系统需要具备的特征之一就是自主访问控制,它基于对主体或主体所属的主体组的识别来限制对客体的存取。客体:文件,邮箱、通信信道、终端设备等。,访问控制的策略自主访问控制,特点:根据主体的身份和授权来决定访问模式。缺点:信息在移动过程中其访问权限关系会被改变。如用户A可将其对目标O的访问权限传递给用户B,从而使不具备对O访问权限的B可访问O。,自主访问控制面临的最大问题是:在自主访问控制中,具有某种访问权的主体能够自行决定将其访问权直接或间接地转交给其它主体。自主访问控制允许系统的用户对于属于自己的客体,按照自己的意愿,允许或者禁止其它用户访问。在基于DAC的系统中,主体的拥有者负责设
10、置访问权限。也就是说,主体拥有者对访问的控制有一定权利。但正是这种权利使得信息在移动过程中,其访问权限关系会被改变。如用户A可以将其对客体目标O的访问权限传递给用户B,从而使不具备对O访问权限的B也可以访问O,这样做很容易产生安全漏洞,所以自主访问控制的安全级别很低。,Mandatory Access Controls,根据客体中信息的敏感标记和访问敏感信息的主体的访问级对客体访问实行限制 用户的权限和客体的安全属性都是固定的 所谓“强制”就是安全属性由系统管理员人为设置,或由操作系统自动地按照严格的安全策略与规则进行设置,用户和他们的进程不能修改这些属性。所谓“强制访问控制”是指访问发生前,
11、系统通过比较主体和客体的安全属性来决定主体能否以他所希望的模式访问一个客体。,强制访问控制的实质是对系统当中所有的客体和所有的主体分配敏感标签(Sensitivity Label)。用户的敏感标签指定了该用户的敏感等级或者信任等级,也被称为安全许可(Clearance);而文件的敏感标签则说明了要访问该文件的用户所必须具备的信任等级。强制访问控制就是利用敏感标签来确定谁可以访问系统中的特定信息的。,Sensitivity Label,SECRET VENUS,TANK,ALPHA Classification categories,Mandatory Access Controls,在强制访问
12、控制中,它将每个用户及文件赋于一个访问级别,如:绝密级(Top Secret)、机密级(Secret)、秘密级(Confidential)及普通级(Unclassified)。其级别为T,实现四种访问控制读写关系:下读(read down):用户级别大于文件级别的读操作;上写(Write up):用户级别低于文件级别的写操作;下写(Write down):用户级别大于文件级别的写操作;上读(read up):用户级别低于文件级别的读操作;,Rules 三个因素,主体的标签,即你的安全许可TOP SECRET VENUS TANK ALPHA客体的标签,例如文件LOGISTIC的敏感标签如下:S
13、ECRET VENUS ALPHA 访问请求,例如你试图读该文件,examples,访问控制的策略强制访问控制,特点:1.将主题和客体分级,根据主体和客体的级别标记来决定 访问模式。如,绝密级,机密级,秘密级,无密级。2.其访问控制关系分为:上读/下写,下读/上写(完整性)(机密性)3.通过梯度安全标签实现单向信息流通模式。,访问控制的策略自主/强制访问的问题,1.自主式太弱2.强制式太强3.二者工作量大,不便管理 例:1000主体访问10000客体,须1000万次配置。如每次配置需1秒,每天工作8小时,就需 10,000,000/(3600*8)=347.2天,访问控制的策略基于角色的访问控
14、制Role-Based Access Controls,角色概念 A role can be defined as a set of actions and responsibilities associated with a particular working activity.角色与组的区别组:用户集角色:用户集权限集角色控制与自主式/强制式控制的区别:角色控制相对独立,根据配置可使某些角色为接近DAC,某些角色接近MAC。,Role-Based Access Controls,授权给用户的访问权限,通常由用户在一个组织中担当的角色来确定。以角色作为访问控制的主体用户以什么样的角色对资源
15、进行访问,决定了用户拥有的权限以及可执行何种操作。“角色”指一个或一群用户在组织内可执行的操作的集合。角色就充当着主体(用户)和客体之间的关联的桥梁。这是与传统的访问控制策略的最大的区别所在。,主体,角色,客体,RBAC的基本思想,是:授权给用户的访问权限,通常由用户在一个组织中担当的角色来确定。RBAC中许可被授权给角色,角色被授权给用户,用户不直接与许可关联。RBAC对访问权限的授权由管理员统一管理,RBAC根据用户在组织内所处的角色作出访问授权与控制,授权规定是强加给用户的,用户不能自主地将访问权限传给他人,这是一种非自主型集中式访问控制方式。例如,在医院里,医生这个角色可以开处方,但他
16、无权将开处方的权力传给护士。,角色访问控制(RBAC)引入了Role的概念,目的是为了隔离User(即动作主体,Subject)与Privilege(权限,表示对Resource的一个操作,即Operation+Resource)。Role作为一个用户(User)与权限(Privilege)的代理层,解耦了权限和用户的关系,所有的授权应该给予Role而不是直接给User或Group.Privilege是权限颗粒,由Operation和Resource组成,表示对Resource的一个Operation.例如,对于新闻的删除操作。Role-Privilege是many-to-many的关系,这就
17、是权限的核心。,用户和角色是多对多的关系:一个用户可以充当几个角色一个角色可以有几个用户担当,访问控制的策略基于角色的访问控制,角色控制优势,便于授权管理便于角色划分便于赋予最小特权便于职责分担便于目标分级,1.由于角色/权限之间的变化比角色/用户关系之间的变化相对要慢得多,减小了授权管理的复杂性,降低管理开销。2.灵活地支持企业的安全策略,并对企业的变化有很大的伸缩性。,FEATURES:,以角色作为访问控制的主体用户以什么样的角色对资源进行访问,决定了用户拥有的权限以及可执行何种操作。角色继承 最小权限原则 一方面给予主体“必不可少”的特权;另一方面,它只给予主体“必不可少”的特权。,FE
18、ATURES,职责分离?对于某些特定的操作集,某一个角色或用户不可能同时独立地完成所有这些操作。“职责分离”可以有静态和动态两种实现方式。静态职责分离:只有当一个角色与用户所属的其它角色彼此不互斥时,这个角色才能授权给该用户。动态职责分离:只有当一个角色与一主体的任何一个当前活跃角色都不互斥时,该角色才能成为该主体的另一个活跃角色。角色容量在创建新的角色时,要指定角色的容量。在一个特定的时间段内,有一些角色只能由一定人数的用户占用。,总结,自主访问控制机制虽然有着很大的灵活性,但同时也存在着安全隐患;强制访问控制机制虽然大大提高了安全性,但是在灵活性上就会大打折扣。这两种传统的访问控制机制存在
19、的问题使得访问控制的研究向着新的方向发展,基于角色的访问控制机制就是在这种形势下的产物,它克服了传统的访问控制机制的不足,是一种有效而灵活的安全策略,它是未来访问控制的发展趋势,基于任务的访问控制(TBAC),以上的几个访问控制模型都是从静态的角度出发,没有考虑到执行的动态环境变化中,没有考虑到随着任务的执行而进行动态的授权保护。数据在工作流中流动中,执行操作的用户在变化,用户的权限也应该在变化,与数据处理的上下文环境相关,DAC和MAC无法实现,RBAC模型需要频繁更换角色,也不适应工作流程的运转。,基于任务的访问控制(Task-based Access Control)是从应用和企业层角度
20、来解决安全问题,以面向任务的观点,从任务(活动)的角度来建立安全模型和实现安全机制,在任务处理的过程中提供动态实时的安全管理。TBAC模型由工作流、授权结构体、受托人集、许可集四部分组成,DAC或MAC模型的主要任务都是对系统中的访问主体和客体进行一维的权限管理,当用户数量多、处理的信息数据量巨大时,用户权限的管理任务将变得十分繁重,并且用户权限难以维护,这就降低了系统的安全性和可靠性。对于海量的数据和差异较大的数据类型,需要用专门的系统和专门的人员加以处理,要是采用RBAC模型的话,安全管理员除了维护用户和角色的关联关系外,还需要将庞大的信息资源访问权限赋予有限个角色。当信息资源的种类增加或
21、减少时,安全管理员必须更新所有角色的访问权限设置。而且,如果客体的属性发生变化,同时需要将客体不同属性的数据分配给不同的访问主体处理时,安全管理员将不得不增加新的角色,并且还必须更新原来所有角色的访问权限设置以及访问主体的角色分配设置,这样的访问控制需求变化往往是不可预知的,造成访问控制管理的难度和工作量巨大。在这种情况下,有必要引入基于客体的访问控制模型。,基于对象的访问控制(OBAC),从客体的角度出发,将访问主体的访问权限直接与客体相关联 一方面:定义了对象的访问控制列表,增删修改访问控制项易于操作另一方面:当客体的属性发生改变,没必要更新访问主体的权限,只需要修改客体的访问控制项,降低
22、了授权管理的复杂性。,6.3常用操作系统的安全问题,Windows 2000系统的安全 1Windows2000系统安全特性(1)数据安全性(2)企业间通信的安全性(3)企业和Internet的单点安全登录(4)安全管理的易操作性和良好扩展性,2Windows2000的安全架构(1)用户身份验证(2)基于对象的访问控制 3Windows2000安全策略(1)基本安全策略(2)企业级安全策略 4Windows2000的漏洞与缺陷(1)NetBIOS的信息泄漏(2)奇怪的系统崩溃特性(3)Telnet的拒绝服务攻击的(4)MS SQL Server的SA空密码攻击,UNIX系统的安全,1Unix系
23、统的安全特征(1)访问控制(2)对象的可用性(3)身份标识与认证(4)审计记录(5)操作的可靠性,2Unix的安全体系结构(1)Policy(策略层)(2)Personnel(用户层)(3)LAN(局域网层)(4)Internal Demark(内部区分层)(5)Gateway(嵌入的Unix网关层)(6)Packet-Filter(包过滤层)(7)External Demark(外部连接层),3Unix系统不安全的因素(1)特权软件的安全漏洞(2)源代码的漏洞(3)特洛伊木马(4)监听(5)软件之间相互作用和设置,4Unix安全的措施(1)防止缓冲区溢出(2)在inetd.conf中关闭不用的服务(3)给系统打补丁(4)重要主机单独设立网段(5)定期检查日志,Linux系统的安全,1Linux的安全机制(1)Linux系统的用户账号(2)Linux的文件系统权限(3)系统认证(4)安全Shell(5)ipchains过滤数据包(6)系统日志,2Linux可能受到的攻击(1)拒绝服务攻击(2)口令破解攻击(3)欺骗攻击(4)扫描程序和网络监听攻击,3Linux安全防范策略(1)细化用户的权限(2)确保用户口令文件的安全(3)加强对系统运行的监控和记录(4)合理划分子网和设置防火墙(5)定期进行安全检查(6)制定适当的数据备份计划(7)保持最新的系统核心,