在万物互联的时代,物联网设备不断普及增多,在不同应用场景下,设备的性能及配备的硬件、软件等不尽相同,且目前难有统一的安全标准及要求,因此,大量物联网设备很容易容易成为攻击目标,被植入一些难以察觉的恶意软件。
针对这一问题,来自法国某研究机构的安全研究员们提出了一项新颖的研究成果:使用侧信道信息(也就是分析物联网设备的电磁辐射变化)识别、检测设备中极为隐蔽的恶意软件并将其分类。这项研究成果刚刚在2021年12月举办的计算机安全应用年度会议 ( ACSAC )上公布。
在研究过程中,他们对安装了普通软件且感染了不同野外恶意软件样本的物联网设备进行分析,记录了超过10万条测量结果,最终得出了结论。使用这种方法,恶意软件研究员能准确获知恶意软件的类型和身份,不需要对目标设备进行任何修改。这种方法可以独立进行部署,无需额外开销,且难以发现并规避。更重要的是,使用这种方法能够在训练阶段对使用混淆技术更改过的恶意软件样本进行分类,还能识别出应用了哪种混淆技术。对于恶意软件分析人员来说,这招确实很有用。
我们将嵌入式设备的电磁 (EM) 辐射作为分析恶意软件的重要渠道。从设备中测量的电磁辐射实际上无法被恶意软件检测到。因此,能规避掉动态软件监控的恶意软件无法规避这种检测方法。此外,由于恶意软件无法控制设备的硬件(例如电磁辐射、散热等),就算它拥有最高权限,也无法关闭依赖于硬件功能的保护系统。因此,通过检测电磁辐射情况,就能检测可以规避软件分析手段的隐蔽恶意软件(例如内核级 rootkit、勒索软件、DDoS僵尸网络等)。
检测过程分三个阶段:数据获取、数据分析与处理及恶意软件分类。在这个过程中,需要分别在设备执行多个不同恶意软件及执行视频、音乐、图片和相机等普通软件时测量电磁辐射情况。由于收集的数据存在噪声,还需要一个预处理步骤来筛选出最相关的信号数据。这些相关的数据最终被用于训练卷积神经网络(CNN)模型和机器学习算法,对恶意软件类型、二进制文件、混淆方法进行分类。
几位研究员选择了具备 900 MHz 四核 ARM Cortex A7 处理器和 1 GB 内存的Raspberry Pi 2B 作为目标设备,使用示波器和 PA 303 BNC 前置放大器采集并放大电磁信号,有效地预测了三种恶意软件类型及其相关家族。为了在恶意软件长时间运行时捕捉到电磁信号,设备以 2MHz 的采样率进行采样。
仅观察、分析目标设备的电磁辐射就能获取设备的大量信息并利用神经网络模型进行分析。我们不仅能够检测到目标设备(运行 Linux 操作系统的 Raspberry Pi )所感染的恶意软件,还能够确定恶意软件的类型,测试准确率为 99.89%。同时也证明了代码转换/混淆(包括插入垃圾代码、打混淆包和虚拟化混淆等)不会影响这种检测和分类方法。
本着分享的精神,他们已经将相关代码开源在Github,并分享了相关数据集,供大家进一步学习研究。
https://github.com/ahma-hub/analysis/wiki
https://zenodo.org/record/5414107#.YdasbhNBwbk
https://hal.archives-ouvertes.fr/hal-03374399/document
原文始发于微信公众号(GeekPwn):侧信道新思路 | 利用电磁辐射检测IoT设备里隐藏的恶意软件