探测电磁波就能揪出恶意软件,网友:搁这给电脑把脉呢?( 二 )
光是掌握这些基本“疾病”还不够,AI还得学会识破恶意软件的进一步“伪装”。
例如,混淆技术 (Obfuscation)就是比较常见的恶意软件伪装方法。
文章插图
这种方法有意让代码模糊不清,从而使逆向工程变得困难,原本是一种用于保护含有IP价值的程序。但后来却被黑客反向用来削弱杀毒软件,以逃脱其追捕。
据此,研究人员利用混淆技术对恶意软件进行了进一步“升级”,再加入数据集中。
其中,就包括采用静态代码重写(不透明谓词、假控制流、指令替换、控制流扁平化)和动态代码重写(打包器、代码虚拟化)等方式,对数据进行处理。
另一方面,除了恶意软件数据以外,AI还得知道正常情况下的信号数据。
所以除了恶意的“病毒数据库”,开发者还准备了一个良性数据集,以模拟真实场景中“随机突发”的病毒入侵事件。
哪些算是良性数据呢?
比如计算、设备睡眠、照片捕捉、网络工作连接,以及像是媒体播放这种长时间的可执行程序运行。
文章插图
由于树莓派部署了一个Linux 4.19.57-v7 ARM v7l的Raspbian Buster操作系统,开发者就从新安装的Linux系统中收集ARM可执行文件,以此生成良性数据集。
在整个过程中,研究人员一共收集了100000份电磁波数据,用于训练AI。
但这些数据在交给AI用于训练之前,还需要经过一些处理,从收集数据到完成训练一共分成三步。
采用时频域分析降低噪声影响首先,部署数据收集装置,收集信号数据。
文章插图
这个数据收集装置分为被攻击设备和示波器两部分,其中树莓派是被攻击设备,高速数字转换器PicoScope 6407(示波器)用于采集和传输数据。
部署好的数据收集装置如下,其中PicoScope 6407的探针(EM probe)会被放在树莓派上,用于收集信号:
文章插图
然后,对数据进行预处理。
文章插图
由于收集到的电磁波信号伴随大量噪音,因此需要将收集到的信号数据进行时域和频域分析,进行特征采集:
文章插图
最后,用这些数据训练AI。
为了选出最适合这项实验的AI,研究人员分别训练了SVM、NB、MLP和CNN四种类型的网络:
文章插图
最后他们发现MLP和CNN是最棒的:
文章插图
其中CNN还要更好一点,具体模型的架构如下:
文章插图
训练结果如下,其中1963份良性数据(benign)中,只有1个被误测为DDoS;Rootkit类型的恶意软件数据全部被正确识别;DDoS和Ransomware的识别效果也不错:
文章插图
当然,除了单独的恶意软件类型以外,采用混淆技术后模型分类的效果也依旧不错。
整套流程的逻辑如下:
文章插图
其中,树莓派代表的是“被攻击设备”,示波器用探针在外部收集电磁信号后,传给AI进行预测,AI再将预测结果反馈给防火墙,决定是否要拦截恶意软件。
推荐阅读
- 优品|赴港上市,就能救名创优品吗?
- 胡钢|“死亡证明”也能“私人订制”?在网上一两百元就能买?
- 骗取|死亡证明、病危通知两百元就能买?“暗黑文书市场”亟待彻底铲除
- 证明|死亡证明、病危通知一两百元就能买?“暗黑文书市场”亟待彻底铲除
- 产品|下单后5小时就能发货,中国的智能链太厉害,老外看后都羡慕了
- 探测|2021百度AI开发者大会在元宇宙举办
- 深圳市分行|碰一碰就能完成支付!支持数字人民币的充电桩来了:华为手机专属
- 北京市中闻律师事务所|一元就能“脱单”?“脱单盲盒”火了!韭菜真的好割吗?
- 监控|用一只自动移动鼠标,就能拿回打工人的「厕所自由」?
- Google|Google 解析 iPhone 最新漏洞! 史上最高明,有电话号码就能进攻