DL-LA:基于深度学习的泄漏评估模型

VSole2022-07-06 05:36:51

SCA评估的指引方向

背景介绍

机器学习技术常用于基于模板的攻击(Profiled)场景下辅助分析密码设备的泄漏,使得模板攻击更加便利。2019年CHES会议上,Benjamin Timon首次提出将深度学习应用到了不构建模板、直接进行的攻击(Non-Profiled)场景中,称为DDLA模型[1]。

鉴于机器学习尚未应用到“泄漏评估”这个研究方向,并且传统的经典泄漏评估方法如t-test和X2-test存在以下缺陷:①不能对整条波形检验,只能检验每个单独的样本点;②无法检测多点泄漏;③在“噪声水平低、泄漏阶数高”“有多点泄漏”的情况下,会产生假阴性(即实际上存在泄漏,但评估方法没有检测到泄漏)。

基于以上背景,德国鲁尔波鸿大学的Thorben Moos等人在2021年的CHES会议上提出了Non-Profiled场景下的基于深度学习的泄漏评估模型DL-LA,这是第一个通过训练神经网络作为分类器来进行泄漏检测的方法[2]。

已有工作

在统计学领域,为了回答两组数据是否存在显著差异的问题,采用了假设检验t检验和χ2检验。在侧信道分析中,通常用它们来评估两组测量值是否具有置信度。传统上,这两个组是通过向被攻击设备提供固定(group 0)或随机输入(group 1),即fixed-vs-random来获得的。后来François Durvaux等人的研究表明,使用fixed-vs-fixed的输入会降低数据复杂性[3]。因此,DL-LA的实验采用了fixed-vs-fixed形式的明文数据进行,但DL-LA仍也适用于fixed-vs-random形式的输入数据。

实验内容

DL-LA评估流程

1、攻击者向被攻击设备提供两个不同的固定明文(fixed-vs-fixed)随机交错输入,采集输出波形,进行标准化Xij=(Xiji)/σi

2、采集到的波形分割成一个训练集(N条波形)和一个验证集(M条波形);

3、在训练集上训练神经网络(MLP或CNN);

4、用训练好的网络对验证集的波形进行分类;

5、网络输出一个验证正确率 (validation accuracy,v),计算统计正确分类的波形数SM(SM=v·M);

6、计算通过“随机分类”的方法能正确分类得到SM的概率P;

7、如果概率P小于阈值pth(pth=10-5),那么存在泄漏。

泄漏可视化

因为神经网络是黑盒模型,攻击者无法知道波形各点对攻击结果的影响,论文用敏感性分析(Sensitivity Analysis,SA)对泄漏位置进行可视化。计算方法:

其中,xi是网络的第i个输入,y0是网络的第一层输出向量,Xij是训练集中第条波形的第个i输入值。

泄漏可视化结果如图1所示,横轴是采样点数,纵轴是计算得到的si值。注意:SA的绝对值无意义,不能和任何阈值比较。

图1 DL-LA泄漏检测结果

实验结果

本文作者设计了9组实验,实验内容与对应泄漏类型如表1所示。因为本文涉及的实验较多,且实验结果图的内容基本相近,所以下面仅对下表实验编号为CS5的实验结果展开叙述。

表1 实验内容概览

CS5是FPGA上实现的有TI防护的PRENSENT分组密码的错位波形,泄漏类型单点高阶泄漏。图2和图3是CS5的泄漏检测结果。其中图2为统泄漏检测方法的结果,显然一阶t-test检测不到任何泄漏,二阶、三阶t-test能检测到泄漏,其中三阶t-test需要一百五十万条波形来检测泄漏。X2-test需要80万条波形检测泄漏。

图2 CS5中的传统泄漏检测方法的结果 从上至下:

1)样本能量迹;2)10条重叠能量迹;3)一阶t-test结果;

4)二阶t-test结果;5)三阶t-test结果;6)X2-test结果

