Keywords
远程认证;控制流攻击;嵌入式系统安全
Problem Setting
- 如果通过认证,则进入授权路径;否则进入无授权路径
- 授权路径:N1-N2-N5-N4
- 无授权路径:N1-N3-N6-N4
- 有控制流漏洞的程序(比如可能存在栈溢出的情况),可能会通过修改某些函数变量的值,间接修改函数返回的地址,这样就会导致程序按非预期的(非授权的)路径运行
System Model
目标:Ver 希望确定远程嵌入式系统 Prv 的运行时控制流
- 通过静态分析,生成控制流图
- 测量每个可能的控制流路径,并存到数据库
- Ver 向 Prv 发起挑战,Prv 执行一个函数,然后计算被执行的 CFG(控制流图)。这样会生成一个经过认证的数字签名,并存至数据库。
小结
这篇论文的主要工作是提出一种认证,这种控制流认证会使系统的安全控制流程被写入数据库,这个数据库(我认为也可以是其他的一些数据结构)会在我们后续的研究中,比如安全状态观测和动态调整流程或许是有用的。