0


硬件木马检测方法概述

1.引言

随着集成电路(Integrated circuit, IC)在众多关键领域的广泛应用,其安全问题受到越来越多的关注。不同于计算机软件等,集成电路的设计制造流水线涉及多个可信度未知的第三方实体,在此过程中很容易被恶意攻击者植入具有特定功能的冗余电路,以达到降低电路性能、监听控制、窃取信息、甚至对集成电路造成无法修复的破坏等目的。这种恶意冗余电路被称为硬件木马(Hardware Trojan, HT),其可以在达到特殊触发条件时被激活并实现攻击目的
集成电路被认为是信息产业的基础,其安全可靠性显得尤为重要。相较于软件木马,硬件木马的隐蔽性更强,设计更加灵活,作用机制更加复杂,所以对其的检测也就更为困难,主要表现在三个方面:一是集成电路的规模越来越大、设计越来越复杂,硬件木马体量微小,可以长期隐藏在大规模复杂电路中而不容易被发现;二是电路制造工艺偏差及随机噪声不利于硬件木马的检测,一些侧信道检测信息会受到影响而难以识别硬件木马;三是硬件木马的稀有触发特性使得检测异常困难,攻击者精心设计的触发条件能够逃避常规的硬件检测。

2.硬件木马概述

2.1 硬件木马的结构特征

硬件木马通常包括两个基本结构,即触发逻辑和有效载荷,如下图所示。触发逻辑的功能是监听预设的触发信号,在接收到指定信号或满足特殊条件时激活植入的有效载荷,触发信号多种多样,如组合逻辑、数字逻辑等数字信号,温度、电压等模拟信号;常见的触发逻辑结构有简单组合逻辑触发、伪随机数生成器、时序性结构及状态机等。有效载荷是用来实现硬件木马功能的主体电路,当触发逻辑满足条件时,有效载荷部分使能,并按照木马设计者设定的方向运转,实现原本电路所不具备的恶意功能,如信息泄露、参数修改、功能改变等。
在这里插入图片描述

2.2硬件木马的分类

不同类型的硬件木马表现出来的特性和影响不同,相应的检测手段也有不同。硬件木马可在芯片设计和制造的任意阶段被植入,且设计灵活,触发方式多种多样,大多数研究人员认同根据电路结构、行为特征对硬件木马进行分类。

2.2.1 基于电路结构的分类

依据触发逻辑和有效载荷的类型进行分类,通过该分类更容易从结构上了解硬件木马的物理实现原理。具体分类方式如图所示。
图2 基于电路结构的硬件木马分类
触发逻辑多为数字信号,主要通过监测一个或多个端口输入或内部节点的逻辑值作为其触发条件;模拟型触发条件通常存在于数模混合电路中,其触发条件为模拟信号,如电压、温度等。数字型载荷通常用来改变原始电路存储的逻辑值。模拟型载荷会影响电路节点的拓扑、相位结构,从而增加路径上的延迟、电路的功耗等。其它类型的载荷通常存在于功能较为复杂的电路中,如服务拒绝、信息泄露等,这种载荷从实现本质上来讲也是数字型载荷的一种,其功能复杂决定其原始电路必然也比较复杂。

2.2.2 基于行为方式的分类

将硬件木马的行为特征按照插入阶段、抽象级别、激活机制、木马效果、部署位置等进行分类,可以将不同木马明显区分开。具体分类方式如图所示。
在这里插入图片描述

插入阶段指的是硬件木马植入的阶段,在集成电路定义规范、设计、生产制造、测试、封装等各个阶段均可植入;抽象级别指的是硬件木马可以在电路不同的抽象级别进行攻击,包括系统、平台、寄存器、门、晶体管及物理级等;激活机制指的是硬件木马触发条件,包括常开型和触发型,一般触发型木马居多,可进一步细化内部或外部触发;木马效果指的是有效载荷的恶意功能,分为降低性能、篡改数据、泄露信息、拒绝服务等;部署位置指的是硬件木马植入电路的某个部分,包括处理器、存储器、I/O、电源、时钟网络等模块。

3.硬件木马检测方法

硬件木马具有很大的潜在威胁,及时准确的检测其恶意行为对用户来说十分重要,随着技术的革新,检测方法也在不断发展。传统的硬件木马检测技术包括侧信道分析法、逻辑测试检测法和逆向工程检测法,大数据和人工智能技术的发展使得基于机器学习的硬件木马检测技术也逐渐成熟。

3.1基于侧信道的检测方法

