第六章计算机系统安全-自学-_第1页
第六章计算机系统安全-自学-_第2页
第六章计算机系统安全-自学-_第3页
第六章计算机系统安全-自学-_第4页
第六章计算机系统安全-自学-_第5页
已阅读5页,还剩123页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

网络与信息安全,1,第六章计算机系统安全,2020/5/3,6.1可信计算基,主要思想是将计算机系统中所有与安全保护有关的功能提取出来,并把它们与其它功能分离开,然后将它们独立加以保护,防止受到破坏,这样独立出来得到的结果就称为可信计算基。访问监控器安全内核方法可信计算基,网络与信息安全,2,2020/5/3,访问监视器,是监督主体与客体之间授权访问关系的部件。访问验证机制设计与实现须满足的三原则:自我保护能力总是处于活跃状态必须设计得足够小。,网络与信息安全,3,访问监视器模型,有关主体访问客体及其访问方式的信息,是安全策略的具体体现。,重要的安全事件,2020/5/3,安全内核方法,通过控制对系统资源的访问来实现基本安全规程的计算机系统的中心部分,包括访问验证机制、访问控制机制、授权机制和授权管理机制等。TCSEC:安全内核是一个可信计算基中实现访问监视器思想的硬件固件和软件成分,必须仲裁所有访问,必须保护自身免受篡改,必须能被验证是正确的。安全内核需遵循的三个基本原则防篡改原则完备性原则可验证性原则,网络与信息安全,4,2020/5/3,可信计算基,什么是?TCSEC:TCB是可信计算机系统的核心,它包含了系统中所有实施安全策略及对象(代码和数据)隔离保护的机制,为了使得保护机制更容易被理解和验证,可信计算基应尽量简单,并与安全策略具有一致性。,网络与信息安全,5,2020/5/3,可信计算基,组成操作系统的安全内核具有特权的程序和命令处理敏感信息的软件,如系统管理命令;与TCB实施安全策略有关的文件其他有关的固件、硬件和设备负责系统管理的人员保障固件和硬件正确的程序和诊断软件。,网络与信息安全,6,其中可信计算基的软件部分是可信计算基的核心内容:内核良好定义和安全运行方式;标识系统中的每个用户;保持用户到可信计算基登录的可信路径;实施主体对客体的访问控制;维持可信计算基功能的正确性;监视和记录系统中的相关安全事件,进行安全审计。,2020/5/3,可信计算基,安全功能正确实施TCB安全策略的全部硬件、固件、软件所提供的功能。TCB安全功能需要保证计算机系统具备物理安全、运行安全和数据安全三个方面。物理安全:环境安全、设备安全、记录介质安全及安全管理。运行安全:系统层面、网络层面和应用层面所涉及到的操作系统、数据库系统、网络系统和应用系统的运行安全。安全目标为身份识别、访问控制和可用性。数据安全:系统层面、网络层面和应用层面所涉及到的操作系统、数据库系统、网络系统和应用系统的数据安全。目标是机密性和完整性。,网络与信息安全,7,2020/5/3,可信计算基,安全保证为确保安全功能达到要求的安全性目标所采取的方法和措施。TCB安全保证技术包括:TCB自身安全可用机制包括物理保护、TSF(TCBSecurityFunction)自检、TSF数据的机密性和完整性、TSF有效性检测、恢复机制。TCB的设计与实现可验证的安全模型和完整性保证上。TCB安全管理对TCB运行中的安全管理,包括对不同的管理角色和它们之间的相互作用(如权限分离)进行规定,对分散在多个物理上分离的部件有敏感标记的传播,TSF数据和功能配置等问题的处理,以及对TCB使用者安全属性的授予、撤消等。保证人对系统的合理使用与使用控制方面。,8,网络与信息安全,2020/5/3,6.2操作系统安全,操作系统安全概述操作系统的安全评价操作系统安全机制设计原则操作系统安全机制安全操作系统设计与实现典型操作系统的安全概述,网络与信息安全,9,2020/5/3,6.2.1、操作系统安全的概念,硬件结构的安全和操作系统的安全是信息系统安全的基础,密码、网络安全等是关键技术。,网络与信息安全,10,2020/5/3,6.2.1、操作系统安全的概念,1、操作系统是信息系统安全的基础之一:操作系统是软件系统的底层;操作系统是系统资源的管理者;操作系统是软硬件的接口。2、操作系统安全的困难性操作系统的规模庞大,以至于不能保证完全正确。理论上一般操作系统的安全是不可判定问题。,网络与信息安全,11,2020/5/3,6.2.2、操作系统的安全评价,1、操作系统安全要求一般对安全操作系统有以下要求:安全策略:要有明确、严谨、文档齐全的安全策略标识:每个实体必须标识其安全级别认证:每个主体必须被认证审计:对影响安全的事件,必须记录日志,并进行审计。保证:系统必须确保上述4项要求被实施连续性保护:实现安全的机制必须是不间断地发挥作用,并且未经许可不可改动。,网络与信息安全,12,2020/5/3,安全标准简介,信息安全标准的发展历史,网络与信息安全,13,2020/5/3,6.2.2、操作系统的安全评价,2、美国国防部的桔皮书(TCSEC):D级:最低的安全保护级D级是最低的安全保护级属于D级的系统是不安全的除了物理上的一些安全措施外,没有什幺其它安全用户只要开机后就可支配所有资源DOS,WINDOWS3.2,MOS,网络与信息安全,14,2020/5/3,6.2.2、操作系统的安全评价,2、美国国防部的桔皮书(TCSEC):C1级:自主安全保护级通过用户名和口令进行身份认证每个用户对属于他们自己的客体具有控制权划分属主、同组用户和其他用户3个层次。属主控制这3个层次的存储权限实体没有划分安全级别多数UNIX、LINUX,WindowsNT,网络与信息安全,15,2020/5/3,6.2.2、操作系统的安全评价,2、美国国防部的桔皮书(TCSEC):C2级:受控制的安全保护级系统记录日志,并进行审计。身份认证更强,口令以密文存储。采用以用户为单位的自主访问控制机制。部分UNIX、LINUX,VMS,网络与信息安全,16,2020/5/3,6.2.2、操作系统的安全评价,2、美国国防部的桔皮书(TCSEC):B1级:标记安全保护级采用多级安全策略采用强制访问控制强制访问控制并不取消原来的自主访问控制,而是在此之外另加的。实体都划分安全级别属主也不能改变对自己客体的存储权限,网络与信息安全,17,2020/5/3,6.2.2、操作系统的安全评价,2、美国国防部的桔皮书(TCSEC):B2级:结构化的安全保护级要有形式化的安全模型更完善的强制访问控制隐通道分析与处理一般认为B2级以上的操作系统才是安全操作系统Honeywell公司的MULTICS、TIS公司的TrustedXENIX3.04.0,网络与信息安全,18,2020/5/3,6.2.2、操作系统的安全评价,2、美国国防部的桔皮书(TCSEC):B3级:安全域级把系统划分为一些安全域,用硬件把安全域互相分割开来,如存储器隔离保护等。提供可信路径机制,确保用户与可信软件是连接的,防止假冒进程。更全面的访问控制机制。更严格的系统结构化设计。更完善的隐通道分析。HFS公司的UNIXXTS-2000STOP3.1E,网络与信息安全,19,2020/5/3,6.2.2、操作系统的安全评价,2、美国国防部的桔皮书(TCSEC):A1级:验证安全设计级安全模型要经过数学证明对隐通道进行形式化分析Honeywell公司SCOMP、波音公司MLSLANOS注意:分级的顶端是无限的,还可加入A2、A3级等。每一级的安全性都包含前一级的安全性。,网络与信息安全,20,2020/5/3,6.2.2、操作系统的安全评价,2、美国国防部的桔皮书(TCSEC):,D,C1,C2,B1,B2,B3,A1,网络与信息安全,21,2020/5/3,6.2.2、操作系统的安全级别,3、中国计算机信息系统安全保护等级划分准则:(GB1178591999)根据中国国情、参照桔皮书,将其7的级别合并为5个级别第一级:用户自主保护级;第二级:系统审计保护级;第三级:安全标记保护级;第四级:结构化保护级;第五级:访问验证保护级。,网络与信息安全,22,2020/5/3,6.2.2、操作系统的安全级别,3、中国计算机信息系统安全保护等级划分准则:第一级:用户自主保护级;通过隔离用户与数据,使用户具备自主安全保护的能力。它具有多种形式的控制能力,对用户实施访问控制,即为用户提供可行的手段,保护用户和用户组信息,避免其他用户对数据的非法读写与破坏。自主访问控制例如:访问控制表身份鉴别例如:口令数据完整性通过自主完整性策略,阻止非授权用户修改或破坏敏感信息。,网络与信息安全,23,2020/5/3,6.2.2、操作系统的安全级别,3、中国计算机信息系统安全保护等级划分准则:第二级:系统审计保护级;与用户自主保护级相比,本级的计算机实施了粒度更细的自主访问控制,它通过登录规程、审计安全性相关事件和隔离资源,使用户对自己的行为负责。自主访问控制访问控制机制根据用户指定方式或默认方式,阻止非授权用户访问客体。访问控制的粒度是单个用户。没有存取权的用户只允许由授权用户指定对客体的访问权。身份鉴别通过为用户提供唯一标识、计算机能够使用户对自己的行为负责。计算机还具备将身份标识与该用户所有可审计行为相关联的能力。阻止客体重用客体只有在释放且清除原信息后才让新主体使用审计计算机能创建和维护受保护客体的访问审计跟踪记录,并能阻止非授权的用户对它访问或破坏。,网络与信息安全,24,2020/5/3,6.2.2、操作系统的安全级别,3、中国计算机信息系统安全保护等级划分准则:第三级:安全标记保护级;具有系统审计保护级所有功能。此外,还提供有关安全策略模型、数据标记以及主体对客体强制访问控制的非形式化描述;具有准确地标记输出信息的能力;消除通过测试发现的任何错误。强制访问控制计算机对所有主体及其所控制的客体(例如:进程、文件、段、设备)实施强制访问控制。为这些主体及客体指定敏感标记,这些标记是等级分类和非等级类别的组合,它们是实施强制访问控制的依据。标记计算机应维护与主体及其控制的存储客体(例如:进程、文件、段、设备)相关的敏感标记。这些标记是实施强制访问的基础。,网络与信息安全,25,2020/5/3,6.2.2、操作系统的安全级别,3、中国计算机信息系统安全保护等级划分准则:第四级:结构化保护级;建立于一个明确定义的形式化安全策略模型之上,它要求将第三级系统中的自主和强制访问控制扩展到所有主体与客体。考虑隐蔽通道。必须结构化为关键保护元素和非关键保护元素。计算机的接口也必须明确定义,使其设计与实现能经受更充分的测试。加强了鉴别机制;支持系统管理员和操作员的职能;提供可信设施管理;增强了配置管理控制。系统具有相当的抗渗透能力。,网络与信息安全,26,2020/5/3,6.2.2、操作系统的安全级别,3、中国计算机信息系统安全保护等级划分准则:第五级:访问验证保护级本级的计算机满足访问监控器需求。访问监控器仲裁主体对客体的全部访问。访问监控器本身是抗篡改的;必须足够小,能够分析和测试。支持安全管理员职能,扩充审计机制,提供系统恢复机制。系统具有很高的抗渗透能力。隐蔽信道分析可信路径可信恢复,网络与信息安全,27,2020/5/3,6.2.2、操作系统的安全级别,4、桔皮书和GB117859的局限性桔皮书注意确保数据的秘密性,而没有注意确保数据的真实性和完整性。忽略了防范诸如拒绝服务之类的攻击。只给出了评测等级,没有给出达到这种等级所要采取的系统结构和技术路线。,网络与信息安全,28,2020/5/3,6.2.2、操作系统的安全级别,5、CC标准:美国国家安全局、国家技术标准研究所、法国、加拿大、英国、德国、荷兰六国七方,联合提出了新的“信息技术安全评价通用准则”(CCforITSEC),并于1999年5月正式被ISO颁布为国际标准,。增强了对真实性和完整性的保护。仍没有给出达到标准所要采取的系统结构和技术路线。,网络与信息安全,29,2020/5/3,6.2.3、操作系统安全机制设计原则,J.H.Saltzer和M.D.Schroeder提出了操作系统安全保护机制应符合下列设计原则:(1)最小特权原则,每个用户和进程必须按照所需原则,尽可能使用最小特权。(2)机制的经济性:保护OS安全的机制应该具备简单性和直接性,并能够通过形式化证明方法或穷举测试验证其可靠性。(3)开放设计原则:安全机制应该基于开放的前提设计,而不能依赖机制本身的保密,安全机制应依赖于极小量的关键数据的保密,如密钥和口令等。安全机制还应该接受广泛的公开审查,消除可能存在的设计缺陷。,网络与信息安全,30,2020/5/3,6.2.3、操作系统安全机制设计原则,(4)基于许可:对客体的访问应该是基于控制的,缺省情况下应该是拒绝访问,稳健的设计机制,主体还应该识别那些将被访问的客体,而不是不能被访问的那些客体。(5)多重防护:对敏感客体的访问应依赖于多个条件,如用户鉴别和密钥。这样即使攻击者攻破一种安全机制,也不能获得完全的访问权。(6)最少公用机制:共享对象为信息流提供了潜在的通道,采用物理的或逻辑隔离的系统减少了共享的风险。(7)易用性:使用简单的安全机制,并且提供友好的用户接口,使其更容易被用户所接受。经验表明,在OS中出现安全问题大多是由于没有遵守这些原则中的一条或多条引起的。,网络与信息安全,31,2020/5/3,6.2.4、操作系统的安全机制,操作系统安全的目标:对用户进行身份识别;根据安全策略,进行访问控制,防止对计算机资源的非法存取;标识系统中的实体;监视系统的安全运行;确保自身的安全性和完整性。,网络与信息安全,32,2020/5/3,6.2.4、操作系统的安全机制,1、实体保护多道程序的增长,使得许多实体需要保护。需要受保护的实体:存储器;IO设备;程序;数据。,网络与信息安全,33,2020/5/3,6.2.4、操作系统的安全保护技术,1、实体保护保护方法:隔离操作系统的一个基本安全方法是隔离,把一个客体与其它客体隔离起来。物理隔离:不同的处理使用不同的物理设备。如,不同安全级别的处理输出使用不同的打印机;,网络与信息安全,34,2020/5/3,6.2.4、操作系统的安全机制,隔离时间隔离:不同安全级别的处理在不同的时间执行;逻辑隔离:用户的操作在没有其它处理存在的情况下执行。操作系统限制程序的访问,以使该程序不能访问允许范围之外的客体。虚拟机是软件是运行在硬件之上、操作系统之下的支撑软件,可以使一套硬件运行多个操作系统,分别执行不同密级任务。密码隔离:用密码加密数据,以其它处理不能理解的形式隐藏数据.然而隔离仅仅是问题的一半。我们除了要对用户和客体进行隔离外,我们还希望能够提供共享。例如,不同安全级别的处理能调用同一个的算法或功能调用。我们希望既能够提供共享,而又不牺牲各自的安全性。,网络与信息安全,35,2020/5/3,6.2.4、操作系统的安全机制,1、实体保护保护方法:隔绝当操作系统提供隔绝时,并发运行的不同处理不能察觉对方的存在。每个处理有自己的地址空间、文件和其它客体。操作系统限制每个处理,使其它处理的客体完全隐蔽。,网络与信息安全,36,2020/5/3,6.2.4、操作系统的安全机制,1、实体保护存储器的保护:多道程序的最重要问题是阻止一个程序影响另一个程序的存储器。这种保护可以作成硬件机制,以保护存储器的有效使用,而且成本很低。固定地址界限设置地址界限,使操作系统在界限的一边,而用户程序在界限的另一边。主要是阻止用户程序破坏操作系统的程序。这种固定界限方式的限制是死扳的,因为给操作系统预留的存储空间是固定的,不管是否需要。,网络与信息安全,37,2020/5/3,6.2.4、操作系统的安全机制,1、实体保护存储器的保护:浮动地址界限界限寄存器(fenceregister):它存储操作系统的端地址。与固定界限方式不同,这里的界限是可以变化的。每当用户程序要修改一个地址的数据时,则把该地址与界限地址进行比较,如果该地址在用户区则执行,如果该地址在操作系统区则产生错误信号、并拒绝执行。,网络与信息安全,38,2020/5/3,6.2.4、操作系统的安全机制,1、客实体保护存储器的保护:浮动地址界限,操作系统操作系统,界限寄存器,操作系统用户程序,0,n-1,n,高,网络与信息安全,39,2020/5/3,6.2.4、操作系统的安全机制,1、实体保护存储器的保护:浮动地址界限一个界限寄存器的保护是单向的。换句话说,可保护用户不侵入操作系统区,但不能保护一个用户对另一用户区的侵入。类似地,用户也不能隔离保护程序的代码区和数据区。通常采用多对地址界限寄存器,其中一个为上界,另一个为下界(或一个为基址,另一个为界长)。把程序之间,数据之间,堆栈之间隔离保护起来。,网络与信息安全,40,2020/5/3,6.2.4、操作系统的安全机制,1、实体保护存储器的保护:浮动地址界限,操作系统程序2,上界寄存器,操作系统程序3,0,n-1,n,高,操作系统程序1,下界寄存器,m,m+1,基址寄存器,界长寄存器,网络与信息安全,41,2020/5/3,6.2.4、操作系统的安全机制,1、实体保护运行保护:安全操作系统采用分层设计;运行域是进程运行的区域;运行域保护机制:根据安全策略,把进程的运行区域划分为一些同心环,进行运行的安全保护。最内环具有最小的环号,具有最高的安全级别;最外环具有最大的环号,具有最低的安全级别;内环不受外环的入侵,却可利用外环的资源,并控制外环。,网络与信息安全,42,2020/5/3,R0,R1,Rn,6.2.4、操作系统的安全机制,1、实体保护IO保护:IO保护是系统中最复杂的;大多数情况下,把IO设备视为文件,且规定IO是仅由操作系统完成的一个特权操作,对读写操作提供一个高层系统调用。在这一过程中,用户不控制IO操作的细节。,网络与信息安全,43,2020/5/3,6.2.4、操作系统的安全机制,2、标识与认证标识标识是系统为了正确识别、认证和管理实体而给实体的一种符号;用户名是一种标识,为的是进行身份认证;安全级别也是一种标识,为的是进行安全的访问控制。标识需要管理;标识活性化、智能化,是值得研究的新方向。认证在操作系统中主要是用户的身份认证。,网络与信息安全,44,2020/5/3,6.2.4、操作系统的安全机制,3、访问控制访问控制的目的:确保主体对客体的访问只能是授权的,而未授权的访问是不能进行的,而且授权策略是安全的。自主访问控制(DAC);强制访问控制(MAC);有多种访问控制模型。,网络与信息安全,45,2020/5/3,6.2.4、操作系统的安全机制,4、最小特权原则系统中每个主体只能拥有与其操作相符的必需的最小特权集。一种典型的将超级用户的特权进行细分的方案如下:安全管理员审计管理员系统管理员,网络与信息安全,46,2020/5/3,6.2.4、操作系统的安全机制,5、可信通道具体实施安全策略的软硬件构成安全内核,而用户是与安全周界外部的不可信的中间应用层与操作系统交互的,但用户登录、定义用户的安全属性、改变文件的安全级别等安全关键操作,用户必须能够确认与安全内核交互,从而需要一个安全机制,保障用户与安全内核通信,这种机制由可信通道提供。即终端人员能借以直接与可信计算基通信的一种机制。该机制只能由有关终端操作人员或可信计算基启动,并且不能被不可信软件模拟。,网络与信息安全,47,2020/5/3,6.2.4、操作系统的安全机制,5、安全审计功能要求是一种通过事后追查增强系统安全性的安全技术;对涉及系统安全的操作做完整记录,并对这些记录进行必要的分析。审计处理记录系统中主体对受保护的客体的违规访问情况;系统中主体对某些特定客体的违规访问情况。审计机制在系统调用的总入口处设置审计点,审计系统调用,也就审计了所有使用内核服务的事件。要选择最主要的事件加以审计,不能设置太多的审计事件,以免过多影响系统性能。,网络与信息安全,48,2020/5/3,6.2.4、操作系统的安全机制,5、安全审计Linux系统的审计连接时间日志login等程序更新wtmp和utmp文件,使系统管理员能够跟踪谁在何时登录到系统。进程统计由系统内核执行。当一个进程终止时,为每个进程往进程统计文件(pacct或acct)中写一个记录。错误日志各种系统守护进程、用户程序和内核通过syslog向文件/var/log/messages报告值得注意的事件。,49,网络与信息安全,2020/5/3,访问监视器(ReferenceMonitor),50,主体,审计数据库,引用监视器,客体,访问控制数据库安全策略,访问监视器是一种负责实施安全策略的软件和硬件的结合体访问监视器只是一个理论上的概念,并没有一种实用的实现方法。一般人们把访问监视器的概念和安全内核和可信软件等同起来。,6.2.5安全操作系统设计与实现,网络与信息安全,2020/5/3,6.2.5安全操作系统设计与实现安全策略与安全模型,常用安全策略自主存取控制策略强制存取控制(BLP)策略BIBA策略中国墙策略常用安全模型有限状态机模型访问控制矩阵基于角色的访问控制模型(RBAC),51,网络与信息安全,2020/5/3,6.2.5安全操作系统设计与实现安全体系结构GFAC通用访问控制框架,52,网络与信息安全,2020/5/3,6.2.5安全操作系统设计与实现安全体系结构Flask结构,53,网络与信息安全,2020/5/3,6.2.6典型操作系统概述,在TCSEC促进下研制了多种具有B1级别以上的安全操作系统产品IBM的安全Xenix、Bell实验室的SystemV/MLS、加拿大多伦多大学的安全TUNIS等早期的安全操作系统基本上是按照TCSEC中的要求为蓝本研制根据单一的整体安全策略对系统进行访问控制和防护。现代安全操作系统中已逐步实现了多种安全策略(SecurityPolicy)典型的是RSBAC和SELinux安全操作系统。,54,网络与信息安全,2020/5/3,RSBAC,RSBAC是基于GFAC提出的安全操作系统原型,55,网络与信息安全,2020/5/3,SELinux,SELinux采用Flask框架作为它的安全体系结构SELinux核心级的安全增强主要表现在三个方面实现了功能强大的安全服务器ESS(ExampleSecurityServer)按照Flask体系框架的要求,把Linux内核中的相应子系统,包括文件管理、进程管理、Socket控制等,改造成独立的客体管理器客体管理器中实现了访问向量缓存AVC(AccessVectorCaching)提高了效率。实现了安全工具层提供一个与安全服务器相配套的安全策略配置语言和相应配置工具,56,网络与信息安全,2020/5/3,6.2.6典型操作系统的安全概述,Linux安全体系结构的核心组件包括PAM认证机制、访问控制机制、特权管理机制、安全审计和其它安全机制等内容。,UNIX/Linux操作系统安全性,网络与信息安全,57,2020/5/3,1PAM认证机制PAM(PluggableAuthenticationModules)是由Sun提出的一种认证机制,其目的是提供一个框架和一套编程接口,将认证工作由程序员交给管理员,PAM允许管理员在多种认证方法之间作出选择,它能够改变本地认证方法而不需要重新编译与认证相关的应用程序。PAM为更有效的认证方法的开发提供了便利,在此基础上可以很容易地开发出替代常规的用户名加口令的认证方法。,网络与信息安全,58,2020/5/3,PAM的主要功能包括:加密口令(包括DES以外的算法);对用户进行资源限制,防止DDOS攻击;允许随意Shadow口令;限制特定用户在指定时间从指定地点登录;支持C/S结构的认证交互。2访问控制机制访问控制机制是用于控制系统中主体对客体的各种操作,如主体对客体的读、写和执行等操作。Linux支持自主访问控制和强制访问控制操作。,网络与信息安全,59,2020/5/3,(1)自主访问控制自主访问控制是比较简单的访问控制机制,其基本思想是:1)由超级用户或授权用户为系统内的用户设置用户号(uid)和所属的用户组号(gid),系统内的每个主体(用户或代表用户的进程)都有惟一的用户号,并归属于某个用户组,每个用户组具有惟一的组号。所有的被设置的用户信息均保存在系统的/etc/passwd文件中,一般情况下,代表用户的进程继承该用户的uid和gid。2)Linux系统利用访问控制矩阵来控制主体对客体的访问。Linux系统将每一个客体的访问主体区分为客体的属主(u)、客体的属组(g)、以及其他用户(o),并把每一客体的访问模式区分为读(r)、写(w)和执行(x),所有这些信息构成了一个完整的访问控制矩阵。,网络与信息安全,60,2020/5/3,3)当用户访问客体时,Linux系统会根据进程的uid、gid和文件的访问控制信息来检查用户访问的合法性。4)为维护系统安全性,对于某些客体,普通用户不应具有访问权限,但是由于某种需要,用户又必须能超越对这些客体的受限访问,例如,对于/etc/passwd文件,用户虽然不具有访问权限,但是又必须允许用户能够修改该文件,以修改自己的密码。针对这类问题,Linux是通过setuid/setgid程序来解决的。setuid/setgid程序可以使代表普通用户的进程不继承该用户的uid和gid,而是继承该进程所对应的应用程序文件的所有者的uid和gid,即使普通用户暂时获得其他用户身份,并通过该身份访问客体。,网络与信息安全,61,2020/5/3,(2)强制访问控制强制访问控制(MAC,MandatoryAccessControl)是一种由系统管理员从全系统的角度定义和实施的访问控制,它通过标记系统中的主客体,强制性地限制信息的共享和流动,使不同的用户只能访问到与其相关的、指定范围的信息。传统的MAC都是基于TCSEC中定义的MLS策略实现的,较典型的强制访问控制机制有SElinux、RSBAC和MAC等。,网络与信息安全,62,2020/5/3,1)SELinux安全体系结构中的核心组件是一个安全服务器,其中定义了一种混合的安全性策略,它由类型实施(TE)、基于角色的访问控制(RBAC)和多级安全(MLS)三个部分组成。通过替换SELinux的安全服务器,可以支持不同的安全策略。SELinux使用策略配置语言定义安全策略,然后通过checkpolicy编译成二进制形式,存储在文件/ss_policy中,在内核引导时将该策略读到内核空间。2)RSBAC(RuleSetBasedAccessControl)能够基于多个模块提供灵活的访问控制功能。在RSBAC中,所有与安全相关的系统调用都扩展了安全实施代码,并利用这些代码调用中央决策部件,然后由该决策部件调用所有被激活的决策模块,形成安全决策,最后再由系统调用扩展来实施这个安全决策。3)MAC可以将一个运行的Linux系统分隔成为多个互相独立的(或者互相限制的)子系统,这些子系统可以作为单一的系统来管理。,网络与信息安全,63,2020/5/3,为了消除对超级用户帐户的高度依赖,提高系统安全性,从Linux的2.1版本开始,在系统内核中引入了权能的概念,实现了基本权能的特权管理机制。这种新的特权管理机制的基本思想如下:1)利用权能把系统内的各种特权进行划分,使同一类的敏感操作具有相同的权能;2)超级用户及其Shell在系统启动期间拥有全部权能,而普通用户及其Shell不具有任何权能;3)在系统启动后,系统管理员可以随时剥夺超级用户的某些权能。4)用户进程可以自动放弃所具有的某些权能。用户所放弃的权能,在系统运行期间是无法恢复的。,网络与信息安全,64,2020/5/3,5)新创建的进程所拥有的权能是由该进程所代表的用户目前所具有的权能与该进程的父进程的权能进行与运算确定的;6)每个进程的权能被保存在进程控制块的cap_effective域中,这是一个32位的整数,它的每一位描述一种权能,1表示拥有与该位相对应的权能,0表示没有。对于普通用户,仍然可以通过setuid程序实现某些特权操作。,网络与信息安全,65,2020/5/3,3特权管理机制Linux的特权管理机制是从Unix继承过来的,其基本思想是:1)普通用户没有任何特权,而超级用户拥有系统内的所有特权;2)当进程要进行某种特权操作时,系统检查进程所代表的用户是否为超级用户,即检查进程的uid是否为零;3)当普通用户的某些操作涉及特权操作时,通过setuid/setgid程序来实现。在这种特权管理机制下,系统的安全完全掌握在超级用户手上,一旦非法用户获得了这个超级用户的帐户,就等于获得对整个系统的控制权,系统将毫无安全可言。,网络与信息安全,66,2020/5/3,4安全审计Linux系统中的日志是其安全体系结构中的重要内容之一,它能实时记录所发生的各种操作行为,能为检测攻击行为提供唯一的真实证据。Linux系统提供了记录网络、主机和用户级日志信息的能力,所记录的内容可以是:1)所有系统和内核的活动信息;2)每一次网络连接和它们的源IP地址、长度,有时还包括攻击者的用户名和使用的操作系统;,网络与信息安全,67,2020/5/3,3)远程用户申请访问的各种文件;4)用户可以控制的各种进程;5)具体用户所使用的每一条操作命令。Linux系统的安全审计机制是将审计事件分为系统事件和内核事件两类进行管理和维护的。系统事件是由审计服务进程syslogd进行维护和管理的,而内核事件是由内核审计线程klogd进行维护和管理的。Syslogd主要用于捕获和记录来自于应用层的日志信息;klogd主要用于捕获和记录Linux的内核信息。,网络与信息安全,68,2020/5/3,5其它安全机制(1)口令保护机制为了增强口令的安全性,Linux系统提供了多种口令保护措施,这些保护措施主要有:1)口令脆弱性警告。2)口令有效期3)一次性口令4)口令加密算法5)影子文件6)帐户加锁,网络与信息安全,69,2020/5/3,(2)自主访问控制的增强机制Linux系统提供了限制性Shell、特殊属性、限制文件加载、以及加密文件系统等增强功能。1)限制性Shell:通过为用户指定一个功能受限的Shell来限制用户的某些行为。2)特殊属性:当给文件设定只能追加(append_only)、不可更改(immutable)等特殊属性时,对这些文件的访问只受对应特殊属性的控制而不受自主访问控制机制的控制。同时,只有超级用户才能编辑这些属性值。3)限制文件加载:通过使用带有mount选项的mount命令或通过配置/etc/fatab文件,Linux系统将会按所确定的mount选项来加载文件系统。4)加密文件系统(CFS,CryptographicFileSystem):CFS就是通过将加密服务引入文件系统来提高系统的安全性。CFS是基于NFS客户/服务器运作的。客户端为NFS客户端,服务器端为CFSD,CFSD既是响应客户端请求的NFS服务器,又是加密/解密引擎。CFSD通过标准文件系统调用接口与文件系统进行交互。,网络与信息安全,70,2020/5/3,(3)限制超级用户的机制Linux系统提供了以下三种限制超级用户操作的方法:1)禁止用户以超级用户帐号登录,但可以通过su或sudo成为超级用户;2)超级用户只能从本地登录系统,严禁通过网络登录;3)禁止通过su访问超级用户,只能通过sudo监视和控制超级用户访问。(4)网络安全机制1)安全Shell:安全Shell提供了Unix/Linux操作系统中常用的telnet、rlogin、rsh和rcp等工具的替代程序,这些替代程序具有安全可靠的主机认证、用户身份认证、网上信息加密传输等安全功能。,网络与信息安全,71,2020/5/3,2)入侵检测系统:目前比较流行的入侵检测系统有Snort、Portsentry和Lids等。利用这些工具,Linux系统就具备了以下较高级的入侵检测能力:记录入侵企图,当攻击发生时及时通知管理员;当已知攻击发生时,能及时采取事先规定的安全措施;可以伪装成其他操作系统,向外发送一些错误信息,误导攻击者,使攻击者认为他们正在攻击一个WindowsNT或Solaris系统。3)防火墙:Linux系统的防火墙提供了以下一些功能:访问控制能力安全审计能力抗攻击能力其他附属功能,如与审计相关的报警和入侵检测,与访问控制相关的身份验证、加密和认证,甚至VPN等。,网络与信息安全,72,2020/5/3,6.3数据库安全性,数据库安全性控制视图机制审计(Audit)数据加密统计数据库安全性,网络与信息安全,73,2020/5/3,6.3.1数据库安全性控制概述,非法使用数据库的情况编写合法程序绕过DBMS及其授权机制直接或编写应用程序执行非授权操作通过多次合法查询数据库从中推导出一些保密数据,网络与信息安全,74,2020/5/3,数据库安全性控制概述(续),计算机系统中,安全措施是一级一级层层设置,计算机系统的安全模型,网络与信息安全,75,2020/5/3,数据库安全性控制概述(续),数据库安全性控制的常用方法用户标识和鉴定存取控制视图审计密码存储,网络与信息安全,76,2020/5/3,6.3.1数据库安全性控制,用户标识与鉴别存取控制自主存取控制方法授权与回收数据库角色强制存取控制方法,网络与信息安全,77,2020/5/3,(1)用户标识与鉴别,用户标识与鉴别(Identification语义:将对指定操作对象的指定操作权限授予指定的用户,网络与信息安全,84,2020/5/3,permission是当前授予的对象权限。当在表、表值函数或视图上授予对象权限时,权限列表可以包括这些权限中的一个或多个:SELECT、INSERT、DELETE、REFENENCES或UPDATE。列列表可以与SELECT和UPDATE权限一起提供。如果列列表未与SELECT和UPDATE权限一起提供,那么该权限应用于表、视图或表值函数中的所有列。,网络与信息安全,85,2020/5/3,column是当前数据库中授予权限的列名。table是当前数据库中授予权限的表名。view是当前数据库中被授予权限的视图名。stored_procedure是当前数据库中授予权限的存储过程名。extended_procedure是当前数据库中授予权限的扩展存储过程名。,网络与信息安全,86,2020/5/3,user_defined_function是当前数据库中授予权限的用户定义函数名。WITHGRANTOPTION表示给予了security_account将指定的对象权限授予其它安全帐户的能力。WITHGRANTOPTION子句仅对对象权限有效。ASgroup|role指当前数据库中有执行GRANT语句权力的安全帐户的可选名。当对象上的权限被授予一个组或角色时使用AS,对象权限需要进一步授予不是组或角色的成员的用户。因为只有用户(而不是组或角色)可执行GRANT语句,组或角色的特定成员授予组或角色权力之下的对象的权限。,网络与信息安全,87,2020/5/3,GRANTALL|statement,.nTOsecurity_account,.n对象权限:GRANTALLPRIVILEGES|permission,.n(column,.n)ONtable|view|ONtable|view(column,.n)|ONstored_procedure|extended_procedure|ONuser_defined_functionTOsecurity_account,.nWITHGRANTOPTIONASgroup|role,网络与信息安全,88,2020/5/3,GRANT(续),发出GRANT:DBA数据库对象创建者(即属主Owner)拥有该权限的用户按受权限的用户一个或多个具体用户PUBLIC(全体用户),网络与信息安全,89,2020/5/3,WITHGRANTOPTION子句,WITHGRANTOPTION子句:指定:可以再授予没有指定:不能传播不允许循环授权,网络与信息安全,90,2020/5/3,例题,例1把对Student表和Course表的全部权限授予用户U2和U3GRANTALLPRIVILIGESONTABLEStudent,CourseTOU2,U3;例2把对表SC的查询权限授予所有用户GRANTSELECTONTABLESCTOPUBLIC;,网络与信息安全,91,2020/5/3,例题(续),例3把查询Student表和修改学生学号的权限授给用户U4GRANTUPDATE(Sno),SELECTONTABLEStudentTOU4;对属性列的授权时必须明确指出相应属性列名,网络与信息安全,92,2020/5/3,例题(续),例4把对表SC的INSERT权限授予U5用户,并允许他再将此权限授予其他用户GRANTINSERTONTABLESCTOU5WITHGRANTOPTION;,网络与信息安全,93,2020/5/3,传播权限,执行例5后,U5不仅拥有了对表SC的INSERT权限,还可以传播此权限:例5GRANTINSERTONTABLESCTOU6WITHGRANTOPTION;同样,U6还可以将此权限授予U7:例6GRANTINSERTONTABLESCTOU7;但U7不能再传播此权限。,网络与信息安全,94,2020/5/3,(4)授权与回收(续),二、REVOKE授予的权限可以由DBA或其他授权者用REVOKE语句收回REVOKE语句的一般格式为:REVOKE,.ONFROM,.;,网络与信息安全,95,2020/5/3,REVOKE(续),例7把用户U4修改学生学号的权限收回REVOKEUPDATE(Sno)ONTABLEStudentFROMU4;例8收回所有用户对表SC的查询权限REVOKESELECTONTABLESCFROMPUBLIC;,网络与信息安全,96,2020/5/3,REVOKE(续),例9把用户U5对SC表的INSERT权限收回REVOKEINSERTONTABLESCFROMU5CASCADE;将用户U5的INSERT权限收回的时候必须级联(CASCADE)收回系统只收回直接或间接从U5处获得的权限,网络与信息安全,97,2020/5/3,小结:SQL灵活的授权机制,DBA:拥有所有对象的所有权限不同的权限授予不同的用户用户:拥有自己建立的对象的全部的操作权限GRANT:授予其他用户被授权的用户“继续授权”许可:再授予所有授予出去的权力在必要时又都可用REVOKE语句收回,网络与信

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论