南极熊导读:3D打印技术,已经出现多个破解密码识别系统的案例,从网络支付到门禁系统等。请有关行业引起重视。
与大多数生物识别系统一样,指纹锁可以提供足够的保护,防止恶意攻击,但也会被犯罪分子愚弄,获取隐藏在智能手机或账户中指纹的个人数据。使用生物识别数据进行身份验证并不新鲜,人脸识别、视网膜扫描和语音识别经常被用来替代密码。
在过去的几年里,3D打印技术使得任何人都有可能创建假指纹,并使用它们来获得未经授权的系统访问。2020年8月举行的DEFCON 2020网络安全会议上,Dreamlab技术公司的安全研究员、3D打印爱好者Yamila Levalle介绍了她如何仅用一台基于UV树脂的SLA 3D打印机和价值10美元的材料就能破解指纹识别。
生物识别系统容易受到不同的攻击,但Levalle选择专注于spoofs,即当传感器被愚弄而不是被替换或篡改时发生。据专家介绍,为了获得匹配,大多数指纹扫描仪使用复杂的算法来识别、测量和分析独特的特征,"类似于通过星星的相对位置来识别天空区域。" 首先,她选择尝试一些传统的方法来绕过传感器,例如使用橡皮糖和橡皮泥进行攻击,以了解3D打印技术如何使这些攻击变得更好、更快。
△Anycubic(纵维立方) Photon 3D打印机和树脂 (图片由Dreamlab Technologies/Yamila Levalle提供)
为了使用3D打印测试攻击,Levalle使用了她家中的Anycubic Photon 3D DLP/SLA打印机;UV树脂;数字增强潜伏指纹的软件;Tinkercad等3D CAD设计工具,以及玻璃中的潜伏指纹或纸中的指纹墨水。
获得指纹需要用具有微距功能的数码相机将潜伏指纹提取出来,然后,使用数字增强工具,如Python或任何一种图形软件,优化线条。一旦增强后的JPG文件被转换为SVG(Scalable Vector Graphics)文件,就可以导入到Tinkercad中,通过配置尺寸和脊高来创建指纹的3D模型。Levalle称,这是最重要的一步,确保指纹的长度和宽度是根据原始潜伏指纹的打印出来的,因为正确的脊高可以让假指纹在不同的传感器和扫描仪中工作。一般来说,人类脊高在20到60微米之间,所以对于这项特殊的研究来说,基于UV树脂的设备25微米的精度就可以完成这项工作。
最后,Levalle建议创建两个不同的3D模型,一个阴性或空心的用于铸造,一个阳性的用于直接测试。然后就可以去3D打印机上打印了。打印完成后,用异丙醇冲洗,然后用紫外线灯或阳光直射进行后固化。铸造手指时,3D打印的中空模具只需注入几滴液体乳胶或木胶(声称薄的假手指比厚的好用),干燥后它就会凝固成橡胶状。
△紫外后固化灯中的3D打印模具 (图片由Dreamlab Technologies/Yamila Levalle提供)
Levalle花了10次尝试才达到最佳的打印机设置和脊高。在她创造的两个方案中,用液态乳胶或木胶铸造的3D模具获得的指纹在所有四个传感器上都能工作,从三星S10智能手机中使用的最新超声波指纹扫描技术到老式的光学指纹传感器模型,不过这里她需要在假指纹上涂抹可可脂润唇膏或凡士林,传感器才能真正识别。另一方面,直接在UV树脂上3D打印的正片模型只能与超声波传感器和其中一个光学传感器一起工作,主要是由于树脂的硬度未能被识别为手指。
在采访中,Levalle说她花了半个小时的时间,3D打印了10个假指纹中的8个。"确定能绕过系统的准确脊高需要经过几次测试。由于我没有电子显微镜来测量手指的脊高,所以只能根据人类手指的平均脊高来推算。经过相当多的试验和错误,直到我得到了正确的结果。她说:"真正帮到我的是UV树脂打印机,如果使用FDM或丝材3D打印机就不可能做到这一点。”
△用液态乳胶和木胶铸造3D打印模具 (图片由Dreamlab Technologies/Yamila Levalle提供)
智能手机、笔记本电脑、扫描仪和其他设备中带有生物识别技术的漏洞,通常会吸引安全专家,他们已经发现了严重的隐私问题和犯罪分子入侵这些系统的方法。28年来,DEFCON作为世界上规模最大、历史最悠久的网络安全会议,聚集了网络安全领域的权威人士和创新者,为新兴技术所面临的威胁以及如何抵御这些威胁提供了无与伦比的视角。
Levalle的演讲强调了系统中的各种漏洞,这些漏洞在不同的市场中占据着主导地位,其中大部分似乎都在快速增长。预计到2023年,仅移动用户就有15亿人依赖生物识别安全,近60%的企业使用指纹扫描技术,很明显,生物识别认证只会增加,威胁也会增加。
"在经历了几次生物识别数据公司的信息泄露后,我觉得自己有动力去做这件事,并展示真正去攻击所需的步骤。在2019年的一次网络安全竞赛上,我目睹了一个团队成功地入侵了指纹传感器,但关于他们是如何做到的,并没有太多的信息,只是说他们在玻璃上拍了一张指纹照片,然后20分钟后,他们就有了一个假指纹。因此,我尝试在家里用自己的设备复制这种情况,并选择和我的同事一起发表了一份关于它的白皮书。"Levalle解释说。"这是改进生物识别安全性的好方法,这样就可以检测到用于欺骗攻击的假指纹。"
为了检测指纹系统的演示攻击,Levalle和一个研究团队建议分析样本的锐度、颜色和亮度水平、熵、结构失真、局部伪影、吸光率、材料弹性和水分含量。但是,即使扫描仪和安全专家在检测伪造的生物识别数据方面的装备越来越好,网络犯罪分子也将竭力制造更好的假货。
其实,这不是第一次将3D打印技术用于破解指纹识别系统。
2016年,美国密歇根州立大学(MSU)利用特殊的墨水和纸张2D打印出了假的指纹,成功骗(xi)过(shua)了三星Galaxy S6和华为荣耀7的指纹识别系统。而上个月(2016年10月),该校升级了这项实验 — 3D打印出了带有指纹的手模型,再次成功骗过了指纹扫描仪。
2017年,美国密歇根州立大学(MSU)的一支团队在研究中发现,他们通过3D打印技术做出带有指纹的逼真手指模型。
这些模型是通过向3D打印的模具中灌注硅胶和色素制成的,可通过各种指纹传感技术(电容式、接触式光学和非接触式光学)成像。有了它们的帮助,研究人员就可以不仅仅对指纹读取器进行可重复和可控的评估,而且实现对指纹读取器的互操作研究了。
2019年,一名 Reddit 网友(darkshark9)在尝试攻破 Galaxy S10 的指纹传感器后,向大家发出了安全警告,因其可被 3D 打印指模轻松骗过。事实证明,想要欺骗 Galaxy S10 的指纹传感器,不需要花费超过几分钟的时间。