三星 Galaxy S10 现指纹识别漏洞,到底怎么了?
华为的降分辨率一事逐渐消停了下来,原以为手机圈可以清静一段时间了,没想到另一个国际一线品牌的产品又出了新的事情,闹得沸沸扬扬。
是的,如标题所说,三星旗下的 Galaxy S10 等产品出现了指纹识别上的漏洞。今天下午,在知乎上和三星这起事件相关的问题就吸引来了不少网友讨论,而到了晚上这一问题是直接冲上热榜了。
起初笔者认为这是一个不大不小的问题,毕竟 Galaxy S10 使用的屏幕指纹和我们看到的市面上大多数国产手机使用的屏幕指纹是不同的,但没想到的是这个事情激起的舆论反应居然这么大。
所以今年的文章我们就来看看三星 Galaxy S10 爆出的这个指纹识别漏洞到底是什么,它到底是不是真的像媒体所说一样是一个很严重的漏洞。这一起事件的源头是国外一对夫妻放出的一个视频,在视频中三星 Galaxy S10 的指纹识别功能出现了异常。
视频中,该对夫妻的 Galaxy S10 是新买的,没有质量问题,他们买来之后使用了一种「前后都包裹」的透明手机壳来对手机进行一个保护。他们之后进行了初始化设置,录入了指纹。
这个时候,奇怪的事情发生了。
这部手机明明录制的是他妻子的指纹信息,但是他本人却能够直接对指纹进行解锁,进入相应的银行 App,对银行 App 进行操作等。
显然,指纹识别出现了什么问题导致它的安全性失效了。由于三星有 Note 7 这款产品的「前科」,同时 Google 刚刚发布的 Pixel 4 又是爆出了人脸识别解锁不够安全的问题,这个视频刚好在这个大家对这方面问题比较敏感的时候放了出来,于是瞬间舆论的聚光灯就照到了这个视频上。
之后,三星官方通过公告承认他们的产品在指纹识别方面确实存在问题,涉及到的产品有 Galaxy S10、Galaxy Note 10 以及 Tab S6。国内的一些银行和金融机构在看到了三星官方的公告之后,为了防控风险,他们有针对性的对这几款设备指纹识别登录、指纹支付等功能做了屏蔽,微信、支付宝、中国银行等都做了对应的措施。
因为这一问题引起了很多金融机构的反应,所以在国内这一事情也是掀起了一波舆论,所以今天下午,这个问题的关注度也是逐渐高了起来。
想要知道三星这一次指纹识别漏洞到底是个什么情况,我们还需要从指纹识别元器件本身谈起。
在大多数国产手机上,我们见到的屏幕指纹基本上是光学屏幕指纹,元器件多来自于汇顶这样的芯片供应商。而 Galaxy S10 使用的则是来自高通的解决方案,这个解决方案并非是基于光学器件来采集用户的指纹信息,而是通过超声波来对用户的指纹进行扫描。
高通其实在很早就已经推出了基于超声波实现的指纹识别组件,在当时小米和乐视甚至是抢着用这个新鲜的组件。然而,在当时这一方案相较于业内广泛使用的电容式指纹识别来说体验更差,所以后续厂商都没有再使用高通的超声波解决方案。
尽管没有得到手机厂商们的大力支持,高通仍然没有放弃对超声波指纹识别的研发,经过高通的努力,他们实现了让超声波拥有穿透屏幕和玻璃来扫描用户指纹的能力。
在他们发布高通骁龙 855 的同时,他们一并发布了升级过的、能够置于屏幕屏幕下方通过超声波获取用户指纹信息的「3D Sonic Sensor」,也就是高通自研的超声波屏幕指纹传感器。
虽然相较于传统的电容式指纹识别,超声波指纹识别没有什么明显的优势,体验反而还更差,但是在屏幕指纹时代,超声波指纹迎来了自己的又一春。超声波屏幕指纹相较于光学屏幕指纹有两大优点,第一是超声波能够穿透液体,所以湿手也能解锁;第二是光学屏幕指纹获取到的是用户指纹的「图像」,而超声波屏幕指纹获取到的是用户手指上的「深度信息」,相较而言安全性方面超声波屏幕指纹要更胜一筹。
可能是出于安全性方面的考量,三星使用了来自高通的解决方案,据悉苹果后续也有可能在 iPhone 上引入高通的屏幕指纹元件,这更加表明了在安全性上高通这一套解决方案是得到了业内普遍认可的。
然而,这一次的事情却偏偏出在了安全性上,难道超声波指纹识别有什么未知的问题吗?
实际上,高通提供的解决方案并没有什么问题,并不是说指纹识别这个功能被银行以及金融机构停用,就意味着超声波指纹识别有致命缺陷,至少就目前事情的发展来看还不存在这样的问题。
银行和金融机构是为了保证用户数据的安全,避免风险,所以选择禁用了功能,这是对客户负责任的表现,毕竟三星面向全球发了公告表示存在问题,而且在那一对外国夫妻的视频中也有提到这会带来金融安全问题,禁用指纹识别登录、指纹识别支付功能合情合理。
银行毕竟是银行,他们不可能有高通懂超声波指纹识别,也固然没有三星懂手机制造,所以禁用功能只是大势所趋而已,很多网友就此展开了不必要的联想,以此为据说明这个东西就是不安全已经不能用了,其实实际上问题没有这么严重。
笔者个人认为问题既出在软件层面,也和超声波指纹识别的原理有关。微博上一些 KOL 说的并不是错话,指纹识别都没有活体检测。不论是国产手机用得很多的光学屏幕指纹还是三星 Galaxy S10 等设备上用的超声波屏幕指纹,它们都不知道用户放上来的到底是自己的手指还是其他什么东西。
所以在录入指纹的时候,以那一对夫妻的视频为例,因为手机本身套上了一个硅胶套,因为没有活体检测的原因,加上三星算法上写得很粗糙没有针对这样的场景进行判别,导致指纹传感器录入进去的实际上可能是硅胶套的深度信息,后续的解锁只是将存储的信息和新的信息做比对,而新的信息不论用什么手指都是硅胶套的,进而造成了任意手指隔着这个硅胶套都能解锁。
这是一个那一对夫妻拍摄的视频中指纹传感器出现异常的一个解释,微博上不少 KOL 就搬出来了这一套说法。仔细思考之后笔者个人认为这个解释能说过去,但是技术上是否合理还值得深究。
不过这个异常确实可以归结为「使用不正确」,毕竟三星刚发布 Galaxy S10 时就有强调过保护壳、保护膜的问题,在套着这样保护壳的情况下指纹识别是可能会异常甚至不工作的,较厚的钢化膜也同理,毕竟在高通这个解决方案中超声波的穿透力有限。
其实在光学屏幕指纹上,这种「不正常的指纹录入」也会引发问题,例如用纸、布料遮盖识别区域进行录入,指纹识别元件录入的实际上是纸或者布料的纹理图像,通过同样的纸或布料不论是什么手指都能解锁。不过正常的用户不会这么用,所以这不算是问题,同理,对于超声波指纹识别,「不正常录入」下出现异常也是必然的,这是一个很小的问题。
很多 KOL 通过这样的对比搅浑水,试图把问题归结于录入,但是在笔者看来,如果只是不正常录入导致的问题,三星不可能成为众矢之的,事情必然是另有蹊跷。
实际上,随着事情已经越闹越大,有媒体和一些网友拿着手上的机子做起了更加广泛的测试,他们发现,哪怕是正常录入指纹,隔着一个硅胶套,手机也能够被其他指纹数据不在系统内的手指解锁。
这一个新发现使得网友们开始否定上面这一套「异常录入」的说法,有越来越多的网友开始用自己手上的机器尝试复现。然而很多网友复现失败了,只有很少数的网友复现成功。
对于为什么隔着一个硅胶套就能用其他手指解锁,目前还没有人通过做充分的实验给我们一个能让人信服的结论。这个现象出现的原因,不论是微博还是知乎目前都是众说纷纭。
有人说是「残迹遗留」的问题,这是一个光学屏幕指纹识别很早就存在的安全问题。
当时是腾讯的安全团队在一次公开的黑客大会(GeekPwn 2018)上展示的利用残迹对光学屏幕指纹识别进行破解。在人通过正常方式解锁手机之后,手指一般都会在屏幕上留下一个指纹油迹(即所谓的残迹),这个时候最简单的办法是直接在上面盖上一块不透明的白色塑料片,手机的背光打在塑料片上,残迹有塑料片作为背景,在手机的打光下它对传感器来说是清晰可见的,传感器会读取到这个残迹,从而解锁手机。
由于用光学屏幕指纹的产品在当时也并不少,这个问题会影响到很多的手机,而且也会对支付等带来很大的威胁。然而这个问题爆出之后并没有引起三星这一次这么广泛的关注。
只能说这一次是三星是破鼓万人捶,虽然锅是三星的,三星也主动背了,但是在国内,舆论上三星肯定也是被带了节奏。当然,这个节奏和手机厂商没有关系,有网友嫁祸给华为,让人难以理解,这背后其实无非就是媒体想要赚眼球攫取流量罢了,知乎上有一些人想要蹭热度骗赞罢了。
不论是微博和知乎,都有人在带节奏、搅浑水,然后引来很多网友掺和,把事件热度推得越来越高。
笔者很不理解的是,很多网友根本不知道光学屏幕指纹识别和超声波指纹识别是怎么工作的,也对这二者的安全性没有一个大致的认识,但是却在网络上很激动、很兴奋地就这个问题论这论那,人云亦云,跟着来一顿「流星锤」。
这样的风气让笔者感觉特别不适,和华为相关产品大多数人都沸腾一样。对于这样一个问题,在知乎这样的社区居然也没有人静下心来做实验、讨论相关的技术问题,复制粘贴的言论、撕逼、带节奏、扣帽子等等倒是随处可见。只能说现在的网友们真的很浮躁,而且时间有多。
对这些隔着硅胶套解锁的所谓「实锤视频」,笔者要表示一下质疑。
超声波识别同样会遇到「残迹问题」,三星显然没有在算法上做规避,导致这样的情况可以被很小概率地复现。这里的重点在「小概率」,笔者看了一圈,能够复现这个情况的人是占极少数的。在笔者的看法中,「小概率」是佐证是「残迹问题」导致异常的一个关键点,具体咱们下面会提到。
当然,这并非是笔者胡乱捏造出来的一个问题成因,从拍摄所谓「实锤视频」的 B 站 UP 主 @Forever_lyx 的评论来看,成因是「残迹问题」的概率应该是比较大的。
网络上也有其他的一些说法,例如三星为了提升指纹识别的体验,故意减少了信息比对过程中的检测率,导致错误指纹识别后不予通过,但是隔着硅胶壳这样的干扰物识别却给通过了。
这样的说法不是没有道理,但是如果我们仔细思考一下,如果三星真的为了提升指纹识别的体验这么做了,那么理论上能够复现的网友应该在大多数,而不是极少数,这个说法对应的情况和显示相悖,笔者目前是不太支持这样的说法。
还有一个说法是,三星可能为了优化体验,会在用户解锁正确的过程中对指纹信息进行强化,增强后面的识别准确率和速度。而测试的过程中 UP 主 @Forever_lyx 也有提到,只有第一次隔着壳解锁,后面才可以任意解锁。
确实这有可能是三星在强化指纹信息过程中把干扰物的信息学习、整合进去了,由于很多网友测试并没有清空指纹重新录入,所以这个说法有一定可能成立。但是,@Forever_lyx 有提到,壳的位置不能乱移动,如果是数据中混入了或者覆盖了手机壳的信息,理论上只要是壳,应该都能够触发任意手指解锁,不应该是只有「壳的某一固定部分」才行。
所以综合下来,笔者还是倾向于「残迹问题」的说法。
不过不论最终这个漏洞背后的成因是怎么样的,至少有一点是没错的,三星写的算法有问题。硬件没问题、Android 没问题,有问题的是三星自己的算法。
既然是算法问题,三星和之前国内手机厂商面对一个白色塑料片就能破解光学屏幕指纹识别的时候一样,通过 OTA 做优化和问题的规避就可以了,现在正在使用三星这些产品的朋友需要做的就是等待。
由于现在水实在是被搅得很浑,事态也在不断变化,所以笔者在此有必要做个声明。空格本人和三星及三星产品、三星用户无任何利益关系,非三星粉丝,全篇仅本人撰文之时的主观观点,不存在洗地成分。
需要明确告诉大家的是,指纹识别并非是绝对安全的,尤其是屏幕指纹,其安全性相较于传统的电容式指纹要低一大截,光学屏幕指纹在理论上安全性是比较低的。
就手机安全这个问题,不要过度信赖不支持活体检测的生物识别,指纹识别就属于这一类。尤其是在有的厂商算法上还可能做得不太理想的或者只是做做「表面工作」的情况下,安全性其实没有你想象得那么强。