-
-
[翻译]看不见的热攻击之攻击手机锁屏密码
-
发表于: 2017-3-29 09:09 6927
-
图1:在本文,我们研究针对移动设备上PIN码和图案(注:式锁屏密码)的热攻击。 在触摸屏上输入PIN码(a-c)或图案(d-f)之后,热迹线保留在屏幕上,并可通过热成像可视化。
PIN码和图案仍然是最广泛使用的基于知识的认证方案。由于热摄像机变得无处不在且价格低廉,我们预见针对移动设备上用户隐私的新形式的威胁。热感相机使得执行热攻击成为可能,其中在认证时产生的热迹线可以用于重建密码。在本文,我们详细研究利用热成像推断移动设备上的PIN和图案(注:锁屏密码)的可行性。在研究(N=18)中,我们评估了PIN和图案的性质如何影响其热攻击抗性。我们发现热攻击在移动设备上确实可行;重叠图案显着地将热攻击成功率从100%降低到16.67%,而即使具有重复的数字,PINs仍然脆弱(>72%热攻击成功率)。我们总结并向用户和身份验证方案设计师建议如何抵抗热攻击。
ACM分类关键词
K.6.5安全和保护:认证
作者关键词
热成像;移动认证;触摸屏。
个人移动设备上可用的敏感数据(例如个人照片,通话记录,银行帐户和电子邮件)的数量的增加强化了防止各种恶意攻击的需要。因此,用户使用不同的身份验证机制保护对移动设备的访问,包括图案和PIN(注:锁屏密码),以及生物识别方法,如FaceUnlock或TouchID [23]。众所周知,隐私问题影响用户的技术使用决策[39],这表明许多用户可能放弃生物特征识别方法,因为存在相关的隐私问题,如生物识别信息泄露。然而,PIN和图案仍然是当今最流行的认证机制[23,49]。
可用安全社区最近专注于调查不同的以用户为中心的攻击,例如背后窥视(如[14,18,29])和污痕攻击(如[43,51])(注:smudge attack,根据手指在屏幕上留下的污迹划痕判断出锁屏密码)。与此同时,新的威胁出现了,迄今为止,研究界少有关注[4],它就是对移动设备触摸屏的热攻击。过去几年来,在大众市场上出现了带有便携式热成像仪的个人移动设备,例如CAT S60(http://www.catphones.com/phones/s60-smartphone),或作为移动设备的可附加配件(如FLIR One [http://www.flir.de/flirone]或Seek thermal[http://www.thermal.com])。硬件价格下降使得这些设备价格实惠。在本文出版之时,能以约400刀的价格买到温度敏感度为0.05℃的便携式热像仪。这自然地使得我们需要了解这种能够进行热攻击的设备所带来的威胁。
在热攻击期间,在远红外光谱中工作的热像仪在认证后(注:指在屏幕上输完密码后)捕获移动设备表面上留下的热迹。这些痕迹被恢复并用于重建密码。与污痕攻击不同,热攻击可泄漏有关PIN和图案输入顺序的信息(参见图1)。此外,它们可以在受害者认证之后进行,减轻可能受到手遮挡影响的现场观察攻击(如背后窥视攻击)的需要。
虽然已有前人研究利用热传导来识别交互的接触点[21,32,42],但我们研究的是可靠性,针对在认证后从触摸屏上留下的热迹推导出密码。Abdelrahman等人[1]描绘了针对表面热迹识别的材料空间(注:意思是属于这个集合空间内的材料表面可热迹识别)。然而,他们的研究工作并没有含盖触摸屏材料。我们调查Gorilla(大猩猩)玻璃的热攻击(http://www.corning.com/gorillaglass/worldwide/en/products-with-gorilla.html),它是被用于大多数触摸屏的标准覆盖玻璃。
在这项工作中,我们将探讨当前的认证机制如何易受热攻击的影响。我们引入了一种基于自动计算机视觉的方法,在认证过程之后分析热迹,并提取潜在的PIN或图案(注:密码)。我们的实现是开源的,因此允许进一步实验热攻击(https://github.com/Yomna-Abdelrahman/ThermalAttack.git)。我们在用户研究中调查了PIN和图案的特性如何影响热攻击的成功,并报告我们的发现。特别是,我们关注于身份验证方式的类型、密码的属性以及身份验证后的攻击实施时刻。我们发现,尽管包含重复数字的PIN的热图像不能被肉眼看到PIN(图1),但是在认证后的头30秒内予以实施,热攻击可以产生72%至100%的成功率。同时,如果图案包括一个或多个重叠,针对图案的热攻击成功将显着降低(在前30秒内从100%降到17%)。
本文的贡献如下:
1.针对最先进的智能手机触摸屏的热接触传导率评估,以及商业热感相机如何利用它们进行热攻击。
2.一种从热痕中提取PIN和图案来分析热攻抗性的自动计算机视觉方法。
3.关于常用认证方案的属性如何影响热攻击的成功率的深入研究。
4.一组帮助用户和认证方案设计人员克服热攻击的建议。
我们的研究工作基于两部分前人研究:(1)热成像和(2)移动设备上对用户认证的不同类型的威胁。
热像仪捕捉实景的热图。它们在波长于7.5和13μm之间的远红外光谱中工作。热成像的特性与可见光的特性有很多差异。
第一个热的特性是热辐射。与可见光相比,热辐射具有不同的反射特性,其取决于表面[1]。以前的工作中利用了热反射,以使身体穿戴和手持设备能够检测空中手势[42]。
第二个独特的特性是热成像独立于光和着色前提,这允许热像仪用于面部和表情识别[30,31]。热像仪可以提供有关于感知到的身体温度信息,可用于以无接触的方式推断用户的生理和认知状态[41],比如通过评估其应激水平[28]。
第三个独特的特性是热成像能够检测过去已经存在的输入。当用户触摸物体表面上的一个点时,热量从使用者转移到物体表面,这产生慢慢消失的热痕迹。可使用热成像检测这些热迹。热痕迹已被用于(注:数据)输入[21,32,42],以及根据用户的热手印来认证用户[11]。
在本文中,我们研究使用热成像推断在移动设备上输入的密码,这利用了热痕仅会慢慢消失的事实。我们调查最先进的触摸屏的热特性,并研究密码特性对热迹的影响,从而成功地通过热成像提取出密码。
移动设备(如平板电脑和智能手机)存储并允许访问太多的私人内容。之前有人调查了一些使用户的私人数据面临风险的威胁模型。
被讨论最广泛的威胁之一是背后窥视攻击,在该攻击中(注:背后)观察者试图窃听用户以发现私人信息,其中包含登录凭据信息[18]。有些方法可减缓背后窥视攻击的冲击:添加随机线索[6,7,846];通过让攻击者观察多个线索来分割攻击者的注意力[14,29];以及伪造用户输入[15,22]。除专注于登录凭据,研究还调查了为保护用户免于被背后窥视短信[19]和图片[50]的方法。大多数反击背后窥视的方案都是攻击者可以清楚地观察一次密码输入的威胁模型。其他威胁模型涵盖多次观察攻击[24,36,29,52]或视频攻击[14,46]。
另一种前人已描述的攻击类型是污痕攻击,其中攻击者利用交互后触摸屏上留下的油性残留物发现密码[5]。污痕攻击对图案(注:密码)的表现特别好,因为污迹提示了模式的开始位置。但是,他们几乎无法提供有关PIN输入顺序的任何有用的信息。减少污迹攻击的方法包括图形化地转换输入密码的视觉提示[43,51];引入随机元素以导致在每次身份验证尝试时出现不同污迹[51];或者使用多个手指增加图案复杂性[35]。污痕攻击的威胁模型假设攻击者除了清晰可见的污迹以及可清楚看到这些污迹的理想照明条件外,还可访问移动设备。
热成像攻击利用热成像的特性。也就是说,在认证期间,热迹线从用户的手转移到触摸屏。这些慢慢消失的痕迹[32]使得,即使用户已经输过了密码,热像仪也可以察觉显示屏的哪些部分被触摸过。类似于背后窥视,热攻击泄漏关于输入PIN和图案顺序的信息[5]。然而,相比背后窥视,热攻击可以在用户离开设备后执行。这给了攻击者一个优势,因为他们不需要在认证时观察用户,这使攻击更加微妙,并消除了手遮挡。虽然热图像可以通过交互来扭曲,但执行有限交互或在认证后离开设备的用户仍然容易受到热攻击。
Mowery等人研究了对带有塑料键盘ATM机进行热攻击的有效性[34]。他们发现即使用户认证过后,热攻击也是可行的。尽管Mowery等人调查了对ATM机的塑料键盘的热攻击,对移动设备和其他触摸屏设备的热攻击几乎没有任何涉及。在初步研究中,Andriotis等人[4]能够观察到在输入图案认证3秒后所产生的热痕迹。这允许他们提取部分图案(注:密码)。
在我们的工作中,我们深入分析在对于移动设备触摸屏上PIN和图案及相应不同密码特性情况下的热攻击的表现有多好。我们考虑了PIN中的重复数字和图案重叠。为此,我们实现了ThermalAnalyzer(注:热分析器),它可自动从热痕迹中提取密码。ThermalAnalyzer显示,即使在认证发生30秒(即10倍时长于先前研究工作[4]),热攻击也可成功。
我们的研究工作依赖于热从一个物体到另一个物体的传递现象。热从用户手上传递到与之接触的物体表面,这留下了可用于分析的痕迹。它取决于物体表面材料的特性,即所谓的热接触电导[12],是指两个接触物体(表面)之间的热传导率。
根据blackbody(注:黑体)模型[27],任何绝对零点以上的物体(例如我们周围环境中的物体)都会发出热辐射。这种辐射被吸收,反射和传播。然而,对于完全不传导的表面,没有传输部分[20]。这约束有效部分为反射和吸收辐射。因此,热辐射可以表现为Thermal reflectivity + Thermal absorptivity = 1(热反射率+热吸收率=1)。
一旦物体接触表面,热辐射被物体表层传播和吸收,导致温度变化。这导致热痕积聚在表面上。为了计算传输的热量并确定热量是否可以被商用热摄像机检测到,我们测量了接触点处的温度(T_contact)。我们使用Ray[40]的一个成熟的模型来计算两个物体接触点的温度。在我们的场景中,两个物体是:人体皮肤(即用户的手指)和移动设备的触摸屏(即Gorilla玻璃片)。
(1) T_contact = (b_skin*T_skin + b_gorilla_glass*Tgorilla_glass) / (b_skin + b_gorilla_glass)
(2) b = sqrt(K*P*C)
T_contact取决于接触点的温度(T_skin和T_gorilla_glass)以及它们的热穿透系数(b)。它是被表层渗透和吸收的热能的总量。此b由等式2定义。它由热导率(K),热密度(P)和比热容(C)的乘积构成[38]。人类皮肤和gorilla玻璃短接触的b分别是1000 pow(JS,-1/2.0)*pow(m,-2)*pow(K,-1)[38]和1385 pow(JS,-1/2.0)*pow(m, -2)*pow(K,-1)[44](该值由我们大学的应用光学研究所通过实验室测量确定)。
另外,接触点温度变化的检测取决于相机的灵敏度。温度的变化必须高于相机的温度敏感度才能被相机区分开来。例如,如果触摸屏玻璃的温度T_gorilla_glass为23℃,用户的手温T_skin为30℃,则按等式1计算T_contact为25.9℃,这导致2.9◦C的温差(T_contact - T_gorilla_glass)。因此,热敏感度≤2.9℃的热相机将能够通过利用热痕迹衰减来恢复PIN/图案输入的顺序。在我们的研究中,热像仪的热敏感度为0.04℃,它能够感知手温差异。
在我们的威胁模型中,攻击者(即未经许可访问设备的人)等待受害者完成认证过程并离开移动设备。比如用户快速查看其最新消息后,将设备放在他或她的桌子上,然后去咖啡机取饮料。为了确保攻击者在我们的威胁模型中的最佳条件,用户不与设备进行交互,而只是认证(例如,查看来自通知或窗口小部件的更新),然后让设备闲置。攻击者然后使用热像仪(如,集成于智能手机中的热像仪)来拍摄设备触摸屏的热图像。然后攻击者以类似于我们在下一节中给出的分析的方式分析热图像,以识别PIN/图案。与以前讨论的威胁模型[24,36,29,52]类似,攻击者利用了无人在设备附近的机会来登录和访问用户的私人信息。
图2:该图说明了PIN(顶部)和图案(底部)的识别流水线。
下面,我们将介绍ThermalAnalyzer的设计和实现。此ThermalAnalyzer由捕获图像的热像仪和用于提取PIN和图案的识别流水线组成。
识别流水线由六个步骤组成,用于从图像中提取PIN或图案(图2)。这些步骤使用OpenCV(http://opencv.org/)实现,包括帧提取、预处理、噪声和背景去除以及阈值处理。最后一步是特征提取,以推导出接触点的位置和温度信息。
我们使用Optris热像仪API(http://www.optris.com/software)捕获了热像。使用处理器间通信,我们以16位颜色格式的帧捕获温度信息的编码。我们使用其API来配置相机以捕获在19℃到32℃之间的温度。这是为了实现表示如图2所示的不同温度值的较高的颜色对比度。对于每个被捕获的帧,都会有预处理过程被执行。这包括噪声过滤、背景去除和阈值处理。
我们吸收了论文[1,32,42]所使用的噪声过滤处理过程,采用5x5像素的中值过滤器,将图像转换为灰度图并重新应用过滤器来增强降噪。
为去除背景,我们构建了半静态背景模型。就我们来说,静态模型是首选的,因为我们希望检测到的热痕迹持续多个帧,且不被动态背景模型吸收。然而,另一方面,在操作过程中,需要一个动态模型来容忍设备的轻微温差。因此,我们构建了一个半静态背景模型,其中更新由学习速率(α)参数控制,该参数是控制背景模型更新速率的值。为0.001的α值在初步试验中表现最好。结果,密码输入产生的最新热痕迹仍处于前景,而与环境温度没有太多差异的热痕则与背景相融合。
为了区分与识别热痕迹相关的区域(图2),我们使用了Otsu的阈值处理方法[37]。基于Otsu算法的动态计算的阈值,帧被分为两个之间有最小重叠的像素组。然后,我们应用了一个额外的形态closing(注:逼近?)操作来突出显示阈值前景的边界并除去背景。
我们的特征分为(1)用于PIN检测的圆形痕迹,以及(2)用于图案检测的线条痕迹。
通过从二进制图像中提取轮廓可检测出热迹线,在提取时,要扫描图像来检测轮廓数组。类似于Sahami等人的工作[42],我们使用圆形拟合轮廓检测来识别PIN输入。轮廓中心从提取出的轮廓的空间矩计算出。为检测圆形拟合的热迹,我使用相同的方式,采用Hough Transform(注:霍夫变换)[17]提取线形拟合轮廓检测来识别输入的图案,如图2所示。
在处理流水线的这一步,已经从捕获的帧中提取了PIN或图案输入,但没有关于输入顺序的信息。为了推断PIN的顺序,我使用带虚拟输入键盘的预设帧,采用正方形来识别PIN位置。正方形表示整个有效区域(ROI,regions of interest)。Mowery等人[34]报告说,以平均温度表示ROI收获了最佳的恢复输入序列顺序的性能。因此,我们计算每个ROI的平均温度,并根据其权重排序。
为了识别重复条目,我们计算每个数字的总体平均温度。从而减去背景温度。因此,从未按下的数字将具有几乎为零的温度值。所以,重复输入(即被多次触摸的数字)具有超过总平均值的值。可以从检测到的按压总数的相对温度值推断重复的数量。总之,给定一个四位数的PIN,将有四种检测结果:
1.四种不同的热痕:这意味着没有重复。因此,以降序的方式根据其温度排列痕迹刚推断出(注:PIN密码)序列。
2.三种不同的热迹:具有T_contact温度的热迹是PIN中的最后一个输入,因为它会保持T_contact值。这为剩下的序列留下了3种可能性,这足以让攻击者尝试而不被锁定。然而,这种方法将与最近捕获的帧一起才起作用,因为热痕,即T_contact,随着时间推移衰减。
3.两种不同的热迹:根据权重的相对比例确定每个数字的重复次数。然后规范化权重将显示最后触摸的数字。一旦识别出最后一位数字,攻击者可以判断它是重复的数字(即其他副本位于第1,2或3位,而剩余的数字根据其热痕排序),或最后一位数字不是一个重复的数字,因而攻击者有3种不被锁定的尝试可能性。
4.一个热迹:这意味着PIN由相同的数字重复4次。
由于热痕迹衰减,可能会遇到前三种情况之一。在这种情况下,我们认定丢失的数字为不明数字,并将其设置为PIN的开头(例如,如果检测到3个痕迹,没有重复的证据,则第一个数字被标记为未知,其余的三个按照他们的温度权重排序)。
对于图案,遵循相同的方法,其中提取的线根据其平均温度进行分析和排序。另外,比较所提取线的两端温度可识别此线的方向。我们的算法不考虑特殊图案长度,因此我们将可用的热迹线呈现可再生图案。
更保守地分析,ThermalAnalyzer没有针对特定长度(最大为9)的图案检测进行优化。这是因为在我们的威胁模型中,而且很可能也是在真实情况下,攻击者不知道图案长度。这意味着在ThermalAnalyzer产生长度为n而不是9的猜测的情况下,剩余的9-n个热痕迹在攻击时已经消失。
图3:设置用于拍摄手机屏幕的热像仪。
尽管过去几年引入的各种认证方案,但个人识别码(PIN)是最常用的方案之一[49]。此外,随着Android设备在市场上占主导地位,图案越来越多地被采用,这是一种Android图形密码方案,用户可在其上的3×3网格中绘制一个可显示的由点的连接构成的线条图案[45]。
在这项研究中,我们分析了用户输入密码后智能手机屏幕的热像。我们使用ThermalAnalyzer分析这些图像,并特别关注于理解(1)不同的认证方案,(2)密码输入和攻击之间的时间,(3)密码属性影响热攻击可行性。
该研究采用重复的测量设计,所有参与者都接触到所有情形。我们研究了三个独立变量对成功热攻击的影响:(1)密码类型:所使用的方案是PIN还是图案,(2)热痕迹的年龄:我们分析验证后0,15,30,45和60秒的热痕,以调查它们可以被攻击者利用多久,以及(3)PIN和图案的特性。
对PIN码,我们研究的属性是PIN中副本数。一方面,副本扭曲了热痕迹,使输入顺序不好区分;另一方面,副本的存在减少了密码空间,这意味着来自热攻击的较少信息将足以揭示密码。
我们研究了无重复,1重复和2重复的影响(例如分别为1236,1223和3222)。例子分别显示于图1a,1b和1c。对于图案,我们调查了图案中重叠数[48]的影响。当用户的手指通过已被选中的节点时则发生重叠。我们预计重叠可能使热迹线扭曲,足以使得不可能重建输入的图案。我们研究了在图案中有一个,两个或没有重叠的影响(分别参见图1e,1f和1d)。
我们的设备有两个三星Galaxy Note Edge智能手机,一个热相机(Optris PI450 [http://www.optris.com/thermal-imager-pi400])和一个GoPro Hero3 RGB相机,均安装在三脚架上。一个智能手机用于练习密码,另一个用于实际输入。热像仪具有382×288像素的光学分辨率和80Hz的帧速率。它能测量-20℃和900℃之间的温度,并具有作为噪声当量温差(NETD,是指被解释为对象温差的电子噪声)的0.04℃的热敏感度。相机拍摄的波长在7.5μm和13μm之间的光谱范围内。镜头提供80°×58°的视场。热敏相机使用USB作为电源以及传输数据。它提供以16位彩色值形式编码的温度信息。
为了确保在预期时间记录下热痕迹,我们在相机前面距离80厘米的使用位置标记(参见图3),以指示为了借助热像仪记录热痕迹的智能手机的最佳放置位置,同时这样最小化热反射。另外,我们使用RGB摄像机记录了整个研究。此RGB视频反馈在之后用于确定用户手指不再接触屏幕的时间。
我们使用大学邮寄名单招募了18名参与者(10名女性和8名男性),平均年龄为28.3岁(SD = 4.7)。所有参加者都是不同专业的学生。两名参与者是左撇子。没有一个参与者曾经接触过过热相机。
参加者到达实验室后,我们首先要求他们签署同意书并说明研究的目的。接下来,我们将一组印在卡片上的PIN和图案以及两个智能手机交给参与者。为避免输入错误和暂停,我们要求参加者首先通过在练习机上多次输入密码来预先熟悉密码。我们指示参与者输入密码,然后立即将用于研究那个智能机放在他们前面的桌子上的位置标记上(参见图3)。我们在每个输入之间等待了三分钟,以确保上一个输入的热痕完全衰减。每个参与者输入了每种类型的三个密码(即18个密码)。其顺序使用拉丁方来反平衡。
研究花了大约40分钟。我们视频记录了研究过程,以对输入时间的进行事后分析。在整个实验中,除手机温度外,我们还记录了参与者的优势手(即用于输入密码的手)的温度。实验在稳定于24℃的室温下进行。
为了分析热攻击,我们考虑了两个方法:(1)目视检查热迹和(2)使用我们的计算机视觉方法ThermalAnalyzer。分析由作者之一完成,其不知道而且从未看过输入密码列表。另外,反馈来自于热像仪的分析。早期使用ThermalAnalyzer,此作者报告了存储于csv文件中的包含所有可能组合的重新生成的PIN和图案。
图4:该图显示当衰减时间为0、30、60秒时输入的PIN(顶部)和图案(底部)导致的热迹。
为了评估针对PIN和图案的成功热攻击,我们测量了
1.成功率:热攻击成功显示整个密码的案例百分比。
2.Levenshtein距离:产生的猜测与正确密码之间的距离。
成功率和Levenshtein距离在前人研究中用以反映成功攻击率的高低程度(成功率)以及猜测与真实密码之间距离接近程度(Levenshtein距离)[16,29,47]。
我们目视检查了数据中的热图像样本(3名参与者)。但是,我们无法通过视觉恢复PIN的整个顺序,也不能恢复图案的方向。这在图1a中是显而易见的,图中识别3和6的顺序对于肉眼来说是具有挑战性的。另外,图案的起始点不是视觉上可以推导的(见图1e)。因此,我们只考虑了ThermalAnalyzer的PIN和图案。我们调查了三个独立变量的影响:(1)认证方案,(2)热痕年龄和(3)密码特性。在研究期间执行的任务通常需要26%至44%的CPU使用率。
由于我们有三个独立变量,我们使用三因素重复测量方差分析(如果球形度被破坏,则使用Greenhouse-Geisser校正)来分析数据。随后使用Bonferroni校正的t检验进行事后成对比较。
图5和图7显示了热痕迹和密码特性的每个年龄的成功率。另外,图6和图8示出了热痕迹和密码特性的每年龄的Levenshtein距离。结果表明,热攻击针对PIN比针对图案更成功。
图5:当热图像在前30秒内拍摄时,针对PIN的热攻击成功率明显较高。尽管通过多次触摸相同的数位引入了噪声,但是热攻击对具有重复数字的PIN表现良好。
图7:在认证后前30秒内拍摄分析用的热图像时,对图案的成功热攻击率明显较高。此外,对于具有重叠的图案,热成功攻击率明显较低。
图6:猜测PIN和正确PIN之间的平均Levenshtein距离和标准偏差。
图8:猜测图案与正确图案的平均Levenshtein距离和标准偏差。
总体而言,对PIN(M=0.62,SD=0.31)的热攻击比对图案(M=0.32,SD=0.16)的更成功。类似地,对PIN(M=0.856,SD=0.127)的Levenshtein比对图案(M=3.14,SD=0.28)的更短。我们发现密码类型对猜测和实际输入密码F1,17=91.923,p<0.001之间的levenshtein距离具有重要主影响。事后分析显示,与图案型密码(m=3.14,sd=0.28)相比,pin型密码(m=0.856,sd=0.127)之间存在显著差异(p<0.001)。这意味着,与图案及其猜测相比,pin及其猜测通常更接近原始真实密码。
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)