针对GPU的电磁侧信道分析
小心你的邻居正在偷窥你浏览的网页!
背景
图形处理单元(GPU)是现代计算机系统的重要组成部分,不仅可用于图形渲染,还可用于进行大量的并行计算。然而,在GPU上运行的许多任务都包含敏感信息,越来越多的学者关注到了其信息泄露问题。
Zihao Zhan等人2022年在顶级学术期刊S&P上,提出了一种针对GPU的电磁侧信道攻击,用以恢复用户的网站指纹和推测按键间隔时间。其方案主要利用了GPU的动态电压和频率调节(DVFS)功能产生的漏洞,可发起远程或穿墙攻击,NVIDIA和AMD公司的多款GPU均会受到该漏洞的威胁。
动态电压和频率调节(DVFS)存在的漏洞
动态电压和频率调节(DVFS)是一种被广泛用于CPU的电源管理技术。随着GPU的发展,DVFS技术已被应用到了GPU上。该功能主要用于调整GPU内核和内存的电压和频率。DVFS指定了多个性能级别,每个性能级别设置了不同的内核与内存的电压和频率。GPU的DVFS可动态切换性能级别以满足当前的计算需求,最大限度地减少功耗、发热和风扇噪音。DVFS功能默认开启,用户可根据需求手动关闭。
由于DVFS可动态切换性能级别,因此GPU内核和内存的时钟频率也会随之改变,而时钟信号会产生强烈的电磁辐射。经过观察分析,GPU内核时钟信号几乎不产生电磁辐射,但内存时钟的电磁辐射非常明显。从GDDR5开始,GPU的内存使用两种类型的时钟,一种为命令时钟,用于发送命令和地址,另一种为写时钟,用于数据读取和写入。所关注的电磁辐射是由写时钟产生的。
该论文工作的攻击对象是配备独立显卡的台式计算机,GPU可以是NVIDIA或AMD的产品。
网站指纹攻击
浏览网站时,GPU的任务不仅仅是显示网页,也会参与网页渲染。渲染不同的网站时,可能会产生不同的GPU工作负载,引起不同模式的GPU性能水平的切换。在特定GPU内存时钟频率下,观察电磁信号的频谱特征可识别出不同的网页。在装有AMD Radeon RX 580 GPU的系统上启动三个不同程序,分别是Chrome、Firefox和LibreOffice Writer,操作系统是Ubuntu 18.04,GPU驱动是AMD GPU 20.20。启动过程由时钟信号产生的电磁辐射频谱如图所示,可根据不同频域特征区分不同的启动程序。
启动不同程序时GPU时钟信号产生的电磁辐射频谱图
采集到的电磁信号经过信号变换(时间序列派生)与增强,转换为S[k]序列,后续工作主要关注该序列的特征。下图展示了装有AMD Radeon RX 580 GPU的系统,在第二低的时钟频率下,用Chrome浏览器打开Google、Amazon、YouTube三个网站时捕获的信号得出的S[k]序列。
Chrome浏览器打开不同网站产生的不同电磁辐射
实验评估主要针对常用的网站,使用USRP B210 SDR和RFSPACE UWB-3天线,在主机的不同角度和距离下采集电磁辐射,对其使用Resnet网络建模并攻击。分别在近距离和远距离的场景下展开实验分析,电磁信号采集位置如下图所示。
主机各角度的定义
近场信号和远场信号采集位置
近距离实验使用N1、N2、N3、N4四个测量位置采集的电磁信号训练模型,N5、N6、N7、N8四个位置采集的电磁信号用于测试。下表为近距离采集电磁信号的网站指纹识别准确率。
近距离实验测试结果
远距离实验使用F1、F2、F3、F4、N2、N4几个测量位置采集的电磁信号训练模型,F5、F6、N6三个位置采集的电磁信号用于测试。下表为远距离采集电磁信号的网站指纹识别准确率。
远距离实验测试结果
根据实验结果,在距离和方向两个因素中,距离对网站指纹识别的性能影响更大。
按键时间推测
与网站指纹识别相似,GPU性能级别也可能因为按键事件改变,因此可以利用其电磁泄露,检测按键事件并得到连续按键之间的时间。下图展示了使用NVIDIA RTX 3060的系统,在键盘上正常输入“username password”字符串时,由时钟信号产生的电磁泄漏特征,可清晰地辨别出每个字符敲击的时间间隔。
电磁信号泄漏字符敲击的时间间隔
下表展示了不同型号的GPU最短可检测到按键事件的时间间隔,NVIDIA RTX 3060的时间分辨率最高,可以清晰识别30毫秒间隔的击键。
不同型号GPU按键事件检测的时间间隔
攻击范围
本论文针对两种类型的外壳展开分析,一种为半透明侧板电脑机箱,另一种为四面全金属的电脑机箱,最远攻击范围如下图所示。
攻击范围
本论文还测量了隔墙的攻击效果,测试是否可以从房间外采集到感兴趣的电磁辐射。分别针对石膏墙和混凝土墙进行了测试,墙壁厚度均为15厘米,天线和主机之间间隔1米,电磁辐射强度衰减如下表所示。
电磁辐射衰减程度
石膏墙最多使电磁信号强度下降1.32dB,其影响可以忽略不计,而混凝土墙最多可以降低8.64dB,可能会影响侧信道分析效果。
总结
本论文利用GPU中DVFS功能中存在的电磁侧信道漏洞,展开了网站指纹识别和按键计时攻击。简单地禁用DVFS功能会导致另一个电磁侧信道漏洞——NVIDIA的GPU在停用该功能后,信号会被调幅,观察其幅值特征仍然可以开展网站指纹攻击。
参考资料
[1] Zhan Z, Zhang Z, Liang S, et al. Graphics peeping unit: Exploiting em side-channel information of gpus to eavesdrop on your neighbors[C]//2022 IEEE Symposium on Security and Privacy (SP). IEEE, 2022: 1440-1457.
