第三讲 安全策略与安全模型课件_第1页
第三讲 安全策略与安全模型课件_第2页
第三讲 安全策略与安全模型课件_第3页
第三讲 安全策略与安全模型课件_第4页
第三讲 安全策略与安全模型课件_第5页
已阅读5页,还剩131页未读 继续免费阅读

下载本文档

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

文档简介

4-3安全策略与安全模型1第三讲安全策略与安全模型

一数学基础

1.集合元素子集

a∈AHS2.集合的幂集

2A=P(A)={HA}3.笛卡尔积

A×B={(a,b)|a∈A,b∈B}

4.集合A上的关系的性质

是A上的关系,a∈A

均aa--------自反

是A上的关系,a,b∈A若a

b,则ab与ba不能同时出现

--------反对称

是A上的关系,a,b,c∈A若ab,bc则一定有ac---------可传递的4-3安全策略与安全模型2偏序关系:集合A

上的关系ρ

,如果它是自反、反对称且可传递的,则称ρ为A

上的一个偏序关系。

“偏序关系”也叫做“偏序”,用“≤”符号表示。可比:设≤是集合A

上的偏序,对于a、b∈A,若有a≤b

或b≤a,则称a和b是可比的,否则称a和b是不可比的5.集合上的偏序关系4-3安全策略与安全模型3全序:一个集合A

上的任意两个元素之间都满足偏序关系,则称该偏序为A

上的一个全序

良序:一个集合A

上的偏序,若对于A

的每一个非空子集S

A,在S

中存在一个元素as(称为S

的最小元素),使得对于所有的s∈

S,有as≤s,则称它为A上的一个良序5.集合上的偏序关系4-3安全策略与安全模型47.一个有用的结论

命题:若<A;≤1>和<B;≤2>是两个偏序集,在笛卡尔积A×B上定义关系≤,对任意(a1,b1),(a2,b2)∈A×B当且仅当

a1≤1a2,b1≤2b2时,有(a1,b1)≤(a2,b2)

可以证明:<A×B;≤>也是一个偏序集4-3安全策略与安全模型5因为<A;≤1>、<B;≤2>为偏序关系,所以

a1

∈A

有a1≤1

a1,b1

∈B

有b1≤1

b1所以(a1,b1)≤(a1,b1)自反由(a1,b1)≤(a2,b2)(a2,b2)≤(a1,b1),可得a1≤1a2,a2≤1a1

可得a1=a2;同理有b1=b2,此即(a2,b2)=(a1,b1)

反对称又由(a1,b1)≤(a2,b2)(a2,b2)≤(a3,b3),此即a1≤1a2,a2≤1a3

可得a1≤1a3同理:b1≤2b2,b2≤2b3可得b1≤2b3

最后有(a1,b1)≤(a3,b3)传递性4-3安全策略与安全模型6亦即(i)(a,b)∈A×B,均有(a,b)≤(a,b)(ii)(a1,b1),(a2,b2),∈A×B,若(a1,b1)

(a2,b2),

则(a1,b1)≤(a2,b2)

与(a2,b2)≤(a1,b1)

不能同时出现

(iii)(a1,b1),(a2,b2),(a3,b3)∈A×B,若(a1,b1)≤(a2,b2),(a2,b2)≤(a3,b3)

则一定有(a1,b1)≤(a3,b3)设是A上的关系,a∈A均aa--------自反设是A上的关系,a,b∈A若a

b,则ab与ba不能同时出现

--------反对称设是A上的关系,a,b,c∈A若ab,bc则一定有ac---------可传递的4-3安全策略与安全模型7二安全策略1.安全策略的概念计算机系统的安全策略是为了描述系统的安全需求而制定的对用户行为进行约束的一整套严谨的规则。这些规则规定系统中所有授权的访问,是实施访问控制的依据。4-3安全策略与安全模型82.安全策略举例

①军事安全策略中的强制访问控制策略:

系统中每个主体和客体都分配一个安全标准

(安全级)

客体的安全级表示客体所包含的信息的敏感程度主体的安全级表示主体在系统中受信任的程度

4-3安全策略与安全模型9②安全标准由两部分组成

(密级,部门(或类别)集)eg:密级分为4个级别:一般秘密机密绝密

(UCSTS)令A={U,C,S,TS},则<A;≤>是A上的全序,构成偏序集<A;≤>例:令B={科技处,干部处,生产处,情报处},PB=2B={H|HB},显然<PB;>构成一个偏序集

class(O1)=(C,{科技处})class(u)=(S,{科技处,干部处})

class(O2)

=(TS,{科技处,情报处,干部处})class(O3)=(C,{情报处})4-3安全策略与安全模型10在实施多级安全策略的系统中,系统为每一个主体和每一个客体分配一个安全级。(密级,部门(或类别)集)或(密级,{部门或类别})

