基于混合特征分析的硬件木马检测方法
- 格式:pdf
- 大小:4.50 MB
- 文档页数:6
第49卷第5期 202丨年5月华中科技大学学报(自然科学版)J. Huazhong Univ. of Sci. & Tech. (Natural Science Edition)Vol.49 No.5 May 2021
DOI: 10.13245/j.hust.210501
基于混合特征分析的硬件木马检测方法
赵毅强1李博文1马浩诚1何家骥2
(1.天津大学微电子学院,天津300072; 2.清华大学微电子学研究所,北京100084)
摘要提出一种基于混合特征分析的硬件木马检测方法,该方法首先在时序层级抽象并构建待测电路的控制数据
流图,然后利用功能性分析方法建立以低动态翻转率为特征的动态可疑节点集,最终使用静态结构特征匹配方法
实现硬件木马的检出.以Trust-Hub中涵盖Basic-RSA,AES和RS232基准电路在内的13种硬件木马为检测对象
开展检测实验.实验结果表明:检测结果中硬件木马节点检出率达到100%,假阳性率控制在1.5%以内,检测准确
率达到82.5%以上,证明了该检测方法的有效性.
关键词硬件木马;控制数据流图;低动态翻转率;静态结构特征;假阳性率;准确率 中图分类号TN47 文献标志码A 文章编号1671-4512(2021)05-0001-06
Hardware Trojan detection method based on combined features analysis
ZHAO Yiqiang1 LI Bowen] MA Haochengx HE Jiaji2
(1. School of Microelectronics, Tianjin University, Tianjin 300072, China;
2. Institute of Microelectronics* Tsinghua University, Beijing 100084, China)
Abstract A hardware Trojan detection method based on combined features analysis was proposed. The control data flow graph of
the circuit under test was built first utilizing the gate-level netlist, and then nodes with low dynamic transition probability were
screened to establish a suspicious set using functional analysis. The hardware Trojans could be finally detected by the corresponding static structural features. Experiments were carried out on Basic-RSA, AES and RS232 reference circuits in Trust-Hub covering 13
kinds of hardware Trojans. Experimental results show that the detection rate is 100% with a false positive rate under 1.5% and accuracy over 82.5%, demonstrating the effectiveness of the proposed method.
Key words hardware Trojan; control data flow graph; low positive rate; accuracy
在集成电路设计过程中,芯片设计者会使用来
自第三方的知识产权(ip)核以加快集成电路设计流
程1",但是第三方ip中可能存在硬件木马,而硬件
木马电路一旦被激活,将执行预先设定的恶意功
能,因此须要开展针对第三方ip中硬件木马的检
测研宄.现有的检测技术大多针对硬件木马的触发
结构开展检测,具体技术手段包括代码覆盖率分
析、静态结构性分析、逻辑测试形式化验证、
功能性分析和运行时的验证等.在静态结构性分析
与功能性分析技术[41的研宄中:文献[5]通过定量化dynamic transition probability; static structural feature; false
分析电路内部不同区域中输入信号对输出结果的控 制能力来进行硬件木马检测;文献[6]提出了一种 基于机器学习的硬件木马触发结构特征分类技术;
文献[7]将可测试设计中组合逻辑的可控性和可观
测性引入到硬件木马检测中:文献[8]提出了一种
结合结构特征匹配和切换率特征分析的硬件木马检
测方法.
以上基于静态结构分析与功能性分析的方法仍 存在一些不足.由于电路内部可能存在与硬件木马
节点结构相似的正常节点,因此仅通过静态结构分
收稿日期 2020-08-26.作者简介赵毅强(1964-),男,教授,E-mail: ***************.com.基金项目国家自然科学基金资助项目
(61832018).华中科技大学学报(自然科学版)第49卷
析技术进行分析可能会导致检测结果出现节点误识
别;同时若缺少针对电路拓扑结构的分析,仅依靠 动态功能性分析,则可能会造成对现有电路中硬件
木马可疑节点的漏检.为此,本研究提出一种结合
静态结构分析与动态功能性分析的硬件木马检测方 法,通过在时序层级抽象并构建待测电路的控制数
据流图,借助功能性分析建立硬件木马动态可疑节
点集合,并利用静态结构特征匹配以实现硬件木马 的检出.
1隐式触发型木马与时序抽象算法
1.1隐式触发型硬件木马硬件木马是一种在1C设计、制造全流程中的
某一个或多个环节引入的具有特定恶意功能的电路
结构.其基本结构包括触发结构和有效载荷.触发
结构负责接收内部或外部输入信号,进而激活硬件 木马;有效载荷结构则在接收到激活信号后实施恶
意功能.现有的较为广泛使用的功能验证技术,通 过向电路施加测试激励,实现对电路功能、时序信
息等潜在设计问题的验证.一般而言,攻击者会谨 慎设计硬件木马触发结构,降低硬件木马的触发概
率,构建隐式触发型硬件木马[9],因此功能性验证 己难以保证硬件木马的检出.
本研宄的检测对象主要包含正常工作中触发概 率低于lxl(T的隐式触发型硬件木马,该类型硬件
木马在lxlOh量级181时钟周期内依然难以被触发.
本研宄通过分析硬件木马的触发机制,进行网表结
构的抽象化建模,分离出电路时序逻辑的连接关
系,并作为后续硬件木马检测的结构依据.1.2时序层级抽象化建模流程
考虑到硬件木马的基本结构,硬件木马能否工 作依赖于激活信号产生与否,通过分析待测电路内
部的信号流向,可实现对潜在硬件木马触发结构的
检测.本研宄通过分析门级电路中数据流向可知: 时序逻辑元件之间的连接关系可以反映信号的流 向,而与时序逻辑相关联的组合逻辑块则控制时序
逻辑元件间信号的流通.因此静态结构分析须重点 考虑组合逻辑或时序逻辑的信号流向特征.但是若
直接根据组合逻辑结构特征分析硬件木马的触发结
构,则可能会因结构特征构建过于具体造成较高的 误识率,同时会引入非必需计算量'降低检测方
法的有效性.
由此,本研究将触发器等时序逻辑元件作为元 节点,由元节点的直接连线代替原有组合逻辑块的连接关系,构建网表抽象化时序控制数据流图.通
过分析数据控制流图中时序节点之间的连接关系, 即可确定电路中信号流向,实现硬件木马触发结构
的筛选.抽象化建模算法流程如下.
步骤1提取电路所有门级元件的元件名与输 入输出端口;
步骤2选取时序元件构成时序元件集合S,
并以时序逻辑元件集合中任意节点为起点开始 遍历;步驟3选取集合5■中暂未遍历过的时序元
步骤4初始化临时队列7;,将时序逻辑元件 d加入7;,开始临时队列遍历操作;
步骤5逆数据流向遍历对应元件的输入端口
所连的未遍历上级元件步骤6若元件5属于集合又则顺序执行步
骤7,否则跳转至执行步骤8;
步骤7将元件5标记为d的上级节点,同时 标记d为S的下级节点,并将结果保存入字典q
中,跳转执行步骤9;
步骤8将元件S加入7;,返回步骤5;步骤9若7;中所有兀件己经遍历完成且不再
有新元件加入,则执行步骤10,否则返回步骤5:
步骤10清空7;;
步骤11若集合S中仍有未遍历的节点,则返 回步骤3,否则结束循环,算法结束,返回保存抽
象化模型连接关系的字典Ds.
在执行以上算法后,可得到储存信号流动关系 的模型字典Ds,调用该字典即可获取电路时序节点
连接关系,该模型为结构特征匹配提供模型基础.
为了更好描述信号流向特性,本研宄的检测结果将
时序节点作为基本节点.
2硬件木马混合特征检测框架
2.1动态节点信号特征筛选
抽象化模型提供了从时序级分析电路信号流向 的方法,然而考虑到组合逻辑块内部也存在一定的 逻辑结构,本研究在静态结构特征匹配的基础上引
入动态功能性分析,通过向电路内部注入测试激 励,可将组合逻辑块内部结构信息转化为线路翻转
信息,以功能性分析的方法实现对待测电路的翻转 率特征分析.
功能性分析的对象为原始待测电路网表,使用 动态翻转率P,
作为描述电路内部线路信号特征的度第5期赵毅强,等:基于混合特征分析的硬件木马检测方法
量,其计算公式为
尸,=rc/rs,式中7;与7;分别为在动态仿真周期内翻转次数与总
时钟周期数.在功能性分析阶段,通过向电路的数
据输入端注入一定数量的随机测试向量作为激励, 记录电路内部所有线路的7:,依据上述公式计算电
路内部线路翻转率.获取翻转率计算结果后,本研
究通过设定翻转率阈值,筛选翻转率低于阈值的时
序节点.经过功能性分析,翻转率特征筛选剔除了大部
分电路内部正常节点及少量触发节点,通过分析正 常工作时电路信号特征,为本研究缩小木马节点的 检测范围,进而提高了检测精度,然而功能性分析
仍然存在一定误识别率.因此本研宄利用结构特征 匹配对动态可疑节点进行木马检测.2.2硬件木马静态特征建立与筛选
根据硬件木马基本构成,可将现有逻辑型硬件 木马分为组合逻辑型、时序逻辑型和混合型三种类
型,不同类型的逻辑型硬件木马采用了不同的触发 结构.组合逻辑型硬件木马的触发结构主要由多路 选择器等组合逻辑元件组成,当输入逻辑值达到预 设值即产生激活信号;时序逻辑型硬件木马的触发
结构是由二进制计数器等时序模块组成,计数到特 定值即产生激活信号;混合型硬件木马则以状态机
等模块为代表,该木马通过接收特定逻辑值由当前 状态跳转到下个状态,触发结构的状态遍历完成后
即产生激活信号.根据上述分类标准,本研宄对不
同类型硬件木马的结构特征进行讨论.a. 组合逻辑型硬件木马.组合型硬件木马的
触发结构接收特定的逻辑值输入作为触发条件.在
硬件木马接收到正确逻辑值后便产生相应的激活信 号,激活硬件木马有效载荷•此种类型的硬件木马
触发仅取决于当前输入数据,因此其隐蔽性的增强
依赖于硬件木马输入信号位宽的增加.基于以上观 察,将组合逻辑型硬件木马的特征归纳为:在抽象
化模型中,节点入度大于等于预设检测阈值,并记 为特征1.若阈值设定为3,则将入度大于等于3的
节点记为木马节点.b. 时序逻辑型硬件木马.时序型硬件木马的
触发结构在接收到一定顺序的时钟信号后触发•在 时钟计数达到预设值后,硬件木马的触发结构会产
生激活信号并激活硬件木马的有效载荷.时序型硬 件木马触发取决于时钟周期计数值,隐蔽性由木马 内部计数器的深度决定.时序逻辑型硬件木马的特征描述为:在抽象化模型中,计数器环路长度大于等于规定阈值,且环
路内所有节点的扇入非环路节点都相同,记为 特征2.
在介绍计数器环路的定义前,须要先引入自循
环节点与内向节点对的概念.定义1自循环节点:在时序抽象化模型中,
某节点的扇入节点集包含该节点自身.定义2内向节点对:对于两个自循环节点C
与D,若节点C的扇入自循环节点集包含于节点 的扇入自循环节点集,则称C为£»的内向节点,C
与£»构成内向节点对.由此即可引入计数器环路的概念.定义3计数器环路:对自循环节点集合…
若供中任意两节点均构成内向节点对,则称P内部
所有节点构成一个计数器环路,计数器环路长度为 集合的大小•如图1所示,节点C,,C2,匸3和04
构成一个长度为4的计数器环路.
图1结构特征2示意图c.混合型硬件木马.通过结合时序型和组合
型触发结构,攻击者可以构建混合型硬件木马,其
隐蔽性增强与输入位宽和计数器环路长度均有关.
其中,触发结构为状态机的硬件木马即为一种典型
的混合型硬件木马.因此,可以引入节点外部输入
位宽的概念.定义4外部输入位宽:对于计数器环路内部
某节点,该节点的扇入节点集合中非环路内部的节
点数量.根据特征1和特征2的描述,将混合型硬件木
马特征归纳为:对于计数器环路节点集,集合内节
点外部输入位宽与计数器环路长度之积大于等于阈 值,记为特征3.图2所示的结构环路外部输入位
宽#与环路长度M之积为9.