G.O.S.S.I.P 阅读推荐 2022-04-25

admin 2022年4月26日00:14:08评论42 views字数 1677阅读5分35秒阅读模式

和往年不同,今年的NDSS会议姗姗来迟,到了4月才和大家见面。本周我们集中为大家介绍NDSS 2022上的论文,今天首先为大家推荐的一篇关于控制流完整性(Control Flow Integrity,CFI)相关评估的研究论文

G.O.S.S.I.P 阅读推荐 2022-04-25


我们知道,在系统安全领域,想要搞基于全程序lockdown的动态清零是不现实的。在现实中一般有两种策略,一种是对代码进行信息隐藏(例如利用ASLR来防止攻击者了解代码的信息),一种则是识别出非法的程序执行(路径)并加以切断。CFI就是后者的典型代表技术。但是,近年来现实中的CFI技术大部分都叫好不叫座,像微软的Control Flow Guard在现实中应用远不如ASLR来得广泛。而且尽管2005年开始研究人员和工业界就一直在持续推动CFI的普及,但CFI在保护的完备性和效率两方面一直存在被人诟病的不足之处。本文作者认为,现在大家对CFI的评估本身就存在问题,没有一套很科学的评测机制和测度来衡量到底一个CFI技术是好是坏,因此本文的主要目标就是去建立一套更好的评估框架,让大家在吵架之前首先能更客观地评判技术的优劣。

作者在本文中设计了一套名为CFInsight的框架,这套框架的特点是

  1. 提出了一种名为CFGInsulation的测量标准,和传统的评判标准相比,能更准确地判定CFI方案的防御能力

  2. 根据CFGInsulation的指导,提出了NumCFI这一CFI策略生成器。NumCFI生成的CFI封控/管控/防范策略和传统的策略相比,更符合CFGInsulation所指引的目标

  3. 利用NumCFI生成器,生成了一套名为l+tCFI的CFI原型方案,这套方案能够精确抗疫,对整个程序的运行仅仅增加了1.27%的损耗

G.O.S.S.I.P 阅读推荐 2022-04-25

话不多说,着重介绍一下这篇文章的精华——CFGInsulation测量标准(测度,metrics)。作者首先强调了两个基本事实:第一,代码重用攻击需要利用的路径越长(基本块数量越多),攻击难度就越大;第二,代码重用攻击可利用的路径数目越多,攻击难度就越小。这里要解释一下,所谓的攻击路径就是指从有漏洞的代码到一个可以执行syscall的基本块这整个执行流程,即作者认为攻击的终点一般都是一个具有执行syscall功能的基本块。

在实际操作中,CFGInsulation测量标准可以用如下计算公式计算,分子取所有可利用的路径中最短的一条(所包含的基本块个数),而分母则取所有的线性无关的可利用路径的数目。这个分母的计算看上去有点奇怪,但是如果你仔细看一下论文里面脚注说明,这个分母是一个叫做McCabe’s cyclomatic complexity的东西,即可以根据控制流图的边(E)和节点(N)数目来计算出来(|E| −|N| + 2),这时候你会不会想起什么定理呢?对!伟大的欧拉和他的图论定理!!!

G.O.S.S.I.P 阅读推荐 2022-04-25

有了测度,接下来只需要对实施了特定CFI策略的程序进行抽象,计算相关的CFGInsulation值,值越大,说明程序越难以被攻击者利用,也就间接说明了该CFI策略的保护能力更强。具体地,CFInsight对一个特定的CFI策略进行评估时,会分析原程序的CFG中不存在,但是该CFI策略允许的一些路径,把这些路径加入到程序中去,得到一个扩展的CFG,然后计算相关的CFGInsulation


G.O.S.S.I.P 阅读推荐 2022-04-25


G.O.S.S.I.P 阅读推荐 2022-04-25

在实际评估中,作者对SoFCFI(Intel出品)、TypeCFI(PaX Team出品)、NumArgCFI(IEEE S&P 2016)和NoCFI(不采用CFI)进行了横向测评:

G.O.S.S.I.P 阅读推荐 2022-04-25

G.O.S.S.I.P 阅读推荐 2022-04-25


从上面的图表可以看出,在这些CFI策略方案中,TypeCFI是表现最好的一个。但是作者表示,你们都不行,且看我自己家的NumCFI生成器的表现

G.O.S.S.I.P 阅读推荐 2022-04-25

G.O.S.S.I.P 阅读推荐 2022-04-25


作者最后还详细评估了NumCFI生成器生成的l+tCFI原型方案的性能开销:

G.O.S.S.I.P 阅读推荐 2022-04-25

G.O.S.S.I.P 阅读推荐 2022-04-25

论文PDF:

https://www.ndss-symposium.org/wp-content/uploads/2022-165-paper.pdf

原文始发于微信公众号(安全研究GoSSIP):G.O.S.S.I.P 阅读推荐 2022-04-25

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年4月26日00:14:08
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   G.O.S.S.I.P 阅读推荐 2022-04-25https://cn-sec.com/archives/943004.html

发表评论

匿名网友 填写信息