若某主体具有访问密级a的能力,则对任意b≤a,该主体也具有访问b的能力若某主体具有访问密级a的能力,则对任意b≥a,该主体不具有访问b的能力4-3安全策略与安全模型11(密级,{部门或类别或范畴})理解:对于客体来说,{部门或类别或范畴}可定义为该客体所包含的信息所涉及的范围部门或所具有的类别属性对于主体来说,{部门或类别或范畴}可定义为该主体能访问的信息所涉及的范围或部门例:2011年财务报表(S,{财务处,总裁办公室,党办,财经小组})4-3安全策略与安全模型12例:2011年财务报表(S,{财务处,总裁办公室,党办,财经小组})肯定不会写成:(S,{财务处,三车间,大门})例:车间主任(C,{三车间,仓库})肯定不会写成:(S,{财务处,党办,财经小组})4-3安全策略与安全模型13主体、客体安全级定义以后,就可以通过比较主客体安全级,来决定主体对客体的访问以及什么样的访问。前面讲过,在实施多级安全策略的系统中,系统为每一个主体和每一个客体分配一个安全级。若某主体具有访问密级a的能力,则对任意b≤a,该主体也具有访问b的能力。若某主体具有访问密级a的能力,则对任意b≥a,该主体不具有访问b的能力。那么,b≤a或b≥a如何进行比较呢?4-3安全策略与安全模型14定义A={U,C,S,TS}

B={部门或类别或范畴}例:B=

{科技处,干部处,生产处,情报处}

PB=2B={H|H

B}在A×PB上定义一个二元关系“≤”:

A×PB={(a,H)|a∈A且H

PB}(a1,H1),(a2,H2)∈A×PB,当且仅当

a1≤a2,H1

H2时,有

(a1,H1)≤(a2,H2)可以证明:≤是A×PB上的一个偏序关系即<A×PB;≤>构成一个偏序集。4-3安全策略与安全模型15可利用命题:若<A;≤1>和<B;≤2>是两个偏序集,在笛卡尔积A×B上定义关系≤,对任意(a1,b1),(a2,b2)∈A×B当且仅当

a1≤1a2,b1≤2b2时,有(a1,b1)≤(a2,b2)

可以证明:<A×B;≤>也是一个偏序集。证明:≤是A×PB上的一个偏序关系即<A×PB;≤>构成一个偏序集。4-3安全策略与安全模型16在A={U,C,S,TS}上定义<A;≤>,由于

UCSTS,所以≤是一个全序,显然构成一个偏序集在PB上定义<PB;>,容易看出,它也是一个偏序

B={科技处,干部处,生产处,情报处}再在A×PB上定义一个二元关系“≤”:

A×PB={(a,H)|a∈A且H

PB}(a1,H1),(a2,H2)∈A×PB,当且仅当

a1≤a2,H1

H2时,有

(a1,H1)≤(a2,H2)根据上述命题,<A×PB;≤>构成一个偏序集。4-3安全策略与安全模型17例:class(O1)=(C,{科技处})class(u)=(S,{科技处,干部处})class(O2)=(TS,{科技处,情报处,干部处})class(O3)=(C,{情报处})

O1uO2O3其安全级如何?可以看出:class(O1)=(C,{科技处})≤(S,{科技处,干部处})=class(u)class(u)=(S,{科技处,干部处})≤class(O2)=(TS,{科技处,情报处,干部处})class(u)与class(O3)不可比4-3安全策略与安全模型18在一偏序集<L;≤>中,

l1,12∈L,若l1≤12,则称12支配l1。class(O1)≤class(u)

:主体u的安全级支配客体O1的安全级class(u)≤class(O2):客体O2的安全级支配主体u的安全级class(u)与class(O3)不可比:主体u与客体O3的安全级相互不可支配。

4-3安全策略与安全模型19③访问控制策略

一个主体仅能读安全级比自已安全级低或相等的客体一个主体仅能写安全级比自己高或相等的客体即“向下读向上写”④安全级如何比较高低

(a1,H1)(a2,H2)当且仅当a1

a2,H1

H2

所以u对O1可读,对O2可写,对O3既不可读也不可写4-3安全策略与安全模型20“向下读向上写”安全策略执行的结果是信息只能由低安全级的客体流向高安全级的客体,高安全级的客体的信息不允许流向低安全级的客体。若要使一个主体既能读访问客体,又能写访问这个客体,两者的安全级必须相同。4-3安全策略与安全模型21多级安全策略适合(保护信息的机密性):军事系统政府及企业的办公自动化系统具有层次结构的组织机构4-3安全策略与安全模型222商业安全策略

①良性事务

用户对数据的操纵不能任意进行,而应该按照可保证数据完整性的受控方式进行,即数据应该用规定的程序,按照定义好的约束进行处理。例:保存记录(包括修改数据之前修改数据之后的记录),事后被审计双入口规则:数据修改部分之间保持平衡内部数据的一致性特别地,签发一张支票与银行帐号户头上的金额变动必须平衡

——可由一个独立测试帐簿是否平衡的程序来检查4-3安全策略与安全模型23②职责分散

