信息安全 -- 什么是侧信道攻击

在经典大盗影片中,我们常看到这样的场景:

一名黑衣大盗屏息凝神,手指轻旋保险箱的密码锁,耳贴金属门板,通过锁芯转动的细微"咔嗒"声判断密码组合。

这种看似夸张的手法,实则是现实中侧信道攻击(Side-Channel Attack)​的雏形------攻击者不直接破解密码算法,而是通过分析设备运行时泄漏的物理信号(如功耗、电磁波、时间差等)间接获取密钥等敏感资产。

好了,全文完 -- 才怪。

但是上面这个场景就是侧信道攻击的简化版。

所谓侧信道的侧,指的就是一些可以被测量或者收集的额外信息。

还是以盗贼旋转密码锁为例,不管是盗贼还是保险箱主人,打开保险箱都需要输入密码,而输入密码这个动作本身就会传递一些信息,例如旋转时发出的声音、不同数字摩擦的力度,这些可能都会作为被收集对象用于分析,最终得出正确的密码。

那回到芯片、计算机等电子设备来说,只要上电运行,就势必会产生不同热量、电磁波、功耗甚至声音等等。

图片来源:《密码实现安全形式化验证发展现状与展望》

那我们让加密软硬件运行时,同样会产生这样的信息,这些信息被收集来分析作为攻击手段,这就是侧信道攻击。


从以上我们可以看到,侧信道泄露的信息往往是执行动作本身无意识透露的信息,比如说有人正常走路,但另一个人通过他走路的动作、速度来推断他要准备干什么、甚至他的个性等。

所以,侧信道攻击就可以根据不同的物理信号进行分类,常见的有如下五类:

  • 时间攻击(Timing Attack)​​

时间攻击就是测量算法执行的时间差异。例如,RSA处理"模乘"与"模约简"等操作耗时不同,攻击者可通过时间差反推密钥。

  • ​功耗分析攻击(Power Analysis Attack)​​

​利用电路执行不同操作时功耗波动不同。例如,AES加密中处理不同数据的功耗差异可泄露密钥,​典型手段​包括简单功耗分析(SPA)直接观察波形特征,差分功耗分析(DPA)通过统计方法从噪声中提取信号。

  • ​电磁攻击(Electromagnetic Attack)​​

​芯片运行时会释放与数据处理相关的电磁辐射。攻击者使用探头远程捕捉信号,甚至隔墙实施攻击。

  • ​缓存攻击(Cache Attack)​​

​该攻击主要是利用共享缓存资源的时间差异推测敏感信息。例如,云计算中多个虚拟机共享缓存,攻击者通过监测缓存访问时间窃取数据

  • ​故障注入攻击(Fault Attack)​​

​通过人为制造电压波动、激光照射等方式干扰设备,诱导其输出错误信息以提取密钥或者绕过安全机制。


前面我们提到,由于侧信道本身不可避免(例如功耗、辐射),要想做好防护就必须专项治理。

  • 例如在密码软硬件运行时加入随机噪声或虚拟操作,掩盖信号中的规律性,增加攻击者获取信息的难度;

  • 在设计时尽可能考虑操作执行时间均匀;

  • 通过增加电磁屏蔽来减少电磁辐射。

侧信道攻击的概念就简单介绍到这,具体如何实现,我再研究研究和大家分享。

好,这是真的全文完。

相关推荐
Rocket MAN4 小时前
在 Ubuntu 中配置 Samba 实现「特定用户可写,其他用户只读」的共享目录
网络·windows·ubuntu
Nina_7174 小时前
python简易实现勒索病毒
网络·python·网络安全
Mr-Apple6 小时前
Decode rpc invocation failed: null -> DecodeableRpcInvocation
网络·网络协议·rpc
IpdataCloud6 小时前
IP 风险画像如何实现对恶意 IP 的有效拦截?
网络·网络协议·tcp/ip
运维有小邓@7 小时前
比较入站和出站防火墙规则
服务器·网络·php
IT小饕餮7 小时前
MUX-vlan
网络
TPBoreas7 小时前
Ubuntu开放端口
linux·服务器·网络
JAVA学习通8 小时前
【JavaEE】 HTTP协议(1.0)
网络·网络协议·http
狄加山6758 小时前
STM32的网络天气时钟项目
网络·stm32·嵌入式硬件
从零开始学习人工智能8 小时前
4G与5G网络频率:技术演进与应用场景解析
网络·5g