云服务器运行时完整性建模:作用域不变量视角
1. 不变量与不变量依赖图
在某些情况下, 1i
为代码, 2i
为数据,控制能否转移到 1i
取决于 2i
的值;还有情况是 1i
和 2i
均为数据, 1i
的评估依赖于 2i
的评估。当 2i
是函数指针, 1i
是 2i
所指向的函数时,就符合特定定义中的情形。
不变量依赖图(IDG)是一个有向无环图 G = <V, E>
,其中 V
的每个成员代表一个作用域不变量。若 i1 ∈ V
, i2 ∈ V
,且 i1
依赖于 i2
,则存在一条边 e = (i1, i2) ∈ E
。IDG 是作用域不变量及其关系的便捷表示,它能为自底向上评估目标系统的完整性提供有用指导。例如,若完整性属性 i
依赖于 i1, i2, ..., im
,那么为使 i
为真, i1, i2, ..., im
都必须为真。所以决策者应先评估 i1, i2, ..., im
,再评估 <