侧信道信息也被称作旁路信号,是电路运转时产生的外部物理特性,在同一环境下电路产生的侧信道信息相同。常见的侧信道信息包括功耗、时耗、温度、辐射等。如果有木马模块植入,其带来的额外物理信息会对原始电路的侧信道信息造成影响,我们可以通过这一现象来检测硬件木马。基于侧信道的检测方法流程包括输入激励、对比分析、判断阈值、得出结论。在同一环境下,对参考电路和待测电路输入相同激励,选择合适的侧信道信息进行分析,根据参考电路的测信道信息设置阈值并对待测电路侧信道信息进行判断,最终确定待测电路中是否含有硬件木马。上述方法所依赖的参考电路在现实中其实是很难获取的,由于芯片制造过程的工艺偏差及环境影响,硬件木马的侧信道信息容易被隐藏掩盖,往往需要利用一些方法“放大”硬件木马的侧信道信息,才能检测出其存在。

3.2基于逻辑测试的检测方法

基于逻辑测试的方法包括自动测试向量生成技术(Automatic Test Pattern Generation,ATPG)和可测性设计技术(Design For Test,DFT)。ATPG是通对比测试向量的输出结果与预期结果是否相同来判断原始电路是否被恶意篡改,在中小规模集成电路中该方法的木马检测率较高。但是在大规模集成电路中存在局限性,由于测试向量的测试覆盖率降低,难以激活隐藏着的硬件木马;由于只能对电路的输出逻辑进行检测,无法检测出影响旁路信息的硬件木马。因此, ATPG技术的研究方向主要是生成更加有效的测试向量来增加硬件木马的触发概率,以便在输出端口观测到木马引起的逻辑变化。DFT指的是芯片设计人员在设计阶段即在原始电路中增加一定的额外电路逻辑,以便提升电路内部相关节点的可控制性与可观察性,提高芯片的可测试性。可控制性是指由电路的初级输入信号控制内部引线的逻辑值的能力。可观察性是指由电路的初级输出端口或者其他特殊的测试端口观察电路内部逻辑值的能力。

3.3逆向工程检测方法

逆向工程法指的是通过对样本芯片进行解剖获得具体的版图信息,从而分析出电路的逻辑结构,将得到电路设计结构与原始设计文件对比,直观判断是否有木马植入。该方法是最直接、最典型的检测方法,且已经形成了较为完善的体系,不仅能够找出植入硬件木马的芯片,还可以检测出硬件木马的具体位置、构造以及木马对芯片造成的影响等。但这种方法也有明显缺点:一是成本高且耗时长,必须完整逆向芯片全部功能才能分析出硬件木马;二是具有破坏性,仅对抽样芯片的检测不能完全说明问题,对于整组芯片还需要进行额外测试。

3.4基于机器学习的检测方法

硬件木马的检测方法在实际的应用中,需要统筹检测正确率、测试时间、费用花费等各方面因素,在最大程度上平衡几者的关系才能更有利于实际的应用。机器学习技术在数据处理、推理分析、自主学习方面的优势,可以很好的辅助上述几种传统的检测方法,也为硬件木马检测提供新的思路,其实质是对正常和异常行为的数据进行采集分析,训练模型使其能够识别出异常行为。基于机器学习的硬件木马检测方面主要区分有监督情形和无监督情形,在有监督的情形下,研究者提出利用支持向量机在基于逆向工程的硬件木马检测中识别出不含硬件木马的干净电路,该方法首先逆向获取待测电路的布局图像,而后利用算法区分图像中的干净结构和可疑结构,为后续的分析提供参考;利用支持向量机还可以通过采集正常运行电路行为和硬件木马触发时的电路行为来训练算法,有效识别运行时的木马行为。然而,在实际的检测环境中难以获取到大量含准确标签的训练数据,故研究者们提出无监督机器学习方法,用于摆脱对参考芯片、模型的依赖。目前对于无监督的机器学习方法还在研究的起步阶段,研究者们尝试采用聚类方法实现对异常信号的识别检测。

4.结束语

集成电路作为信息系统的核心具有非常重要的地位,硬件木马带来的巨大风险挑战不容忽视。本文主要介绍了硬件木马的结构特征及分类,叙述了几种典型的硬件木马检测方法,详细梳理了几种方法的适用场景、流程步骤、缺点不足及发展方向。本文认为未来的硬件木马检测方法应该朝着人工智能、机器学习的方向发展,利用新技术弥补传统方法的不足,特别是摆脱对参考芯片依赖的无监督机器学习方法,将更有利于及时检测发现硬件木马。

标签: 安全

本文转载自: https://blog.csdn.net/ggjjxx_1/article/details/127591688
版权归原作者 LowTyping 所有, 如有侵权,请联系我们删除。

“硬件木马检测方法概述”的评论:

还没有评论