上个月,一名研究人员在SecurityWeek于安大略省亚特兰大举行的《ICS网络安全会议》上警告称,边信道攻击(Side-channel Attack,简称SCA)可能会对工业控制系统(ICS)构成严重威胁。
为了证实这一结论,电力管理公司Eaton的首席工程师Demos Andreou已经针对能源领域常用的保护设备(尤其是配电站使用的设备)进行了分析。
边信道攻击(SCA)最初是由Kelsey等学者于1998年提出的一种理论。与传统密码分析不同,边信道攻击利用功耗、电磁辐射等方式所泄露的能量信息与内部运算操作数之间的相关性,通过对所泄露的信息与已知输入或输出数据之间的关系作理论分析,选择合适的攻击方案,获得与安全算法有关的关键信息。
目前边信道理论发展越发迅速,从最初的简单功耗分析(SPA),到多阶功耗分析(CPA),碰撞攻击、模板攻击、电磁功耗分析以及基于人工智能和机器学习的边信道分析方式,边信道攻击方式也推陈出新,从传统的直接能量采集发展到非接触式采集、远距离采集、行为边信道等等。
而此次Andreou的研究重点主要聚焦在时序攻击(Timing Attack)和功耗分析攻击(power analysis attack)上。它们都属于边信道攻击方法范畴,其中,时序攻击(TA)需要获得目标攻击系统详细配置参数,重建对照环境,利用统计分析方法,对照采集到的密码算法一次加密/解密的整体时间来推测密钥;而功耗分析攻击则是通过分析时间周期内半导体的功率变化,即示波器显示的两个脉冲之间的时间量,信号形成功率配置文件,可以提供有关数据处理方式的线索。
研究人员表示,时序攻击和功率分析攻击都可以针对工控系统(ICS)设备发挥作用。但是,由于时序攻击更易于检测和阻止,所以他将研究重点放在了功率分析上。
自1998年提出至今,虽然边信道攻击已经出现了很长时间,但却很少有研究论文专门探究过它们对工业控制系统的影响。值得注意的是,臭名昭著的Meltdown(熔断)和Spectre(幽灵)边信道攻击也会影响工控系统,但这些方法只涉及软件,而且它们实际上利用了现代CPU中用于提升执行性能的两种并行执行特性:乱序执行(Out-of-Order Execution)和推测执行(Speculative Execution)。
Andreou指出,此次研究的目的是提高工控行业对风险的认识,意识到这些攻击不仅仅是理论上可行的,即便是在资源有限的条件下,这些攻击仍然有能力实现。
作为在Eaton公司工作的一部分,Andreou开展了工业控制系统和网络的合规性和道德渗透测试研究。此外,Andreou还和其他人帮助Eaton公司确保其产品安全,以及客户网络不易受到网络威胁。
功耗分析攻击依赖于分析时间周期内半导体的功率变化,即示波器显示的两个脉冲之间的时间量。信号形成功率配置文件,可以提供有关密码数据处理方式的线索。
例如,通过观测输入正确密码字符和非正确密码字符的功率配置文件间的差异,可以一次推测一个字符的密码,之后通过相同的技术来提取完整的加密密钥信息。
目前,研究人员已经对来自三家主要供应商的保护设备进行了测试,结果均取得了成功,但他认为,如果这三家公司使用的微处理器容易受到这些类型的攻击,那么来自其他公司的产品也会受到影响。
虽然测试的设备都已有5至10年的历史,但研究人员表示,新产品可能具有相同的漏洞,因为这些类型的攻击直至最近才从理论走向现实,供应商不太可能意识到这种威胁,更不可能已经提前采取措施来降低风险。除此之外,开源软件和廉价硬件的可用性也使得进行边信道攻击变得更加容易。
研究人员指出,已经获得到保护设备物理访问权限的攻击者可以使用示波器和运行开源软件的专用硬件设备来获取加密密钥,而进行此类攻击所需的硬件成本仅为300美元。
在测试的保护设备案例中,攻击者可以成功提取加密密钥,并使用它来进行配置更改。由于这些系统主要用于保护电网等国家关键基础设施,因此擅自更改设备将产生非常严重的后果。
恶意行为者可能会造成系统失效或将错误的数据发送回其运营商。由于这些设备都是由主系统控制的分布式系统,因此来自一个设备的错误读数就可能会对网络的其他不同部分产生影响。
此外,研究人员还进一步解释称,攻击者可以进行隐匿的配置更改。例如,在测试的保护设备中,有一些会针对不同的季节具有不同的设置,并且黑客可预设配置更改仅在某个季节开始时生效,如此一来就能很好地掩盖其攻击行径。
功率分析攻击可能会造成严重的威胁,因为它们几乎无法检测到,且目标设备即便是在受到攻击后也能维持正常操作,让人察觉不到异常。
在现实场景中实施此类攻击并非易事,但也并非不可能实现。研究人员指出,想要获取目标设备的物理访问权限可能并不困难,因为它们通常都处于无人监管的状态。无论是恶意内部人员、顾问还是外包维修人员都可能有很多机会发动攻击。
另一方面,必须恰好在目标进行加密密钥操作时对功率进行测量,这就需要对设备进行逆向工程,并提前了解目标产品的类型。
进行攻击可能需要数小时,其中大部分时间都属于物理准备(例如打开目标设备、连接传感器等)。攻击的软件部分要快得多,密钥可以在几分钟内获取到。
例如,如果保护设备使用的是高级加密标准(AES),攻击者可以一次提取一个字节的密钥。就AES-128而言,攻击者需要做的就是对加密密钥的16个字符中的每个字符进行00到255的组合,并监控每次尝试的功率配置文件。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- Go 并发 -- 信道
- SSH加入抵御边信道攻击的功能
- CVE-2018-3639 | 最新侧信道攻击详细分析
- Golang学习笔记之并发.协程(Goroutine)、信道(Channel)
- 基于时延的盲道研究:受限环境下的内容回传信道
- 模型压缩:识别感知的深度神经网络信道裁剪 | 论文分享
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。