移动终端软件高速缓存侧信道脆弱性识别仿真

2022-03-15 10:33朱镕申
计算机仿真 2022年2期
关键词:脆弱性信道准确率

黎 秀,潘 虹,朱镕申

(电子科技大学成都学院,四川 成都 611730)

1 引言

互联网技术蓬勃发展的同时,其也承受着多方面的安全威胁,其中广泛关注的便是来自于云环境下智能终端数据收集过程中出现泄漏的安全问题[1,2]。在互联网环境中,侧信道利用共享资源构建隐蔽缓存信道,窃取用户的敏感信息,窃取对象包括智能手机、手表及电动汽车等移动实体设备,给移动终端软件造成极其严重的危害[3,4]。攻击者可利用高速缓存侧信道窃取软件用户敏感信息,对网络用户造成极大的潜在威胁,为了尽量降低高速缓存侧信道对移动终端软件的攻击伤害,提高移动终端软件对高速缓存侧信道的识别和防御能力,许多专家展开了大量的脆弱点识别技术的相关研究。

况晓辉[5]等人提出基于机器学习的软件脆弱性分析方法,基于已有研究成果构建脆弱性挖掘框架,根据程序分析进行分类与对比,从而实现脆弱点的有效识别;李彦瑾和罗霞[6]提出路网脆弱性动态识别方法,在Logistic曲线的基础上进行研究与探讨,构建动态识别指标将路网软件分为正常和非正常,对正常部分建立分配模型,对非正常建立近似模型,通过逆向求解方式达到识别路网脆弱点的目的。还有一些学者通过定义渗透率的方式进行软件脆弱点分析,但也仅仅只针对模块之间信号数据的相互传递,没有分析脆弱点的可利用及对外界的抗干扰能力。基于此,本文提出一种移动终端高速缓存侧信道脆弱性识别方法,构建传播网络,引入复杂网络理论,通过获取全局最优值挖掘出软件中的缓存侧信道脆弱点,结合可能存在的不同缓存访问地址,根据基于差分数据内存访问脆弱点的可利用性进行识别判断,为移动终端软件中高速缓存侧信道脆弱性识别提供有力的参考依据。

2 移动终端软件高速缓存侧信道脆弱性识别

2.1 移动终端高速缓存侧信道脆弱点挖掘

利用最优化分析方法挖掘移动终端高速缓存侧信道脆弱点,并将此作为寻找全局最优的方案[7]。假设软件数据集合A的表达式为

A={A1,A2,…,An}

(1)

将移动终端软件高速缓存侧信道脆弱程度作为评价标准,则评价标准EA的表达式为

EA={EA1,EA2,…,EAn}

(2)

设判决门限为Eth,当Eth≤EA(i)时针对移动终端软件中对应的缓存侧信道脆弱点对应信号进行选择,变量节点参数用于描述局部性质,移动终端软件中的缓存侧信道脆弱点通过局部极值点展开挖掘[8]。

(3)

步骤2:生成矩阵。利用脆弱传递矩阵进行所有结果相加的计算,获取软件中各元素的度,通过输入数据的度构成矩阵,其公式为

(4)

其中,MDI表示加权节点。

步骤3:识别比特级脆弱点。对软件中各不相同数据的渗透率进行计算,渗透率与高速缓存侧信道脆弱性成正比。

步骤4:识别模块级脆弱点。统计移动终端软件中模块矩阵的平均值,模块平均节点与软件被影响的程度成正比。

步骤5:识别信号级脆弱点。信号脆弱点的识别是以节点为依据,利用节点的局部特点进行节点筛选,进而寻找适合的脆弱点。利用合理的判决门限保持虚景和漏检概念平衡。筛选系数根据平均渗透率进行加权计算,通过筛选系数对移动终端软件高速缓存侧信道脆弱点进行挖掘[9],筛选系数公式为

(5)

其中,Di表示总数据量,Pi表示平均渗透率,k表示权重系数。

2.2 脆弱点可利用性判断

基于差分数据内存访问脆弱点的可利用性判断步骤如下:

步骤1:如果secret(敏感信息)被分析访存类型的访存条件所依赖,则此脆弱点可以被加以利用,若不存在依赖性,则直接进行下一步。

步骤2:将访存地址CaSetdata,i进行符号化处理,得到secret的函数CaSetdata,i=F(sec)后,根据公式进行判断∃sec1,sec2∈V(sec),F(sec1)≠F(sec2),如果等式无解,表示不能利用此脆弱点,则继续下一步操作。

步骤3:主要是为了防止判断公式的索引内存发生越界现象,secret为函数func的参数,则访存操作数组a[secret]为疑似脆弱点。即使判断公式存在解,数组a[0]也不在内存范围之内。基于60字节的数组,若缓存线放置均对齐所有字节,表示在一个缓存线内与各元素相互映射,则不能够利用此疑似脆弱点,所以,此疑似脆弱点可利用性充分条件必须是将判断公式与步骤3相结合。

2.3 脆弱性识别方法实现

移动终端软件高速缓存侧信道脆弱性挖掘方法工作流程如图1所示。

图1 脆弱性挖掘工作流程示意图

1)移动终端软件高速缓存侧信道脆弱点挖掘所获取的程序是angr的执行接口,根据指定位置展开的全部程序路径通过Run函数的调用得到,根据指定位置展开的满足一定条件的路径通过explore函数得到[10]。