把一个操作分成几个子操作,不同的子操作由不同的用户执行,使得任何一个职员都不具有完成该任务的所有权限,尽量减少出现欺诈和错误的机会。eg:购买订单——记录到货——记录货发票——付款美入境签证4-3安全策略与安全模型24职责分散的最基本规则是,被允许创建或验证良性事务的人,不能允许他去执行该良性事务。【至少需要两个人的参与才能进行】【职员不暗中勾结,职责分散有效】【随机选取一组职员来执行一组操作,减少合谋机会】4-3安全策略与安全模型25良性事务与职责分散是商业数据完整性保护的基本原则专门机制被商业数据处理计算机系统用来实施良性事务与职责分散规则。(a)保证数据被良性事务处理数据只能由一组指定的程序来操纵程序被证明构造正确、能对这些程序的安装能力、修改能力进行控制、保证其合法性(b)保证职责分散每一个用户必须仅被允许使用指定的程序组、用户执行程序的权限受控4-3安全策略与安全模型26商业数据完整性控制与军事中的数据机密性差别:(a)数据客体不与特定的安全级别相关只与一组允许操纵它的程序相联系(b)用户直接读写数据被禁止被授权去执行与某一数据相关的程序【一个用户即便被授权去写一个数据客体,他也只能通过针对那个数据客体定义的一些事务去做。】4-3安全策略与安全模型27商业安全策略也是一种强制访问控制但它与军事安全策略的安全目标、控制机制不相同商业安全策略强制性体现在:(a)用户必须通过指定的程序来访问数据(b)允许操纵某一数据客体的程序列表和允许执行某一程序的用户列表不能被系统的一般用户所更改军事与商业安全相同点:(1)一种机制被计算机系统用来保证系统实施了安全策略中的安全需求(2)系统中的这种机制必须防止窜改和非授权的修改4-3安全策略与安全模型28(3)军事安全策略与商业安全策略的比较①军事安全策略——数据的机密性

商业安全策略——数据的完整性

②军事安全策略——将数据与一个安全级相联系,通过数据的安全级来控制用户对数据的访问

商业安全策略——将数据与一组允许对其进行操作的程序相联系,通过这组程序来控制用户对数据的访问③军事安全策略——用户对数据的操纵是任意的

商业安全策略——用户对数据的操纵是受限的

4-3安全策略与安全模型29三安全模型安全模型是对安全策略所表达的安全需求简单、抽象和无歧义的描述分为:1.非形式化的安全模型

2.形式化的安全模型

4-3安全策略与安全模型302.形式化的安全模型安全系统的开发过程安全需求分析制定安全策略建立形式化的安全模型安全性证明安全功能4-3安全策略与安全模型31四

Bell-LaPadula模型

简称BLP模型应用最早也最广泛的一个安全模型DavidBell和LeonardLaPadula模型目标:计算机多级操作规则安全策略:多级安全策略常把多级安全的概念与BLP相联系其它模型都尝试用不同的方法来表达多级安全策略4-3安全策略与安全模型32四

Bell-LaPadula模型

BLP模型是一个形式化模型使用数学语言对系统的安全性质进行描述BLP模型也是一个状态机模型它反映了多级安全策略的安全特性和状态转换规则BLP模型定义了系统、系统状态、状态间的转换规则安全概念、制定了一组安全特性对系统状态、状态转换规则进行约束如果它的初始状态是安全的,经过一系列规则都是保持安全的,那么可以证明该系统是安全的4-3安全策略与安全模型33ABCDEaaaaabbbbb状态机模型例4-3安全策略与安全模型34四

Bell-LaPadula模型

(一)模型的基本元素

S={s1,s2,…,sn}主体集O={o1,o2,…,om}客体集C={c1,c2,…,cq}密级的集合

c1<c2<…<cq

K={k1,k2,…,kr}部门或类别的集合

A={r,w,e,a,c}访问属性集

r:只读;w:读写;e:执行;a:添加;c:控制RA={g,r,c,d}请求元素集

g:get,give;

r:release,rescind

c:change,create;d:delete

D={yes,no,error,?}yes-请求被执行;

no-请求被拒绝

error-系统出错;?-请求出错

4-3安全策略与安全模型35μ={M1,M2,…,Mp}

访问矩阵集BA={f|f:A→B}F=Cs×Co×(Pk)s×(Pk)o

Cs

={f1|f1:S→C}f1给出每个主体的密级Co

={f2|f2:O→C}f2给出每个客体的密级(Pk)s={f3|f3:S→Pk}f3给出每个主体的部门集(Pk)o

={f4|f4:O→Pk}f4给出每个客体的部门集

f∈Ff=(f1,f2,f3,f4)12345679108

