电子说
硬件木马,硬件木马会攻击硬件本身,引起自身的安全问题
这里主要讲述了 SoC 的设计制造流程中的硬件木马(Hardware Trojan) 插入威胁、HT 特性、FPGA 中的 HT、HT 的分类、信任基准、硬件木马的防御。
由于硬件木马的硬件级别的植入,软件级别的对应措施,可能不足以应对由硬件造成的威胁。
随着尖端工艺的代工成本和现代片上系统(system-on-a-chip,SoC)平台设计复杂性的不断提高,曾经局限于一个国家甚至一家公司的IC供应链已经遍布全球。
在这种形式下,硬件电路设计中的第三方资源(主要指用于外包芯片制造和SoC开发的第三方知识产权,即intellectual property,简称IP核,包括软核和硬核)在现代电路设计和制造中得到了广泛的应用。
这类资源的利用虽然在很大程度上减少了设计工作量、降低了制造成本、 缩短了产品上市时间(time to marketing,TTM) ,但是对第三方资源及服务的高度依赖也引发了安全问题,打破了“攻击者无法轻松访问封闭的IC供应链”的幻想。
例如, 恶意代工厂可能会将硬件木马程序插入所制造的芯片中 ,交付的IP核可能包含恶意逻辑和设计缺陷,这些缺陷在IP核集成到SoC平台后会被攻击者利用。
硬件安全的概念在硬件木马出现后被正式引入。学术界和工业界开始采取措施缓解或防止相关威胁。硬件安全最初指的是硬件木马的设计、分类、检测和隔离。
硬件木马威胁与不受信任的代工厂密切相关。 因此,研究者开发的硬件 木马检测方法往往侧重于IC制造过程的流片后阶段 ,强调增强现有检测方法的安全性。
鉴于第三方IP核 可能是恶意逻辑插入的另一个攻击向量 ,对综合前设计的保护也变得同样重要。据此,研究者还开发了流片前电路保护方法。
除了硬件木马检测,硬件安全的概念还从测试解决方案延伸到形式化验证方法。 形式化验证方法不仅在保证软件程序安全时得到广泛应用,还被证明在硬件代码的安全验证中颇为有效 ,因为硬件代码通常是使用硬件描述语言(hardware description language,HDL)编写的。
形式化验证方法的发展不仅有助于为硬件设计提供高水平的安全保证,即便在 攻击者可能有权访问原始设计的情况下也是如此 ,也有助于克服黄金模型在许多硬件木马检测方法中的局限性。然而,在实现形式化验证方法时,安全属性的构建却成为硬件安全研究者尝试解决的一个开放性问题。
硬件木马(Hardware Trojan)指对电路 设计的恶意的、故意的修改 ,在部 署电路时会导致恶意行为(例如通过I/O输出密钥、通过侧信道功率输出重要信息、增加系统延迟、减半加密轮数) 。
硬件安全研究的演进已经从硬件木马的检测转移至可信硬件的开发, 即构建信任根 。虽然硬件设备的一些固有特性对电路性能有负面影响,但是可以将这些特性用于安全保护。
一个典型的例子是 物理不可克隆函数(physical unclonable function,PUF)的开发,借助电路制作过程中的工艺偏差,以“激励—响应”对的格式生成特定芯片的指纹 。除金属—氧化物半导体场效应晶体管(MOSFET)外,研究者正在研究新型的晶体管,如自旋转移矩(spin transfer torque, STT)器件、忆阻器和自旋畴壁器件等,利用器件性能的特殊性来实现新型的硬件安全应用。
现有的硬件木马设计可分为基于触发机制和基于有害功能机制两类。
硬件木马的识别主要依赖于识别触发机制和有害功能机制。
因此,硬件安全的研究者重点关注这两种机制,以这两种机制为突破口,探索和评估新的硬件木马。
FPGA用途广泛,从电信系统到导弹制导都有应用。但 FPGA的木马可以通过IP核的形式载入通用FPGA结构中,并且有大量可被控制的可重构逻辑单元, 攻击者从而利用FPGA通用系统进行攻击。
存在IP依赖木马和非IP依赖木马。
IP依赖木马是一种攻击手段,其中攻击者将恶意代码嵌入到FPGA的IP(知识产权)模块中。 这些IP模块是FPGA设计中使用的现成模块,它们被集成到设计中,并在运行时执行特定的任务。攻击者可以利用这些IP模块中的漏洞,将恶意代码注入到FPGA中,从而控制整个系统。
非IP依赖木马则是一种更高级的攻击手段,它不需要依赖FPGA中的IP模块。 这种类型的木马利用了FPGA的物理层特性,例如电压波动、时钟偏差等,来制造错误,从而篡改系统行为。这种类型的木马很难检测和防御,因为它不依赖于特定的IP模块或设计,而是利用了FPGA的通用特性。
分类的主要依据是硬件木马的物理、激活、功能特性。
硬件木马是指故意对电路设计进行恶意修改,导致电路在运行时产生意外行为。
受硬件木马影响的IC可能会发生功能或规范被更改、泄露敏感信息、性能下降及系统不可靠等情况 。目前有些文献已对硬件木马提出了详细的分类,涵盖广泛的具有潜在风险的硬件木马。
比如: 根据插入阶段、抽象级别、激活机制、效果和位置这五个不同的属性将硬件木马进行分类 。
因此,硬件木马问题比制造缺陷的表现更为复杂。
信任基准是一种用于检测和评估电子系统安全性的方法。它涉及到在系统中故意引入一些错误或“木马”,以观察它们对系统性能和稳定性的影响。
这种方法可以帮助评估不同检测技术的有效性,并确定最有效的防御策略。
例如,MC8051-T1010表示在MC8051设计的第1号位置插入了木马10号,版本为0。
这个样例表明,在EthernetMAC10GE的设计中,已经插入了一个由组合器触发的木马程序,该程序会查找特定的16位向量。这种类型的木马可能会对系统性能产生重大影响,尤其是如果它能够成功地干扰系统的关键部分。
在硬件设计中, 信任基准测试是一种重要的安全评估方法 。它通过对系统进行故意攻击来测试其防御能力,从而提供了一种度量防御策略有效性的方法。
同时,通过比较不同木马的影响和各种木马检测技术的效果,设计师可以了解到哪种方法最有效,从而改进他们的设计。
为了防止信任基准测试带来的潜在风险,设计师通常会在测试后对系统进行详尽的检查和验证,以确保没有留下任何可能影响系统性能或稳定性的隐患。同时,也会努力改进设计,以增强系统对未来攻击的防御能力。
对于设计良好的硬件木马,传统的功能测试方法很难检测[7]。通常,硬件木马包含两个基本部分:木马触发器(实施木马激活)和有害电路(实施有害功能)。
一旦木马触发器检测到预先确定的事件或条件,就会激活有害电路执行恶意行为。通常情况下,木马触发器会在极为罕见的情况下被激活,因此有害电路大部分时间均保持非活动状态。
当有害电路处于非活动状态时,IC就像一个无木马的电路,很难将木马检测出来。
根据木马触发机制的不同,硬件木马可分为:组合木马和时序木马。一些木马触发机制采用组合和顺序混合机制设计。图展示了组合硬件木马的抽象模型。恶意电路行为由同时发生的一组触发条件激活。组合硬件木马不使用触发器或锁存器来存储状态信息。
下图展示了时序硬件木马的抽象模型。木马被一系列状态转换激活。
下图给出了硬件木马的触发机制和有害功能机制。
现有的硬件木马设计可分为基于触发机制和基于有害功能机制两类。
硬件木马的识别主要依赖于识别触发机制和有害功能机制。
因此,硬件安全的研究者重点关注这两种机制,以这两种机制为突破口,探索和评估新的硬件木马。
木马检测时最简单、常用的方法,分为硅前、硅后两阶段。
主要是从两个角度详细展开:
与软件病毒、软件木马不同,硬件木马无法通过固件更新轻易消除。 因此,硬件木马对计算机系统的危害更大。硬件木马由攻击者设计。攻击者往往采取在IC设计中添加不需要的功能的方法植入硬件木马。
硬件木马的设计没有标准流程,所采取的方法 取决于攻击者的目标及可用资源 。尽管如此,硬件安全研究者还是对不同的硬件木马进行了分类。
基于硬件木马的隐蔽性及其可能造成的影响,研究者还提出了多种硬件木马设计方案。 虽然硬件木马大多是在寄存器传输级(register transfer level,RTL)层面插入的,但有些是通过半导体掺杂操作插入的 。
这种在一开始就种下了不安全的种子
由于传统的电路测试方法在检测恶意逻辑方面存在不足,因此近年来研究者专门开发了硬件木马检测方法和可信集成电路设计。研究者已经提出了大量的硬件木马检测和防范方法。这些方法主要可以分为四大类:
由于增强功能测试方法是基于“硬件木马通常由小概率事件触发”这一思想的,因此,研究者提出以下两种建议:
增强功能测试方法的局限性在于不存在对于小概率事件的标准定义 ,使得在标准测试模式和小概率事件模式之间留有巨大的缺口。同时也会给测试带来工作量的提升。
侧信道指纹识别是另一种流行的硬件木马检测方法。尽管在测试阶段硬件木马不易被触发,可能会逃避功能测试,但插入的硬件木马必然会改变被攻击电路的参数[21,39,49]。
该方法的有效性取决于区分硬件木马入侵电路和无硬件木马电路的侧信道信号的能力。
因此,利用先进的数据分析方法,通过消除不断增加的工艺误差和测量噪声,可以帮助生成侧信道指纹[14,48]。在指纹生成和硬件木马检测中,有些研究成果选择使用多种侧信道参数及其组合,包括全局功耗跟踪[48]、局部功耗跟踪[3,4]、路径延迟[7,50]等。
基于侧信道指纹识别的硬件木马检测方法因具有非侵入性而得到了广泛的应用 ,由于是依据黄金模型可供比较的假设发展而来的,在很多情况下,黄金模型不容易获取,所以不容易实现。
硬件木马防范和电路强化技术方法试图利用 附加逻辑修改电路结构,以消除小概率或可疑事件 ,或者使目标电路对恶意修改更加敏感。这类方法往往与其他硬件木马检测方法结合使用,可提高检测精度或降低检测成本。
即使在目标设计中使用了电路协同设计技术来降低附加逻辑的影响,附加保护逻辑仍然会影响电路的性能。此外,强化结构本身也可能成为硬件木马攻击的目标。
这不就是成了一个无限套娃的场景,比如说安全的架构TEE,让更多地安全目的与服务进入到了安全侧,安全侧的代码量于是极大的增加了,这样安全侧代码被攻击的面也就越来越广了。
尽管现有的检测方法已能成功检测到某些硬件木马,但检测范围仍十分有限, 其原因在于依赖于过度简化甚至有时是错误的假设 。这些假设往往包括以下方面:
这些假设很长时间内都被硬件安全研究者所接受,成为开发先进硬件木马检测和预防方法以及相关研究工作的主要指导原则。很可惜,这些假设并不完整,甚至带有误导性。笔者现在已经明显意识到, 硬件安全和硬件木马检测的问题比之前设想的更加复杂、更加普遍 ,特别是:
上述情况推翻了许多先前提出的硬件木马检测和预防方法,导致无论在数字领域还是在模拟和射频领域,集成系统都容易受到硬件木马的攻击。
因此,研究者开始研究芯片流片后的检测方法,主要利用流片后侧信道指纹识别和片上等效性检查等技术。
这里的关键思想是在测试阶段,隐藏的硬件木马可能很容易避开检测,如果被触发,将会对侧信道指纹识别或电路功能造成重大影响。
一般来说,硬件木马防护对策分为三大类。每个大类还可进一步分为几个子类。硬件木马防护对策的分类如图:
这一部分是最常用于芯片的设计中的,比如在最近的项目中,就做了很多防止侧信道攻击的设计,这里留着后面值得展开学习一下。
本章主要讲述电子供应链上的安全隐患及应对措施。简要罗列一下会在哪些点出现安全问题。
随着集成电路的制造工艺发展至深亚微米级和纳米级,集成电路设计和制造的复杂性急剧增加。
专用集成电路(application-specific integrated circuit, ASIC)或片上系统(SoC)组件通常需经过复杂的工艺过程。
该过程首先将规范转换为行为描述,通常使用硬件设计语言(hardware design language,HDL),如Verilog或VHDL。
接下来,执行合成,根据网表(逻辑门)将行为描述转换成设计实现。在完成设计实现后,数字GDSII文件被交给代工厂进行IC制造。
一旦代工厂生产出实际的IC,将通过测试过程确保其正确。
那些通过测试的IC通过组装、重新测试后发送至市场,最终被部署到电子系统中。
先进的半导体制造技术在IC开发过程的每一个阶段都需要投入大量的资金。
例如,2015年拥有一家代工厂的成本约为50亿美元[2]。因此,大多数半导体公司无力维持从设计到包装的全部IC供应链。
为了降低研发成本、缩短开发周期,半导体公司通常将部分工作外包给第三方代工厂,购买第三方IP核,使用第三方供应商的EDA(electronic design automation,电子设计自动化)工具。
显然,第三方可能不可信或具有潜在恶意,第三方的加入增加了系统的安全风险。
有研究表明,IC供应链容易受各种攻击,如硬件木马、逆向工程、IP盗版、IC篡改、IC克隆、IC生产过剩等。其中,硬件木马可以说是最大的威胁,引起了广泛关注。
全部0条评论
快来发表一下你的评论吧 !