2)挖掘移动终端软件高速缓存侧信疑似脆弱点:VEX IR表示供给指令的中间表达式,其中涵盖了指令全部属性,针对每一条执行指令的要求,分析其表达式的属性,其中某些分支和访存指令对执行指令存在着过高的依附性,需要对这些指令进行定位。

其中,实现isExploitable需要依赖于C语言,代码为1450行,流程见图2。针对数据内存访问的疑似脆弱点,对其进行表达式的提取,代入判断公式展开求解,若无解,表示不能够利用此脆弱点;若有解,记录不同的访存地址,当满足CaSetdata,i与CaSetdata,j之间存在差异时,即能够对脆弱点的可用性进行验证[11,12]。

图2 isExploitable流程图

3 实验结果与分析

为了验证所设计移动终端软件高速缓存侧信道脆弱性识别方法的有效性,利用OMNET仿真器进行试验,试验配置参数如表所示。

表1 试验参数设置

脆弱性测试以加解密软件为试验对象,采用常用密码算法其中的十二类进行测试,为了节省测试时间,仅选取其中一类密码库进行解密函数测试,程序编写操作采用密钥生成、加密解密。设“I’m being tested”,实验结果如表2所示。

表2 实际密码算法测试结果统计表

由表2可知,本文方法识别脆弱点总数量为132个,其中已知脆弱点为84个,未知脆弱点为48个,在RSA算法中将差分数据内存访问脆弱点的可利用性判断引入CnuPG1.4.18,CnuPG1.4.22为CnuPG1.4.18更新版本,结果显示,更新后的版本中所有脆弱点已被修复。缓存侧信道常用攻击目标包括AES的加密运算过程中的查表环节,在OpenSSL0.9.8a和OpenSSL1.0.2a中分别发现48和32个脆弱点,和专家研究结果相同,证明本文方法具有良好的有效性。

采用本文方法分别与文献[5]基于机器学习的软件脆弱性分析方法和文献[6]基于Logistic曲线的路网脆弱性动态识别方法,在AES算法作为密码算法运行过程中验证方法的脆弱性识别性能,实验结果如表3所示。

表3 识别对比测试结果统计表

由表3可知,在测试过程中,本文方法共检测出脆弱点92个,文献[5]方法和文献[6]方法分别检测出脆弱点36个和48个,证明本文方法能够能检测到对比方法检测不到的脆弱点,进一步验证了本文方法具备较强的脆弱性识别能力。

对于识别方法检测出的脆弱点不一定就是正确的脆弱点,为了验证识别结果的真实性,继续对脆弱点的识别准确率进行测试,实验结果如图3所示。

图3 脆弱点识别准确率对比结果示意图

由图3分析结果可知,三种方法的识别准确率均随着识别出的脆弱点个数的增加而呈不同程度的下降,其中文献[5]方法和文献[6]方法识别准确性基本保持同水平状态,当脆弱点达到400个时,文献[5]方法的识别准确率为64.8%,比文献[6]方法略高,但是与本文方法相比,识别准确率差距明显。本文方法脆弱点平均识别准确率较高。表明采用本文方法能够有效提高移动终端软件高速缓存侧信道脆弱点的识别准确率,该方法具备良好的实际应用效果和推广价值。

对比测试三种方法的处理信号时的抗干扰能力,试验结果如图4所示。

图4 信号抗干扰处理效果对比示意图

由图4可知,文献[5]方法和文献[6]方法在信号抗干扰处理过程中,呈现大幅度的波动,表示这两种方法处理抗干扰能力较差,反观本文方法,在处理抗干扰的波动平稳,无大幅度波动情况发生,表明本文方法与两种对比方法相比具有更好的信号抗干扰能力,能够有效提升软件信号响应性能和脆弱点识别能力。

利用三种方法展开针对识别效率的相关试验,对比结果如图5所示。

图5 识别效率对比结果示意图

由分析结果图5可知,本文方法与两种对比方法相比,本文方法在识别过程中耗时最少,效率远远大于两种对比识别方法,这是因为本文方法采用的方式是基于网络关键节点进行的脆弱点挖掘,能有在极短时间内通过局部极值实施脆弱点的挖掘和识别,极大程度的节省了移动终端软件识别所需时间,大幅度提升脆弱点的识别效率,进一步提升了缓存侧信道脆弱性的识别能力。

4 结论

目前,移动终端软件普遍存在着高速缓存侧信道脆弱性问题,针对高速缓存侧信道脆弱性识别的准确率进行研究,基于脆弱信号渗透率,以脆弱点挖掘为基础,将数据流脆弱点进行最优值转化,利用筛选极值点获取最优值,从而挖掘出缓存侧信道脆弱点,比较可能存在的不同缓存访问地址,根据脆弱点的可利用性进行移动终端软件高速缓存侧信道脆弱性识别判断。缓存侧信道是软件中不可避免的安全威胁,在后续的研究中,将针对现有的缓存侧信道,加强虚拟化条件下的硬件信息辅助,降低分析内存的数量级,提高脆弱性的识别性能。

猜你喜欢
脆弱性信道准确率
区域生态脆弱性与贫困的耦合关系
乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析
多层螺旋CT技术诊断急性阑尾炎的效果及准确率分析
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
颈椎病患者使用X线平片和CT影像诊断的临床准确率比照观察
上行MIMO-OFDM系统中基于改进GAIC算法的稀疏信道估计
基于PSR模型的上海地区河网脆弱性探讨
一种基于向量回归的无人机通信信道选择方法
关于Wifi机顶盒在高密集区域中信道部署的研究
WLAN和LTE交通规则