每周一篇 Paper 赏析:USENIX21-充电线侧信道攻击

admin 2022年12月10日20:52:17评论44 views字数 2522阅读8分24秒阅读模式

本周我们分享一篇被USENIX Security 21接收的通过智能手机充电线对手机屏幕解锁密码进行侧信道攻击的文章:Charger-Surfing: Exploiting a Power Line Side-Channel for Smartphone Information Leakage。文章一作是特拉华大学的Patrick Cronin.

如今,随着智能手机的不断发展,智能手机在我们的生活中承担了越来越多的任务,其丰富的功能导致其使用量不断增加,电池耗电速度也变得更快,这导致了在日常生活中我们不得不使用一些他人提供的充电设备如各种USB充电插座和共享充电宝。本篇文章介绍了一种攻击者通过在充电设备上进行低成本改装(淘宝20元左右)获取受害者在充电时使用密码解锁手机时的功耗信息还原受害者锁屏密码的方法。该研究发现,当我们手机在充电时,从USB充电线上的接地线上获得的手机功耗信息与手机屏幕的活动高度相关。这项发现使得我们利用功耗侧信道攻击方法还原受害者屏幕信息成为了可能。

每周一篇 Paper 赏析:USENIX21-充电线侧信道攻击

通过获取的功耗信息攻击者利用神经网络可以精准的识别手机屏幕在解锁时的用户按下的虚拟按键位置从而还原密码信息。研究发现,无论使用安卓或者苹果,无论屏幕材质为LCD或者OLED,攻击者对不特定受害者均可以实现平均98.7%的单按键推断准确率,并且有平均95.1%或92.8%的概率在首次破解4位或者6位密码。

在介绍具体的攻击流程之前我们首先来了解一下我们的攻击工具和对象。

- USB数据线:对于一般的USB数据线,根据USB协议的不同其由多根数据线和两根供电线组成,在给手机充电时,手机电池进入充电状态,设备不是由电池供电,而是由通过USB电源线连接的电源供电。此时USB供电线上的电压电流信息即可反映手机的整体功耗信息。

- 手机屏幕:目前手机采用的主要有LCD和OLED两种材质的屏幕。

  1. 对于LCD屏幕,其内部包含三个主要组成部分:背光源,垂直偏振滤光片和液晶。通过对液晶施加不同的电压并与偏光片配合来显示各种颜色,其中,为了显示黑色像素,液晶层需要用最大电压充电而对于白色像素,液晶层则需要用最小电压充电。

  2. 对于OLED屏幕,其利用有机分子产生不同颜色的光线,具体而言,OLED在显示黑色像素时功耗最低而显示白色像素时功耗最高。

由此我们可以分析得到,对于LCD与OLED两种显示技术在用于显示相同图像时功耗应具有相反的值。

每周一篇 Paper 赏析:USENIX21-充电线侧信道攻击

当我们拿到手机、开机并用密码解锁手机时,对于我们每次的按键手机系统总是会给我们一些诸如高亮已按下按键等的反馈。无论LCD或是OLED屏幕在显示动态图像时总是从上到下、从左到右的刷新,那么,当系统高亮不同位置的按键时,由手机一系列瞬时功耗组成的功耗曲线必然也互有不同。

每周一篇 Paper 赏析:USENIX21-充电线侧信道攻击

上图显示了带有LCD屏幕(a图)和带有OLED屏幕(b图)在运行一个定制Android程序时的功耗曲线,该程序旨在验证当系统高亮不同位置时,手机的功耗曲线互有不同且可以互相区分。验证程序将屏幕分为六个部分(顶部,中间和底部,以及左,中间和右列)并在黑色背景上显示闪烁的白色条块,上面a图显示了采用LCD屏幕手机在不同区域白色亮起时的功耗曲线。

由两幅图片我们可以发现:

- 从USB数据线上采集到的手机功耗曲线在LCD与OLED屏幕上有着明显的区别,在之后的密码还原时我们需要首先确定手机采用的屏幕类型。

- 从USB数据线上采集到的手机功耗曲线对于屏幕不同位置的高亮有着明显的区别,可以分析收集到的功耗曲线来判断当前屏幕上的高亮区域。

在从原理上验证了从手机USB充电线上获得的功耗信息可以还原出当前屏幕高亮区域的位置后我们接下来具体说明一下Charger-Surfing的攻击流程。

每周一篇 Paper 赏析:USENIX21-充电线侧信道攻击

Charger-Surfing首先在USB数据线的接地供电线上串联一个0.3欧的电阻,并用示波器检测该电阻两端的电压值。当今大多数旗舰智能手机的屏幕分辨率在1920×1080和2960×1440之间,刷新频率为60 Hz。每行一个样本将需要115-178KHZ的采样率。在实验中我们使用125 KHz的采样率,使得在许多旗舰智能手机上,每0.9至1.4行采样一次,此速率可确保连续采样不会在同一竖线上进行。

在得到示波器采集到的电阻两端的电压信号后,我们将信号中代表按动按键的电压曲线分割出来得到每次按键对应的电压信号。

因为屏幕技术,屏幕分辨率以及手机中的不同组件(CPU,GPU,屏幕驱动程序等)会导致截然不同的功耗曲线模式,因此可以使用神经网络识别出当前功耗曲线所对应的手机型号。论文作者在文中提到神经网络确定手机型号的成功率达到了100%。

在得到对应每次按键的电压曲线信号后通过预处理后传入由一系列重复的卷积和最大池化层,最后是softmax回归层的一维卷积神经网络中,将电压信号分类为可能的按键。

每周一篇 Paper 赏析:USENIX21-充电线侧信道攻击

通过结果可以看出,当CNN网络在用两个用户数据进行训练后在3款手机上就可达到单按键推断超过90%的成功率,在用五个用户数据进行训练后在所有设备上就可达到单按键推断超过95%的成功率。

每周一篇 Paper 赏析:USENIX21-充电线侧信道攻击

对于4位密码通过重复单按键推断过程,使用用5名用户数据训练的CNN网络可以以超过80%的概率在首次尝试中成功解锁受害者手机,在10次尝试后使用该网络的攻击者有着平均99.5%的成功率破解受害者手机密码。

每周一篇 Paper 赏析:USENIX21-充电线侧信道攻击

对于6位密码通过重复单按键推断过程,使用用5名用户数据训练的CNN网络可以以超过77%的概率在首次尝试中成功解锁受害者手机,在10次尝试后使用该网络的攻击者有着平均96%的成功率破解受害者手机密码。

同时,文章作者还探讨了在受害者手机屏幕不同配置下该攻击方法的鲁棒性问题,通过实验他们发现,无论受害者手机屏幕亮度如何变化,手机充电时电池的状态如何,是否使用动态壁纸都不影响该攻击方法的有效性。

每周一篇 Paper 赏析:USENIX21-充电线侧信道攻击

最后,作者还在一个低成本的开发板上探讨了该攻击方法的实际部署成本问题,作者在一个淘宝上20元左右的ESP32开发板上实现了上述攻击流程并得到了单键推断平均99%、4位密码首次平均94.9%,6位密码首次平均92.4%的成功率。

每周一篇 Paper 赏析:USENIX21-充电线侧信道攻击


 

 


原文始发于微信公众号(上科大系统与软件安全实验室S3L):每周一篇 Paper 赏析:USENIX21-充电线侧信道攻击

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年12月10日20:52:17
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   每周一篇 Paper 赏析:USENIX21-充电线侧信道攻击https://cn-sec.com/archives/1062323.html

发表评论

匿名网友 填写信息