BLP
模型
BLP
模型对安全性进行分级,
用格作为描述系统安全性级别的数学工具,
由
函数
:
F
S
O
L
C
产生主体和客体的安全级别,其中,
S
和
O
分别是主体和
客体的集合,
L
是格结构,
C
是安全级别的集合。
BLP
模型抽象出的访问权限有
四种,分别是只可读
re
、只可写
a
、可读写
w
和不可读写(可执行)
e
(记作
{
,
,
,
}
R
re
a
w
e
)
。
BLP
模型也涉及主体、
客体、
访问矩阵等概念,
但是
BLP
模
型与
HRU
模型之间存在明显的区别,如主体和客体不再随着系统的状态变化:
BLP
模型是一个状态机模型,
包含状态的集合
V
(其元素用二元组
(
,
)
F
B
表
示)
、一个初始状态
0
v
(
0
v
V
)
、请求的集合
{
,
,
|
,
,
}
Q
s
o
r
s
S
o
O
r
R
以
及一个转移函数
:
T
V
R
V
。
当请求被执行,
T
改变系统的状态,
R
或者
F
发
生变化。
BLP
模型提出了系统安全的充要条件是满足以下两个公理(特性)
:
特性
1
简单安全性(
ss-
性质)
:
状态
v
满足简单安全性,当且仅当对于
s
S
,
o
O
,
[
,
]
(
)
(
)
r
A
s
o
F
s
F
o
;
特性
2
星号安全性(
*-
性质)
:
状态
v
满足星号安全性,当且仅当对于
s
S
,
o
O
,
[
,
]
(
)
(
)
w
A
s
o
F
o
F
s
。
符号“
”表示前者支配后者,定义为:
定义
(支配)
:
安全级别
(
,
)
L
C
支配安全级别
(
',
')
L
C
,
当且仅当
'
L
L
,
'
C
C
。
BLP
模型的原理总结为:不能向上读,不能向下写,即主体不能读安全级
别比自己高的客体,不能写安全级别比自己低的客体。
定义(自主安全性,
ds-
特性)
:
状态
v
满足自主安全性,当且仅当对于任意的
(
,
,
)
i
j
s
o
x
Q
,
ij
x
M
。
ss-
性质和
*-
性质处理的是强制访问控制,而
ds-
特性处理自主访问控制。强
制访问控制的权限由特定的安全管理员确定,
由系统强制实施;
自主访问控制的
权限由客体的所有者自主确定。
定理(基本安全定理,
BST
)
:
如果所有的系统状态转移都满足
ss-
特性、
*-
特性
和
ds-
特性的要求,则在系统的整个状态变化过程中,系统的安全性不会被
破坏。
BLP
模型形式化地定义了系统、
状态、
状态间的转移规则以及
“安全”
的概