芯片物理攻击平台 ChipWhisperer 初探

芯片物理攻击平台 ChipWhisperer 初探,第1张

传统基于穷举或纯数学理论层面的分析,对于现代高强度加密算法而言,算力有限导致无法实现穷举,算法的复杂性也无法通过数学工具直接破解,根据近代物理学发展出来的理论,电子设备依赖外部电源提供动力,设备在运行过程中会消耗能量,同时会跟外界环境存在声、光、电、磁等物理交互现象产生,设备本身也可能存在设计薄弱点,通过这些物理泄露或人为进行物理层的修改获取数据,然后运用各类数学工具和模型实现破解。

然而在做物理攻击时,往往需要昂贵的设备,并要具备数学、物理学、微电子学、半导体学、密码学、化学等等多学科的交叉理论知识,因此其技术门槛和攻击成本都很高,目前在刚刚结束的 Blackhat 2018 上,展台上展示了多款 ChipWhisperer 硬件工具,作为亲民型的物理攻击平台,获得了一致的好评。

(来源 Newae 官方)

ChipWhisperer Lite 版官方商店售价 $250 ,不管是实验学习,还是实战入门,都是极具性价比的,本文主要介绍主流的一些物理攻击手段,以及对 ChipWhisperer 的初步认知,后续将会据此从理论、原理、实验以及实战等角度详细介绍该平台。

真正的安全研究不能凌驾于真实的攻防场景,对于物联网安全而言,其核心目标是真实物理世界中的各种硬件设备,真实的攻击场景往往发生在直接针对硬件设备的攻击,因此物联网安全的基石在于物理层的安全,而针对物联网物理攻击手段,是当前物联网面临的最大安全风险之一。

物理攻击就是直接攻击设备本身和运行过程中的物理泄露,根据攻击过程和手段可以分为非侵入攻击、半侵入式攻击和侵入式攻击。ChipWhisperer 平台主要用做非侵入式攻击,包括侧信道和故障注入攻击等。

传统密码分析学认为一个密码算法在数学上安全就绝对安全,这一思想被Kelsey等学者在1998年提出的侧信道攻击(Side-channel Attacks,SCA)理论所打破。侧信道攻击与传统密码分析不同,侧信道攻击利用功耗、电磁辐射等方式所泄露的能量信息与内部运算 *** 作数之间的相关性,通过对所泄露的信息与已知输入或输出数据之间的关系作理论分析,选择合适的攻击方案,获得与安全算法有关的关键信息。目前侧信道理论发展越发迅速,从最初的简单功耗分析(SPA),到多阶功耗分析(CPA),碰撞攻击、模板攻击、电磁功耗分析以及基于人工智能和机器学习的侧信道分析方式,侧信道攻击方式也推陈出新,从传统的直接能量采集发展到非接触式采集、远距离采集、行为侧信道等等。

利用麦克风进行声波侧信道

利用软件无线电实施非接触电磁侧信道

故障攻击就是在设备执行加密过程中,引入一些外部因素使得加密的一些运算 *** 作出现错误,从而泄露出跟密钥相关的信息的一种攻击。一些基本的假设:设定的攻击目标是中间状态值; 故障注入引起的中间状态值的变化;攻击者可以使用一些特定算法(故障分析)来从错误/正确密文对中获得密钥。
使用故障的不同场景: 利用故障来绕过一些安全机制(口令检测,文件访问权限,安全启动链);产生错误的密文或者签名(故障分析);组合攻击(故障+旁路)。

非侵入式电磁注入

半侵入式光子故障注入

侵入式故障注入

本系列使用的版本是 CW1173 ChipWhisperer-Lite ,搭载 SAKURA-G 实验板,配合一块 CW303 XMEGA 作为目标测试板。

CW1173 是基于FPGA实现的硬件,软件端基于 python,具有丰富的扩展接口和官方提供的各类 API 供开发调用,硬件通过自带的 OpenADC 模块可以实现波形的捕获,不需要额外的示波器。

板上自带有波形采集端口(MeaSure)和毛刺输出(Glitch)端口,并自带 MOSFET 管进行功率放大。

并提供多种接口触发设置,基本满足一般的攻击需求。

芯片物理结构为许多CMOS电路组合而成,CMOS 电路根据输入的不同电信号动态改变输出状态,实现0或1的表示,完成相应的运算,而不同的运算指令就是通过 CMOS 组合电路完成的,但 CMOS电路根据不同的输入和输出,其消耗的能量是不同的,例如汇编指令 ADD 和 MOV ,消耗的能量是不同的,同样的指令 *** 作数不同,消耗的能量也是不同的,例如 MOV 1 和 MOV 2其能量消耗就是不同的,能量攻击就是利用芯片在执行不同的指令时,消耗能量不同的原理,实现秘钥破解。

常用的能量攻击方式就是在芯片的电源输入端(VCC)或接地端(GND)串联一个1到50欧姆的电阻,然后用示波器不断采集电阻两端的电压变化,形成波形图,根据欧姆定律,电压的变化等同于功耗的变化,因此在波形图中可以观察到芯片在执行不同加密运算时的功耗变化。