f:AB((f1(si),f3(si))主体si的安全级((f2(oj),f4(oj))客体oj的安全级4-3安全策略与安全模型36(二)系统状态V=P(S×O×A)×μ×F

状态集对v∈Vv=(b,M,f)表示某一状态

b

S×O×A

表示在当前时刻,哪些主体获得了对哪些客体的权限b={(s1,o1,r),(s1,o2,w),(s2,o2,a)…….}M-当前状态访问控制矩阵

f-当前时刻所有主体和客体的密级和部门集4-3安全策略与安全模型37系统在任何一个时刻都处于某一种状态v,即对任何时刻t,必有状态vt与之对应随着用户对系统的操作,系统的状态不断地发生变化关心的问题系统在各个时刻的状态,与状态相对应的访问集b是否能保证系统的安全性显然只有每一个时刻状态是安全的,系统才可能安全。BLP模型对状态的安全性进行了定义4-3安全策略与安全模型38(三)安全特性BLP模型的安全特性定义了系统状态的安全性,体现了BLP模型的安全策略。(1)自主安全性

状态v=(b,M,f)满足自主安全性iff

对所有的(si,oj,x)∈b,有x∈Mij

此条性质是说,若(si,oj,x)∈b,即如果在状态v,主体si获得了对客体oj的x访问权,那么si必定得到了相应的自主授权。4-3安全策略与安全模型39(三)安全特性如果存在(si,oj,x)∈b,但主体si并未获得对客体oj的x访问权的授权,则v被认为不符合自主安全性。

(2)简单安全性

状态v=(b,M,f)满足简单安全性iff对所有的(s,o,x)∈b,有(i)x=e或x=a或x=c

或(ii)(x=r或x=w)且(f1(s)≥f2(o),f3(s)

f4(o))SOe,c,aS(高)O(低)r

w在BLP模型中,w权表示可读、可写,即主体对客体的修改权4-3安全策略与安全模型40(3)*—性质

状态v=(b,M,f)满足*—性质,当且仅当对所有的s∈S,若o1∈b(s:w,a),o2∈b(s:r,w),则f2(o1)≥f2(o2),f4(o1)

f4(o2),其中符号b(s:x1,x2)表示b中主体s对其具有访问特权x1或x2的所有客体的集合。理解如下4个图所示:4-3安全策略与安全模型41

S

o1(高)

O2(低)a

rSO1(高)O2(低)awSO1(高)O2(低)wrSO1O2ww

(级别)(级别)相等流向4-3安全策略与安全模型42例:b={(s1,o1,r),(s2,o2,a),(s1,o2,w),(s2,o2,r),(s1,o3,a)}考虑b(s:x1,x2):b(s1:r,w)b(s1:w,a)b(s3:r,w)b(s1:r,w)={o1,o2}b(s1:w,a)={o2,o3}b(s3:r,w)={}=Φ4-3安全策略与安全模型43*—性质重要安全特性o1∈b(s:w,a),意味着s对o1有w权或a权,此时信息经由s流向o1o2∈b(s:r,w),意味着s对o1有r权或w权,此时信息可由o2流向s因此,在访问集b中以s为媒介,信息就有可能由o2流向o1。所以要求o1的安全级必须支配o2安全级当s对o1,o2均具有w权时,两次运用该特性,f2(o1)≥f2(o2),f4(o1)

f4(o2)及,f2(o2)≥f2(o1),f4(o2)

f4(o1),则要求o1的安全级必须等于o2安全级显然它放反映了BLP模型中信息只能由低安全级向高安全级流动的安全策略4-3安全策略与安全模型44(四)请求集

R=S+×RA×S+×O×X

请求集,它的元素是一个完整的请求,不是请求元素集其中S+=S{}X=A{}F

S={s1,s2,…,sn}主体集RA={g,r,c,d}

A={r,w,e,a,c}

F=Cs×Co×(Pk)s×(Pk)o

4-3安全策略与安全模型45R=S+×RA×S+×O×X={

(1,,2,Oj,x)}(1,,2,Oj,x)是一个五元组,表示

(1,,2,Oj,x)

R=S+×RA×S+×O×X

1,,2

S+分别是主体1,主体2

RA

表示某一请求元素

o

j

O表示某一客体

xX

是访问权限or是空or是主客体的安全级4-3安全策略与安全模型46(五)状态转换规则

P:R×V→D×V

其中

R是请求集(S+×RA×S+×O×X),D是判断集,V是状态集

D={yes,no,error,?}V=P(S×O×A)×μ×F

状态集对v∈Vv=(b,M,f)表示某一状态

b

S×O×A

表示在当前时刻,哪些主体获得了对哪些客体的权限b={(s1,o1,r),(s1,o2,w),(s2,o2,a)…….}M-当前状态访问控制矩阵

f-当前时刻所有主体和客体的密级和部门集4-3安全策略与安全模型47

P:R×V→D×V对请求(Rk,vn)R×V,在函数的作用下

(Rk,v)=(Dm,v*)系统对请求Rk的反应是Dm,状态由v转换成v*4-3安全策略与安全模型48十条规则:规则1~规则4用于主体请求对某客体的访问权形式(φ,g,Si,Oj,r)规则5

用于主体释放它对某客体的访问权规则6-7

分别用于主体授予和撤消另一主体对客体的访问权规则8

用于改变静止客体的密级和部门集规则9-10

分别用于创建和删除一个客体4-3安全策略与安全模型49规则1:主体si请求得到对客体oj的r访问权get-read:

1(Rk,v)≡

if

σ1

φorγ

gorx

rorσ2=φ

then

1(Rk,v)=(?,v)

if

r

Mijor(f1(si)<f2(oj)orf3(si)

f4(oj))

then

1(Rk,v)=(no,v)

if

U

1={o|o

b(si:w,a)and[f2(oj)>f2(o)orf4(oj)

f4(o)]}=φ

then

1(Rk,v)=(yes,v*=(b

{(si,oj,r)},M,f))

else

1(Rk,v)=(no,v)

end

(φ,g,Si,Oj,r)

(1,,2,Oj,x)4-3安全策略与安全模型50规则1对主体si的请求作了如下检查:(1)主体的请求是否适用于规则1的请求格式;主体请求对某客体的访问权形式(φ,g,Si,Oj,r)(1,,2,Oj,x)if

σ1

φorγ

gorx

rorσ2=φ

then

1(Rk,v)=(?,v)4-3安全策略与安全模型51(2)oj的拥有者或控制者是否授予了si对oj的读访问权

r

Mij之检查(3)si的安全级是否支配oj的安全级

f1(si)<f2(oj)orf3(si)

f4(oj)4-3安全策略与安全模型52(4)在访问集b中,若si对另一客体o有w/a访问权,是否一定有o的安全级支配oj的安全级

{o|o

b(si:w,a)and[f2(oj)>f2(o)orf4(oj)

f4(o)]}=φNOT[f2(oj)>f2(o)orf4(oj)

f4(o)][f2(oj)<=f2(o)andf4(oj)

f4(o)]4-3安全策略与安全模型53

S

o1(高)

O2(低)a

rSO1(高)O2(低)awSO1(高)O2(低)wrSO1O2ww

(级别)(级别)相等流向4-3安全策略与安全模型54若上述4项检查有一项通不过,则系统拒绝执行si的请求,系统状态保持不变通过检查,则请求被执行,(si,oj,r)添加到系统的访问集b中,系统状态v转换成v*=(b

{(si,oj,r)},M,f))看得出来,检查(2)是系统在实施自主访问控制,检查(3)(4)是系统在实施强制访问控制只有检查(2)-(4)通过了,才能保证状态转换时,仍然保持其安全性4-3安全策略与安全模型55规则2:主体si请求得到对客体oj的a访问权

get-append:

2(Rk,v)≡

ifσ1

φorγ

gorx

aorσ2=φ

then

2(Rk,v)=(?,v) ifa

Mij

then

2(Rk,v)=(no,v) ifU2

={o|o

b(si:r,w)and[f2(oj)<f2(o)orf4(oj)

f4(o)]}=φ then

2(Rk,v)=(yes,(b

{(si,oj,a)},M,f)) else

2(Rk,v)=(no,v)

end4-3安全策略与安全模型56规则2对主体si的请求所作的检查类似规则1不同的是,当si请求以Append方式访问oj时,无需做简单安全性检查。状态v=(b,M,f)满足简单安全性iff对所有的(s,o,x)∈b,有(i)x=e或x=a或x=c或(ii)

(x=r或x=w)且(f1(s)≥f2(o),f3(s)

f4(o))4-3安全策略与安全模型57规则3:主体si请求得到对客体oj的e访问权get-execute:

3(Rk,v)≡

ifσ1

φorγ

gorx

eorσ2=φ

then

3(Rk,v)=(?,v)if

e

Mij

then

3(Rk,v)=(no,v)

else

3(Rk,v)=(yes,(b

{(si,oj,e)},M,f))end4-3安全策略与安全模型58规则3对si的请求只作类似与规则1中的(1)(2)两项检查(1)主体请求对某客体的访问权形式(φ,g,Si,Oj,e)(2)oj的拥有者或控制者是否授予了si对oj的读访问权

r

Mij之检查

Si对请求对Oj的执行权时不需作简单安全性和*—性质的安全检查4-3安全策略与安全模型59规则4:主体si请求得到对客体oj的w访问权get-write:

4(Rk,v)≡

ifσ1

φorγ

gorx

worσ2=φthen

4(Rk,v)=(?,v)ifw

Mijor[f1(si)<f2(oj)orf3(si)

f4(oj)]then

4(Rk,v)=(no,v)ifU4

={o|o

b(si:r)and[f2(oj)<f2(o)orf4(oj)

f4(o)]} ∪{o|o

b(si:a)and[f2(oj)>f2(o)orf4(oj)

f4(o)]}∪{o|o

b(si:w)and[f2(oj)

f2(o)orf4(oj)

f4(o)]}=φ then

4(Rk,v)=(yes,v*)

=(yes,(b

{(si,oj,w)},M,f)) else

4(Rk,v)=(no,v)end4-3安全策略与安全模型60规则4的安全性检查类似于规则1(1)请求对某客体的访问权形式(φ,g,Si,Oj,w)(2)oj的拥有者或控制者是否授予了si对oj的读访问权

r

Mij之检查(3)si的安全级是否支配oj的安全级

f1(si)<f2(oj)orf3(si)

f4(oj)(4)在访问集b中,若si对另一客体o有w/a访问权,是否一定有o的安全级支配oj的安全级

{o|o

b(si:w,a)and[f2(oj)>f2(o)orf4(oj)

f4(o)]}=φ4-3安全策略与安全模型614-3安全策略与安全模型62规则4的*—性质检查较为复杂:U

4={o|o

b(si:r)and[f2(oj)<f2(o)orf4(oj)

f4(o)]}∪{o|o

b(si:a)and[f2(oj)>f2(o)orf4(oj)

f4(o)]}∪{o|o

b(si:w)and[f2(oj)

f2(o)orf4(oj)

f4(o)]}=φ4-3安全策略与安全模型63规则5:主体si请求释放对客体oj的r或w或e

或a访问权release-read/write/append/execute:

5(Rk,v)≡

ifσ1

φorγ

ror(x

r,w,aande)or(σ2=φ) then

5(Rk,v)=(?,v) else

5(Rk,v)=(yes,v*)

=(yes,(b-{(si,oj,x)},M,f))end4-3安全策略与安全模型64规则5用于主体si请求释放对客体oj的访问权,包括r、w、e和a等权因为访问权的释放不会对系统造成安全威胁,所以不需要作安全性检查,并可将四种情形Rk=(φ,r,si,oj,r)

或(φ,r,si,oj,w)

或(φ,r,si,oj,a)

或(φ,r,si,oj,e),用同一条规则来处理4-3安全策略与安全模型65规则6:主体sλ请求授予主体si对客体oj的r或

w或e或a访问权请求的五元组Rk=(sλ,g,si,oj,r)或(sλ,g,si,oj,w)或(sλ,g,si,oj,a)或(sλ,g,si,oj,e),系统的当前状态v=(b,M,f)

give-read/write/append/execute:

6(Rk,v)≡

if(σ1

S)or(γ

g)or(x

r,w,aande)or(σ2=φ)

then

6(Rk,v)=(?,v)ifx

Mλjorc

Mλj

Mλj={x,c,…}

then

6(Rk,v)=(no,v)

else

6(Rk,v)=(yes,(b,M

[x]ij,f))end

4-3安全策略与安全模型66规则6中M

[x]ij表示将x加入到访问矩阵M的第i行第j列元素Mij中去。即用集合Mij∪

{x}替换M中Mij

由于sλ的请求只涉及自主访问控制中的授权,因此规则6除了作请求是否适用于规则6的检查外,仅作自主安全性有关的检查。即sλ自身必须同时具有对客体oj的x权和控制c权,方能对si进行相应的授权

4-3安全策略与安全模型67规则6授权成功后,并不意味着si已获得对oj的x访问权之后si请求对oj的x访问时,系统还要对其进行简单安全性和*—性质的检查4-3安全策略与安全模型68规则7:主体sλ请求撤销主体si对客体oj的r或

w或e或a访问权rescind-read/write/append/execute:

7(Rk,v)≡

if(σ1

S)or(γ

r)or(x

r,w,aande)or(σ2=φ)

then

7(Rk,v)=(?,v)ifx

Mλjorc

Mλj

then

7(Rk,v)=(no,v)

else

7(Rk,v)=(yes,(b-{(si,oj,x)},M

[x]ij,f))end

4-3安全策略与安全模型69系统执行规则7时,不仅从访问矩阵M的i行j列的元素Mij中将x删除掉,而且访问集b中也必须删去三元组(si,oj,x),这意味着主体si将丧失对oj的x访问权

4-3安全策略与安全模型70规则8:改变静止客体的安全级Rk=(φ,c,φ,oj,f*)change-f:

8(Rk,v)≡

if(σ1

φ)or(γ

c)or(σ2

φ)orx

F

then

8(Rk,v)=(?,v)iff1*

f1orf3*

f3or[f2*(oj)

f2(oj)orf4*(oj)

f4(oj)forsomej

A(m)]

注:A(m)表示活动客体的下标集A(m)={j|1<=j<=m且存在i,使Mij

φ}

then

8(Rk,v)=(no,v)

else

8(Rk,v)=(yes,(b,M,f*))end4-3安全策略与安全模型71iff1*

f1orf3*

f3

or[f2*(oj)

f2(oj)orf4*(oj)

f4(oj)forsomej

A(m)]

A(m)={j|1<=j<=m且存在i,使Mij

φ}注意:NOT(f1*

f1orf3*

f3

or[f2*(oj)

f2(oj)orf4*(oj)

f4(oj)

)=

(f1*=f1andf3*=

f3

)AND[f2*(oj)=f2(oj)andf4*(oj)

=f4(oj)

]

4-3安全策略与安全模型72A(m)={j|1<=j<=m且存在i,使Mij

φ}

M32={r,w,a}m1m2f1f2s1{r,w}{r}{a,e}s2{r}{r,w,a}s3m1m2f1f2s1{r,w}{r}{a,e}s2{r}{r,w,a}s3{r,w,a}4-3安全策略与安全模型73A(m)={j|1<=j<=m且存在i,使Mij

φ}A(4)={1,4|存在1、3,使M11

φM34

φ}o1o2o3o4s1{r,w}s2{r}s3{r,w,a}4-3安全策略与安全模型74所谓静止客体是指被删除了的客体,该客体名可以被系统中的主体重新使用例如某存储器段或某个文件名。当该客体被重新使用来存放数据时,客体的安全级不能被定义为创建这一客体的主体的安全级。显然主体可以创建客体,但该客体的安全级必须由系统来定义,因此规则8中没有主体

4-3安全策略与安全模型75A(m)是活动客体的下标集,即A(m)={j|1≤j≤m且存在i,使Mij非空}

规则8的安全性要求是,新定义的安全级f*=(f1*,f2*,f3*,f4*),不能改变系统中主体的安全级,也不能改变活动客体的安全级,只能改变静止客体的安全级,在这种情形下,新状态v*用f*代替原状态v中的f4-3安全策略与安全模型76规则9:主体si请求创建客体ojRk=(,c,si,oj,e)或Rk=(,c,si,oj,φ)

create-object:

9(Rk,v)≡

ifσ1

φorγ

corσ2=φor(x

eandφ)then

9(Rk,v)=(?,v)ifj

A(m)then

9(Rk,v)=(no,v)ifx=φthen

9(Rk,v)=(yes,(b,M

[{r,w,a,c}]ij,f)) else

9(Rk,v)=(yes,(b,M

[{r,w,a,c,e}]ij,f))end4-3安全策略与安全模型77规则9要求主体si所创建的客体不能是活动着的客体 当客体创建成功后,系统便将对oj的所有访问权赋予si,需要区分的是,当oj不是可执行程序时,e权不赋予si4-3安全策略与安全模型78规则10:主体si请求删除客体ojRk=(,d,si,oj,φ)delete-object:

10(Rk,v)≡

ifσ1

φorγ

dorσ2=φorx

φthen

10(Rk,v)=(?,v)ifc

Mij

then

10(Rk,v)=(no,v) else

10(Rk,v)=(yes,(b,M

[{r,w,a,c,e}]ij,1≤i≤n,f))end4-3安全策略与安全模型79si必须对oj具有控制权才能删除oj(在这里,拥有权和控制权是一致的)oj被删除后,oj成为静止客体。此时,访问矩阵的第j列,即oj所对应的列中各元素必须全部清空,不包含任何权限4-3安全策略与安全模型80规则1:主体si请求得到对客体oj的r访问权规则2:主体si请求得到对客体oj的a访问权规则3:主体si请求得到对客体oj的e访问权规则4:主体si请求得到对客体oj的w访问权规则5:主体si请求释放对客体oj的r或w或e

或a访问权4-3安全策略与安全模型81规则6:主体sλ请求授予主体si对客体oj的r或

w或e或a访问权规则7:主体sλ请求撤销主体si对客体oj的r或

w或e或a访问权规则8:改变静止客体的安全级Rk

=(φ,c,φ,oj,f*)

规则9:主体s请求创建客体oj

Rk=(,c,si,oj,e)或Rk=(,c,si,oj,φ)规则10:主体s请求删除客体oj

Rk=(,d,si,oj,φ)4-3安全策略与安全模型82六系统的定义

1.R×D×V×V

={(Rk,Dm,v*,v)|Rk

R,Dm

D,v*,v

V}

R是请求集,D是判定集,V是状态集即:任意一个请求,任意一个结果(判断)和任意两个状态都可组成一个上述的有序四元组,这些有序四元组便构成集合R×D×V×V

4-3安全策略与安全模型83提示:状态转换规则

:R×V→D×V

其中

R是请求集,D是判断集,V是状态集

对请求(Rk,vn)R×V,在函数的作用下

(Rk,v)=(Dm,v*)系统对请求Rk的反应是Dm,状态由v转换成v*D={yes,no,error,?}yes-请求被执行;no-请求被拒绝

error-系统出错;?-请求出错4-3安全策略与安全模型84提示:V=P(S×O×A)×μ×F

状态集对v∈Vv=(b,M,f)表示某一状态

b

S×O×A

表示在当前时刻,哪些主体获得了对哪些客体的权限b={(s1,o1,r),(s1,o2,w),(s2,o2,a)…….}M-当前状态访问控制矩阵

f-当前时刻所有主体和客体的密级和部门集4-3安全策略与安全模型852.设ω={

1,

2,…

s}是一组规则的集合,定义

关系(四元组的集合)W(ω)

R×D×V×V⑴(Rk,?,v,v)

W(ω)iff

对每个i,1≤i≤s,

i(Rk,v)=(?,v)

⑵(Rk,error,v,v)

W(ω)iff

存在i1,i2,1≤i1<i2≤s,使得对任意的v*,v**

V有

i1(Rk,v)

(?,v*)且

i2(Rk,v)

(?,v**)

⑶(Rk,Dm,v*,v)

W(ω),Dm

?,Dm

error,iff

存在唯一的i,使得对某个v*和任意的v**

V,

i(Rk,v)

(?,v**)

i(Rk,v)=(Dm,v*)

4-3安全策略与安全模型86⑵(Rk,error,v,v)解释设ω={

1,

2,…

s}是一组规则的集合error-系统出错,亦即对请求Rk,存在有多条规则适合它则可设存在i1和i2,1<=i1<i2<s,v1*

和v2*,

i1(Rk,v)=(Dm,v1*)

i2(Rk,v)=(Dm,v2*)

上面可写法:对任意v*

和v**,

i1(Rk,v)

(?,v*)且

i2(Rk,v)

(?,v**)此即存在i1,i2,1≤i1<i2≤s,使得对任意的v*,v**

V

i1(Rk,v)

(?,v*)且

i2(Rk,v)

(?,v**)

注:W(ω)={(Rk,?,v,v)

,(Rk,error,v,v),(Rk,Dm,v*,v),k,m非负自然数4-3安全策略与安全模型87(1)请求Rk出错,没有一条规则适合于它(2)系统出错,有多条规则适合于请求Rk(3)存在唯一一条规则适合于请求Rk任一四元组(Rk,Dm,v*,v)∈W(ω)必须满足上述定义中某一条在状态v下,若发出某请求Rk,必存在一判定Dm∈{?,error,yes,no},根据ω中的规则,将状态v转换为状态v*,或保持状态不变4-3安全策略与安全模型883.T={t1,t2,……..}是离散时刻集,用作请求序列、结果序列、状态序列的下标

X=RT={x|x:T→R},x可表示为x=x1x2…xt…是请求序列

X是请求序列集;时刻t时发出的请求用xt表示

Y=DT={y|y:T→D},y可表示为y=y1y2…yt…是结果序列

Y是结果序列集;时刻t时作出的判定用yt表示

Z=VT={z|z:T→V},z可表示为z=z1z2…zt…是状态序列

Z是状态序列集;时刻t的状态用zt表示X×Y×Z={(x,y,z)|x

X,y

Y,z

Z},其中,

x=x1x2…xt… y=y1y2…yt… z=z1z2…zt…4-3安全策略与安全模型894.系统记作∑(R,D,W(ω),z0),其定义为∑(R,D,W(ω),z0)

X×Y×Z

(x,y,z)

∑(R,D,W(ω),z0)iff对每一个tT,(xt,yt,zt,zt-1)

W(ω)。

z0

是系统初始状态,记z0=(,M,f)x1x2xty1y2ytz0z1z2zt-1zt此即BLP模型定义的系统4-3安全策略与安全模型90(七)系统安全的定义BLP模型定义了安全状态、安全状态序列以及系统的安全出现,最后说明了什么样的系统是安全系统1.安全状态

一个状态v=(b,M,f),若它满足自主安全性,简单安全性和*—性质,那么这个状态就是安全的。2.安全状态序列

设z=z1z2…zt…是一状态序列,若对于每一个t

T,zt都是安全状态,则z是安全状态序列。

4-3安全策略与安全模型913.系统的一次安全出现

(x,y,z)

∑(R,D,W(ω),z0)称为系统的一次出现。

若(x,y,z)是系统的一次出现,且z是一安全状态序列,则称(x,y,z)是系统∑(R,D,W(ω),z0)的一次安全出现。4.安全系统

若系统∑(R,D,W(ω),z0)的每次出现都是安全的,则称该系统是一安全系统。

4-3安全策略与安全模型92(八)模型中的有关安全结论1.这十条规则都是安全性保持的即:若v是安全状态,则经过这十条规则转换后的状态v*也一定是安全状态

2.若z0是安全状态,ω是一组安全性保持的规则,则系统∑(R,D,W(ω),z0)是安全的。

4-3安全策略与安全模型93(九)对BLP安全模型的评价1.BLP模型的优缺点:优点:①是一种严格的形式化描述;②控制信息只能由低向高流动,能满足军事部门等一类对数据保密性要求特别高的机构的需求缺点:BLP“过于安全”①上级对下级发文受到限制;②部门之间信息的横向流动被禁止;③缺乏灵活、安全的授权机制。4-3安全策略与安全模型942.BLP中不安全的地方:①低安全级的信息向高安全级流动,可能破坏高安全客体中数据完整性,被病毒和黑客利用。②只要信息由低向高流动即合法(高读低),不管工作是否有需求,这不符合最小特权原则。③高级别的信息大多是由低级别的信息通过组装而成的,要解决推理控制的问题。4-3安全策略与安全模型95例如:设o1>o2>o3>o4,主体S的安全级同o1

时刻t1Sro2高低o3r时刻t2释放对o2的访问权Sao3高低o4r时刻t3S已含有o2和o3的信息此时S可将o2的信息传送到o3(无记忆)4-3安全策略与安全模型96(九)对BLP安全模型的评价在BLP模型中,通过比较主体安全级和客体安全级来确定主体是否对客体具有访问权限。安全检查执行向上写向下读的策略,即主体只能写安全级高(包括相等)的数据,只能读安全级低(包括相等)的数据在实际系统设计过程中,发现传统的BLP模型过于严格和简单,不能满足实际应用的需求,需要进行以下改进:4-3安全策略与安全模型97(九)对BLP安全模型的评价(1)按照BLP模型“向上写”的规则,任何主体都可以写最高安全级的数据,没有限制主体的最高写安全级,从而降低了高安全级数据的完整性。必须限制低安全级主体向高安全级别数据写的能力(2)某些高安全级别的主体不应该总是有能力看到所有低安全级别的数据,必须将主体的读能力限定在一个范围内,而不是允许读所有低安全级别的客体(3)有些低安全级别的数据允许低安全级别主体读,但不意味着允许低级别的主体改写,只有规定的安全级别范围内的主体才能改写4-3安全策略与安全模型98(九)对BLP安全模型的评价(4)对于安全级高的主体而言,不仅要写安全级高的数据,也会有写安全级低的数据的合理需求。静态的主体安全级别限制了主体的这种合理请求,影响了系统的可用性。必须允许主体可以根据数据的情况,在不违反BLP安全公理的条件下,动态调节自己的安全级(5)按照BLP模型,对于某一安全范畴之内的客体,同一安全范畴之内的主体必然至少可以有读写权限中的一种,实践中有时候需要有能力屏蔽主体对特定敏感区域内数据的任何操作4-3安全策略与安全模型99(九)对BLP安全模型的评价可以设计一个增强的多级安全模型,对主体的敏感标记进行扩充,将主体读写敏感度标记分离。读写敏感标记都是由最低安全级和最高安全级组成的区间组成,从而可将主体的读写权限分别限制在一个区间之内,即限制主体的最低写安全级、最低读安全级、最高读安全级和最高写安全级

采用读写分离的区间权限,可以提供丰富的安全管理方案,提高数据完整性和系统的可用性,使系统的安全控制更加灵活方便。要不破坏安全性质,必须将区间敏感度标记与动态调整策略相结合,即主体当前敏感标记必须根据客体敏感标记和主体访问权限的历史过程进行动态调整4-3安全策略与安全模型100(九)对BLP安全模型的评价调整说明读了一个级别的客体后,调整环境限制参数防止信息泄漏,以后就不能写比该客体的安全级别更低级别的客体写了一个级别的客体后,调整环境限制参数防止信息泄漏,以后就不能读比该客体的安全级别更高级别的客体读写了一个级别的客体,调整环境限制参数防止信息泄漏,以后就不能读比这个客体的安全级别更高级别的客体,不能写比这个客体的安全级别更低级别的客体4-3安全策略与安全模型101(九)对BLP安全模型的评价缺点增加了强制存取控制的复杂性优点增加了应用中的灵活性,使得多级安全策略更具有实用性4-3安全策略与安全模型102五

其它几种安全模型

1、安全信息流的格模型1976年D.Deming与BLP模型一致系统中任意操作序列的执行所产生的

温馨提示

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

评论

0/150

提交评论