医学资料1信息系统安全第五讲操作系统安全张焕国武汉大学计算机学院医学资料2目录1、信息系统安全的基本概念2、密码学(1)3、密码学(2)4、操作系统安全(1)5、操作系统安全(2)6、数据库安全(1)7、数据库安全(2)8、可信计算(1)9、可信计算(2)医学资料3一、访问控制框架与模型①操作系统安全的核心是访问控制主体对客体的访问只能是授权的,未授权的访问是不能进行的,而且授权策略是安全的。②访问控制身份识别权限控制行为监控安全审计医学资料4③ISO制定的访问控制基本框架访问控制实施函数ACEF访问者访问目标访问控制决策函数ACDF访问控制规则ACR访问控制信息ACDIVV=ACDF(ACR,ACDI)∈{Yes,No}Decision=ACEF(V)∈{Permit,Deny}一、访问控制框架与模型医学资料5④访问控制模型自主访问控制DAC(DiscretionaryAccessControl)客体的属主可以自主地将权限转授给别的主体。强制访问控制MAC(MandatoryAccessControl)即使是客体的属主,也不能自主地将权限转授给别的主体。一个主体能否获得对某客体的权限,要根据安全规则来确定。基于角色的访问控制RBAC(RoleBasedAccessCotrol)基于规则的访问控制UBAC(RuleBasedAccessControl)一、访问控制框架与模型医学资料6矩阵模型:设S为全体主体的集合,S={s1,s2,…,sm}。设O为全体客体的集合,O={o1,o2,…,on}。设R为全体权力的集合,R={r1,r2,…,rl}。记权力矩阵为:a11,a12,…,a1nS1a21,a22,…,a2nS2A=……=…=[o1,o2,…on]am1,am2,…,amnSm二、自主访问控制模型医学资料7①矩阵的每一行对应一个主体,每一列对应一个客体。行与列交叉点上的元素aij表示主体si对客体oj所拥有的所有权力的集合。②当主体si要对客体oj进行访问时,访问控制机制检查aij,看主体si是否具有对客体oj进行访问的权力,以决定主体si是否可对客体oj进行访问,以及进行什么样的访问。③自主性客体的属主有权将其客体的访问权力授予其它主体,或收回。二、自主访问控制模型医学资料8④矩阵模型的实现基于矩阵列对需要保护的客体附件一个访问控制表,标明各拥有权力的主体的标识与权限。UNIX,LINUX,NT基于矩阵的行在每个主体上附件一个可访问的客体的明细表:权力表口令MULTICSMVS二、自主访问控制模型医学资料91、BL-P模型①军事安全策略每个军官和文件都划分一个密级:不保密(unclassified)、秘密(confidential)、机密(secret)、绝密(topsecret)等级。密级是线性有序的:unclassifiedconfidentialsecrettopsecret每个军官和文件都划分一个业务范围:例如,北约类(NATO)、核武器类(NUCLEAR)、导弹防御系统(NMD)、反恐等。二、强制访问控制模型医学资料10①军事安全策略每个军官和文件都划分一个安全级别:安全级别=密级,业务范围一个军官要能阅读某一文件,军官的密级必须大于等于该文件的密级,而且军官的业务范围必须包含文件的业务范围。例如,设军官A和文件F1的安全级别为F1:secret,NATO、NUCLEAR,A:topsecret,NATO、NUCLEAR、NMD,则军官A可以阅读文件F1。二、强制访问控制模型医学资料11①军事安全策略一个军官要能写某一文件,军官的密级必须小于等于该文件的密级,而且军官的业务范围必须被文件的业务范围所包含。例如,设军官B和文件F2的安全级别为F2:secret,NATO、NUCLEAR,B:secret,NATO、NUCLEAR、NMD,所以军官B不可以写文件F2。二、强制访问控制模型医学资料12②BL-P模型每个主体和客体都划分一个密级A;每个主体和客体都划分一个业务范围C;设SC为全体安全级别A,C的集合:SC=A,C定义二元关系≤如下,并称关系≤为支配:SC=A,C,SC’=A’,C’,则SC≤SC’,iffA≤A’andCC’。二、强制访问控制模型医学资料13②BL-P模型对于集合SC中的任意元素X,Y,Z都有自反性X≤X;传递性如果X≤Y,而且Y≤Z,则X≤Z;反对称性如果X≤Y,而且Y≤X,则X=Y。如上定义的关系≤为偏序关系,集合SC为偏序集合,记为[SC,≤]。二、强制访问控制模型医学资料14②BL-P模型在[SC,≤]中定义运算⊕、⊙如下:A,C⊕A’,C’=max(A,A’),C∪C’,A,C⊙A’,C’=min(A,A’),C∩C’。显然,[SC,≤]的最高安全级别和最低安全级别分别是HIGH=Topsecret,{全体属类},LOW=unclassified,{}。所以[SC,≤]构成代数结构格。二、强制访问控制模型医学资料15②BL-P模型简单安全原则(向下读)主体s对客体o具有读访问权,当且仅当S支配O,即Ao,Co≤As,Cs。*特性(向上写)主体s对客体o具有写访问权,当且仅当O支配S,即Ao,Co≥As,Cs。稳定原则主体和客体的安全级别在它们被引用时必须保持不变。低高信息读低高信息写主体主体客体客体二、强制访问控制模型医学资料16②BL-P模型强制性通过比较主体和客体之间的安全级别的支配关系来控制主体对客体的访问。主体不能自主的授予客体权力或回收权力。优缺点更安全:可以阻止某些类型的特洛伊木马攻击。缺点是对用户限制较多,用户感到不够灵活。主要保护秘密性,缺乏对真实性和完整性保护。B级以上操作系统:多数安全操作系统,MULTICS二、强制访问控制模型医学资料17③MAC和DAC的应用在C级操作系统中应用MAC访问控制模型在B级以上操作系统中将MAC和DAC联合应用二、强制访问控制模型访问请求接受访问MAC检查DAC检查拒绝访问失败通过通过医学资料182、基于角色的访问控制模型①BRAC介绍由IST的Ferraiolo等人在90年代提出。NIST成立专门机构进行研究。96年提出一个较完善的基于角色的访问控制参考模型RBAC96。二、强制访问控制模型医学资料19②BRAC的基本思想根据用户在一个组织中担任的角色来确定对其所的授权。如,张三今天担任科长,则应授予他科长的权限,明天他提升为处长,则应授予他处长的权限。一个用户担任一个角色后,便可以拥有该角色的权限,但是他不能将权限转授给别人。BRAC是强制访问模型,不是DAC虽然一个用户担任一个角色后,便可以拥有该角色的权限,但是他不能将权限转授给别人。如,在医院里医生拥有开处方的权限,但他不能将开处方的权限转给护士。二、强制访问控制模型医学资料20②BRAC的基本概念RBAC的基本思想是根据用户所担任的角色来决定用户的在系统中的访问权限。一个用户必须扮演某种角色,而且还必须激活这一角色,才能对一个对象进行访问或执行某种操作。安全管理员用户角色/权限指定访问或操作激活二、强制访问控制模型医学资料21②BRAC的基本概念用户(User)访问计算机资源的主体。用户集合为U.角色(role)一种岗位,代表一种资格、权利和责任。角色集合为R.权限(permission)对客体的操作权力。权限集合为P.用户分配(UserAssignment)将用户与角色关联。用户分配集合为UA={(u,r)|u∈U,r∈R}.用户u与角色r关联后,将拥有r的权限。二、强制访问控制模型医学资料22②BRAC的基本概念权限分配(PermissionAssignment)将角色与权限关联。权限分配集合为PA={(p,r)|p∈P,r∈R}.权限p与角色r关联后,角色r将拥有权限p。激活角色(ActveRole)角色只有激活才能起作用,否则不起作用。通过会话激活角色。会话(Session)用户要访问系统资源时,必须先建立一个会话。一次会话仅对应一个用户。一次会话可激活几个角色。二、强制访问控制模型医学资料23③BRAC的基本机制RBAC的授权机制:a.分为两步:将用户分配给角色将访问权限分配给角色b.授权要满足安全约束条件。最小特权原则职责分离原则角色互斥原则角色激活限制原则c.角色分级,高级角色可以继承低级角色的访问权限。二、强制访问控制模型医学资料24③BRAC的基本机制RBAC用户与角色的关系:(多对多关系)a.一个用户可担当多个角色b.一个角色可分配给多个用户角色和权限之间的关系:(多对多的关系)a.一个角色可以拥有多个访问权限,b.不同的角色也可以拥有相同的权限。角色和角色的关系:(分级关系)高级角色可以继承低级角色的访问权限。二、强制访问控制模型医学资料25③BRAC的基本机制会话:a.用户要访问系统资源时,必须先建立一个会话。b.一次会话仅仅对应一个用户。c.一次会话中可以激活几个角色。d.角色激活要满足安全约束。激活:a.激活是角色的一种状态。b.通过会话激活角色。c.只有激活的角色才起作用。二、强制访问控制模型医学资料26③BRAC的基本机制角色分级a.角色分级是组织角色的一种自然方法。b.角色分级的结果将导致一个角色可以直接或间接地继承另一角色的访问权限。c.直接继承:相邻角色之间的继承。d.间接继承:非相邻角色之间的继承。e.高低级角色之间的继承关系是一种偏序关系。二、强制访问控制模型医学资料27角色分级(rolehierarchy)继承关系高级角色中间角色高级角色低级角色低级角色中间角色中间角色高级角色二、强制访问控制模型医学资料28③BRAC的基本机制安全约束约束是设计高级安全策略的一个强有力的机制。各个环节施加安全约束,以实现不同的安全策略。可以定义在系统层,也可以定义在应用层。可以是事件触发的,也可以不是事件触发的。职责分离约束合理划分任务和相关权限,以保证多用户协同工作的安全性。如,公检法三权分立,互相配合,又互相监督。二、强制访问控制模型医学资料29角色互斥约束如果一组角色是互斥的,那么一个用户或同一个访问权限只能被分配给其中的一个角色。利用角色互斥约束可实现职责分离。例如,一个人不能又当裁判员又当运动员。最小特权约束只给角色分配完成某工作所需的最小权力。角色激活约束激活数约束限制一个角色同时授权和激活的数目。如总经理只有1个。角色激活时间约束限制一个角色激活的时间。如岗位任期制。二、强制访问控制模型医学资料30④BRAC96模型BRAC96模型包括4个层次:BRAC0:基础模型BRAC1:在BRAC0的基础上增加了角色分级BRAC2:在BRAC0的基础上增加了角色和权限约束BRAC3:集成了BRAC1和BRAC2二、强制访问控制模型BRAC3加强模型BRAC0基础模型BRAC2高级模型高级模型BRAC1医学资料31④BRAC96模型BRAC0用户集U,角色集R,权限集P,会话集SUAUR:多对多的用户角色分配关系PAPR:多对多的权限角色分配关系SU:影射每个会话到一个用户S2R:影射每个会话到一组角色R(s){r|(U(S),r)UA}并且会话s拥有权限UrR(s){p|(p,r)PA}.可见:RBAC0只包括最基本的元素:用户、角色、权限、会话。角色不分级,也没有安全约束。二、强制访问控制模型医学资料32④BRAC96模型BRAC1BRAC1包含BRAC0,增加了角色分级继承关系。U,R,P,S,UA,PA与BRAC0一致。RHRR是R上的偏序,记为,称为角色继承关系PAPR:多对多的权限角色分配关系S2R:影射每个会话到一组角色R(s){r|(r’r)[U(S),r’)