论文部分内容阅读
物联网设备的普及给人们的日常生活和工作提供了方便,但同时也带来了许多安全风险。近年来,利用固件中的漏洞对物联网设备进行攻击的事件时有发生,使得固件的安全问题受到了越来越多的关注。其中,跨平台的固件漏洞检测是固件安全的一个重要研究方向。由于代码复用现象的普遍存在,导致不同平台上的固件经常受到相同已知漏洞的影响。通过对跨平台的固件漏洞进行检测,可以降低同源已知漏洞对设备所造成的威胁,有助于提升系统的安全性。现有工作通常使用通用的函数相关特征来进行跨平台的固件漏洞检测并取得了一定的效果。但是同一特征在不同平台上可能会存在一些差异,导致这些方法在某些情况下的检测效果变差。为了改善上述情况,本文以现有工作作为基础,主要进行了以下几个方面的研究工作:
1)提出了一种基于模式专用数值特征的函数筛选方法。本文以关联模式来描述不同的跨平台场景。所谓模式专用数值特征,即适应于对应关联模式的数值特征。本文以现有相关工作discovRE中使用的数值特征作为基础,在不同的关联模式下对其进行鲁棒性分析,从而确定模式专用数值特征,然后基于这些数值特征对函数进行快速筛选。本文以OpenSSL为测试集,实验结果表明,基于模式专用数值特征的函数筛选方法与discovRE中的函数筛选方法相比具有更好的筛选效果。在ARM到x86、x86到ARM和MIPS到x86这三种关联模式下的改进效果比较明显,其召回率都提升了7%以上。此外,在本文所讨论的各种关联模式下,其召回率平均提升了5.12%。
2)提出了一种基于模式专用数值特征与结构特征的跨平台固件漏洞检测算法。算法的第一个阶段使用模式专用数值特征对函数进行筛选,从而获取候选函数集;算法的第二个阶段则使用五层局部调用图对函数进行精确匹配,从而找出与漏洞函数实际匹配的函数。实验结果表明,该算法相对于一些相关的研究工作而言具有更好的漏洞检测效果。在OpenSSL测试集上,该算法计算出的漏洞函数与其同源函数之间的相似度排名第一,从而能够准确地检测出与漏洞函数实际匹配的函数。
3)提出了一种基于加权三层局部调用图的精确匹配方法。首先将局部调用图由五层减少至三层,以提升算法的运行效率。然后在三层局部调用图的基础上,引入调用频次信息生成加权三层局部调用图,以弥补函数结构特征上的信息损失。实验结果表明,相比于五层局部调用图而言,加权三层局部调用图虽然在Top1指标上平均下降了0.84%,但其匹配效率约为前者的2.6倍。换言之,这种加权三层局部调用图能够以较少的准确率为代价对算法的效率进行一定程度上的提升。最后,本文还结合模式专用数值特征与加权三层局部调用图对一些真实的固件漏洞函数进行检测,均能有效地找到与漏洞函数实际匹配的函数。
1)提出了一种基于模式专用数值特征的函数筛选方法。本文以关联模式来描述不同的跨平台场景。所谓模式专用数值特征,即适应于对应关联模式的数值特征。本文以现有相关工作discovRE中使用的数值特征作为基础,在不同的关联模式下对其进行鲁棒性分析,从而确定模式专用数值特征,然后基于这些数值特征对函数进行快速筛选。本文以OpenSSL为测试集,实验结果表明,基于模式专用数值特征的函数筛选方法与discovRE中的函数筛选方法相比具有更好的筛选效果。在ARM到x86、x86到ARM和MIPS到x86这三种关联模式下的改进效果比较明显,其召回率都提升了7%以上。此外,在本文所讨论的各种关联模式下,其召回率平均提升了5.12%。
2)提出了一种基于模式专用数值特征与结构特征的跨平台固件漏洞检测算法。算法的第一个阶段使用模式专用数值特征对函数进行筛选,从而获取候选函数集;算法的第二个阶段则使用五层局部调用图对函数进行精确匹配,从而找出与漏洞函数实际匹配的函数。实验结果表明,该算法相对于一些相关的研究工作而言具有更好的漏洞检测效果。在OpenSSL测试集上,该算法计算出的漏洞函数与其同源函数之间的相似度排名第一,从而能够准确地检测出与漏洞函数实际匹配的函数。
3)提出了一种基于加权三层局部调用图的精确匹配方法。首先将局部调用图由五层减少至三层,以提升算法的运行效率。然后在三层局部调用图的基础上,引入调用频次信息生成加权三层局部调用图,以弥补函数结构特征上的信息损失。实验结果表明,相比于五层局部调用图而言,加权三层局部调用图虽然在Top1指标上平均下降了0.84%,但其匹配效率约为前者的2.6倍。换言之,这种加权三层局部调用图能够以较少的准确率为代价对算法的效率进行一定程度上的提升。最后,本文还结合模式专用数值特征与加权三层局部调用图对一些真实的固件漏洞函数进行检测,均能有效地找到与漏洞函数实际匹配的函数。