CW1173 提供能量波形采集端口,通过连接 板上的 MeaSure SMA 接口,就可以对能量波形进行采集,在利用chipwhisperer 开源软件就可以进行分析,可以实现简单能量分析、CPA攻击、模板攻击等。

通过 cpa 攻击 AES 加密算法获取密钥

ChipWhisperer 提供对时钟、电压毛刺的自动化攻击功能,类似于 web 渗透工具 Burpsuite ,可以对毛刺的宽度、偏移、位置等等参数进行 fuzz ,通过连接板上的 Glitch SMA 接口,就可以输出毛刺,然后通过串口、web 等获取结果,判断毛刺是否注入成功。

时钟毛刺攻击是针对微控制器需要外部时钟晶振提供时钟信号,通过在原本的时钟信号上造成一个干扰,通过多路时钟信号的叠加产生时钟毛刺,也可以通过自定义的时钟选择器产生,CW1173 提供高达 300MHZ 的时钟周期控制,时钟是芯片执行指令的动力来源,通过时钟毛刺可以跳过某些关键逻辑判断,或输出错误数据。

通过 CW1173 时钟毛刺攻击跳过密码验证

电压毛刺是对芯片电源进行干扰造成故障,在一个很短的时间内,使电压迅速下降,造成芯片瞬间掉电,然后迅速恢复正常,确保芯片继续正常工作,可以实现如对加密算法中某些轮运算过程的干扰,造成错误输出,或跳过某些设备中的关键逻辑判断等等 。

对嵌入式设备的电压毛刺攻击

随着物理攻击理论和技术的进步,针对硬件芯片的防护手段也随之提高,芯片物理层的攻防一直在不断角力 ,现实环境中,能量采集会受到各种噪声因素的干扰,硬件厂商也会主动实施一些针对物理攻击的防护,单纯依靠 ChipWhisperer 平台难以实现真实场景的攻击,因此还需要结合电磁、声波、红外、光子等多重信息,以及对硬件进行修改,多重故障注入,引入智能分析模型等等组合手段,今后会进一步介绍一些基于 ChipWhisperer 的高级攻击方式和实战分析方法。

答:ddos与pdos攻击的区别:Ddos是分布式拒绝服务,Pdos是永久拒绝服务

全称Distributed Denial of Service,中文意思为“分布式拒绝服务”,就是利用大量合法的分布式服务器对目标发送请求,从而导致正常合法用户无法获得服务。通俗点讲就是利用网络节点资源如:IDC服务器、个人PC、手机、智能设备、打印机、摄像头等对目标发起大量攻击请求,从而导致服务器拥塞而无法对外提供正常服务,只能宣布game over。

永久拒绝服务攻击(PDoS),也被称为phlashing,是一种严重破坏系统的攻击,需要更换或重新安装硬件。与分布式拒绝服务攻击不同,PDO利用的攻击安全漏洞允许远程管理受害者硬件管理接口中的网络硬件,如路由器、打印机或其他远程管理网络。攻击者利用这些漏洞用修改、损坏或有缺陷的固件映像替换设备固件,合法完成后称为闪存。因此,这种“砖块”装置在维修或更换之前,不可能用于原来的用途。

PDoS是一种纯粹的硬件目标攻击,与DDoS攻击中使用僵尸网络或根/虚拟服务器相比,速度更快,所需资源更少。由于这些特征以及在启用网络的嵌入式设备(NEED)上的安全漏洞的潜在和高概率,这种技术已经引起许多黑客团体的注意。

PhlashDance是Rich Smith(Hewlett-Packard系统安全实验室的员工)创建的工具,用于在2008年伦敦EUSecWest应用安全会议上检测和演示PDoS漏洞。

本文来源:

 1)安全隐私