下图3是使用DL-LA的泄露检测结果,DL-LA在用80万条波形训练下,在大约第14个迭代轮次(epoch)时就能使置信度超过阈值;在使用更大数据集3百万条波形训练后,在约第六个epoch时就能检测到泄漏。

图3 CS5中的DL-LA泄漏检测方法的结果 从左至右:

1)SA泄露位置;2)使用800 000条能量迹做DL-LA的结果;

3)用3 000 000条能量迹做DL-LA的结果

表2是本文实验的结果,具体列出了传统泄漏检测方法和DL-LA检测泄漏各自所需的波形数量。

表2 9组实验中检测出泄漏所需的波形数

总结

基于上述实验结果,本文作者得出如下结论:

1、利用神经网络进行泄漏评估是可行的,而且在复杂的检测场景中很有前景;

2、MLP和CNN都可以检测单变量一阶泄漏、单变量高阶泄漏和多变量高阶泄漏,而不需要对预期的泄漏类型进行任何预处理或先验信息;

3、由于在DL-LA中需要同时分析整个波形,因此通常需要比传统泄漏检测方法更少的波形;

4、使用相同数量的波形所提供的置信度通常比传统泄漏检测方法大几个数量级;

5、DL-LA中的假阳性风险较低(如果选择相同的置信阈值),因为它为每组波形提供一个置信值,而不是为每个采样点提供一个置信值。

本作品采用《CC 协议》,转载必须注明作者和本文链接
SCA评估指引方向
如果加载器分配基址和该程序文件中记录默认ImageBase相同,则不需要修正,重定位表对于该dll也是没有效用。PE结构PE文件大致可以分为两部分,即数据管理结构及数据部分。PE头是固定不变,位于DOS头部中e_ifanew字段指出位置。节表主要是存储了何种借属性、文件位置、内存位置等。
从2023年9月30日开始,SentinelOne观察到一伙威胁分子利用ProgressWS_FTP最近披露漏洞,攻击运行该软件高危版本Windows服务器。两个最严重漏洞是CVE -2023-40044和CVE -2023-42657,CVSS评分分别为10分和9.9分。
linux几个没用但是有趣命令
完成前2步还不够,病毒一般会通过一些自启动项及守护程序进行重复感染,所以我们要执行闭环兜底确保病毒不再被创建。将主机上病毒项清除干净后,最后就是进行系统加固了,防止病毒从Web再次入侵进来。走完这4个环节,才能算是一个应急响应流程结束。
完成前2步还不够,病毒一般会通过一些自启动项及守护程序进行重复感染,所以我们要执行闭环兜底确保病毒不再被创建。将主机上病毒项清除干净后,最后就是进行系统加固了,防止病毒从Web再次入侵进来。走完这4个环节,才能算是一个应急响应流程结束。01 识别现象第1个环节要求我们通过系统运行状态、安全设备告警,发现主机异常现象,以及确认病毒可疑行为。
完成前2步还不够,病毒一般会通过一些自启动项及守护程序进行重复感染,所以我们要执行闭环兜底确保病毒不再被创建。将主机上病毒项清除干净后,最后就是进行系统加固了,防止病毒从Web再次入侵进来。走完这4个环节,才能算是一个应急响应流程结束。
php后门隐藏技巧大全
2022-08-06 08:54:35
辛辛苦苦拿下 shell,几天没看,管理员给删了。 其实隐藏技巧也有很多
1.命令行日常系快捷键如下快捷方式非常有用,能够极大提升你工作效率:●CTRL + U - 剪切光标前内容●CTRL + K - 剪切光标至行末内容●CTRL + Y - 粘贴●CTRL + E - 移动光标到行末●CTRL + A - 移动光标到行首●ALT + F - 跳向下一个空格●ALT + B - 跳回上一个空格●ALT + Backspace - 删除前一个单词●CTRL + W - 剪切光标前一个单词●Shift + Insert - 向终端内粘贴文本那么为了让上述内容更易理解来看下面这行命令。
VSole
网络安全专家