如射频识别技术被用于物联网系统时,RFID标签被嵌入任何物品中,比如人们的日常生活用品中,而用品的拥有者不一定能觉察,从而导致用品的拥有者不受控制地被扫描、定位和追踪,这不仅涉及到技术问题,而且还将涉及到法律问题。
2)智能感知节点的自身安全问题
即物联网机器/感知节点的本地安全问题。由于物联网的应用可以取代人来完成一些复杂、危险和机械的工作,所以物联网机器/感知节点多数部署在无人监控的场景中。那么攻击者就可以轻易地接触到这些设备,从而对它们造成破坏,甚至通过本地 *** 作更换机器的软硬件。
3)假冒攻击
由于智能传感终端、RFID电子标签相对于传统TCP/IP网络而言是“裸露”在攻击者的眼皮底下的,再加上传输平台是在一定范围内“暴露”在空中的,“窜扰”在传感网络领域显得非常频繁、并且容易。所以,传感器网络中的假冒攻击是一种主动攻击形式,它极大地威胁着传感器节点间的协同工作。
4)数据驱动攻击
数据驱动攻击是通过向某个程序或应用发送数据,以产生非预期结果的攻击,通常为攻击者提供访问目标系统的权限。数据驱动攻击分为缓冲区溢出攻击、格式化字符串攻击、输入验证攻击、同步漏洞攻击、信任漏洞攻击等。通常向传感网络中的汇聚节点实施缓冲区溢出攻击是非常容易的。
5)恶意代码攻击
恶意程序在无线网络环境和传感网络环境中有无穷多的入口。一旦入侵成功,之后通过网络传播就变得非常容易。它的传播性、隐蔽性、破坏性等相比TCP/IP网络而言更加难以防范,如类似于蠕虫这样的恶意代码,本身又不需要寄生文件,在这样的环境中检测和清除这样的恶意代码将很困难。
6)拒绝服务
这种攻击方式多数会发生在感知层安全与核心网络的衔接之处。由于物联网中节点数量庞大,且以集群方式存在,因此在数据传播时,大量节点的数据传输需求会导致网络拥塞,产生拒绝服务攻击。
7)物联网的业务安全
由于物联网节点无人值守,并且有可能是动态的,所以如何对物联网设备进行远程签约信息和业务信息配置就成了难题。另外,现有通信网络的安全架构都是从人与人之间的通信需求出发的,不一定适合以机器与机器之间的通信为需求的物联网络。使用现有的网络安全机制会割裂物联网机器间的逻辑关系。
8)传输层和应用层的安全隐患
在物联网络的传输层和应用层将面临现有TCP/IP网络的所有安全问题,同时还因为物联网在感知层所采集的数据格式多样,来自各种各样感知节点的数据是海量的、并且是多源异构数据,带来的网络安全问题将更加复杂

物联网的安全和互联网的安全问题一样,永远都会是一个被广泛关注的话题。由于物联网连接和处理的对象主要是机器或物以及相关的数据,其“所有权”特性导致物联网信息安全要求比以处理“文本”为主的互联网要高,对“隐私权”(Privacy)保护的要求也更高(如ITU物联网报告中指出的),此外还有可信度(Trust)问题,包括“防伪”和DoS(Denial of Services)(即用伪造的末端冒充替换(eavesdropping等手段)侵入系统,造成真正的末端无法使用等),由此有很多人呼吁要特别关注物联网的安全问题。
物联网系统的安全和一般IT系统的安全基本一样,主要有8个尺度: 读取控制,隐私保护,用户认证,不可抵赖性,数据保密性,通讯层安全,数据完整性,随时可用性。 前4项主要处在物联网DCM三层架构的应用层,后4项主要位于传输层和感知层。其中“隐私权”和“可信度”(数据完整性和保密性)问题在物联网体系中尤其受关注。如果我们从物联网系统体系架构的各个层面仔细分析,我们会发现现有的安全体系基本上可以满足物联网应用的需求,尤其在其初级和中级发展阶段。
物联网应用的特有(比一般IT系统更易受侵扰)的安全问题有如下几种:
1 Skimming:在末端设备或RFID持卡人不知情的情况下,信息被读取
2 Eavesdropping: 在一个通讯通道的中间,信息被中途截取
3 Spoofing:伪造复制设备数据,冒名输入到系统中
4 Cloning: 克隆末端设备,冒名顶替
5 Killing:损坏或盗走末端设备
6 Jamming: 伪造数据造成设备阻塞不可用
7 Shielding: 用机械手段屏蔽电信号让末端无法连接
主要针对上述问题,物联网发展的中、高级阶段面临如下五大特有(在一般IT安全问题之上)的信息安全挑战:
1 4大类(有线长、短距离和无线长、短距离)网路相互连接组成的异构(heterogeneous)、多级(multi-hop)、分布式网络导致统一的安全体系难以实现“桥接”和过度
2 设备大小不一,存储和处理能力的不一致导致安全信息(如PKI Credentials等)的传递和处理难以统一
3 设备可能无人值守,丢失,处于运动状态,连接可能时断时续,可信度差,种种这些因素增加了信息安全系统设计和实施的复杂度
4 在保证一个智能物件要被数量庞大,甚至未知的其他设备识别和接受的同时,又要同时保证其信息传递的安全性和隐私权
5 多租户单一Instance服务器SaaS模式对安全框架的设计提出了更高的要求
对于上述问题的研究和产品开发,国内外都还处于起步阶段,在WSN和RFID领域有一些针对性的研发工作,统一标准的物联网安全体系的问题还没提上议事日程,比物联网统一数据标准的问题更滞后。这两个标准密切相关,甚至合并到一起统筹考虑,其重要性不言而喻。
物联网信息安全应对方式:
首先是调查。企业IT首先要现场调查,要理解当前物联网有哪些网络连接,如何连接,为什么连接,等等。
其次是评估。IT要判定这些物联网设备会带来哪些威胁,如果这些物联网设备遭受攻击,物联网在遭到破坏时,会发生什么,有哪些损失。
最后是增加物联网网络安全。企业要依靠能够理解物联网的设备、协议、环境的工具,这些物联网工具最好还要能够确认和阻止攻击,并且能够帮助物联网企业选择加密和访问控制(能够对攻击者隐藏设备和通信)的解决方案。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/dianzi/13137066.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-06-10
下一篇 2023-06-10

发表评论

登录后才能评论

评论列表(0条)

保存