纳金网

标题: AI时代没有绝对安全:百度神秘实验室分分钟破解生物识别 [打印本页]

作者: 铁锹    时间: 2018-1-31 08:38
标题: AI时代没有绝对安全:百度神秘实验室分分钟破解生物识别
「指纹识别、虹膜识别、人脸识别、静脉识别…嗯,都能被分分钟破解。」
当百度安全实验室(X-lab)研究员小灰灰(化名,某于某些原因不可泄露姓名)坐在我们面前,用各种常见工具将上述具备高防伪性的身份验证方式依次「解锁」后,这个场景简直不要跟一部黑客电影的主旨太过贴合:
《我是谁:没有绝对安全的系统》。
viz25hoc9fsfinhx!1200.jpg
这部为数不多的计算机专业知识不被吐槽的黑客电影,除了情节烧脑,还有一个从头到尾都在强调的安全理念:
「安全,大家都想要安全,但世界上根本就没有所谓的安全。」
我们不会否认,高稳定性、非侵犯性与准确性的确是生物识别技术在系统安全认证方面具备的优势,但仍然阻挡不了黑客轻松篡改算法模型内部数据,甚至用一些外行都够得着的方式黑进你的手机或电脑。
作为一名安全工程师,或者说是一个黑客领域的白帽子,小灰灰经常做的事更像是一种 pen test(penetration test 的简写),也就是「渗透性测试」。
在黑客界,这种测试被看做是一种良性入侵。通常情况下,工程师要扮演攻击性角色,主动侵入公司系统,以便发现其安全方面的脆弱点。
因此,在实验室拆解了大量硬件,把厂商技术扒了个底朝天后,他发现,只要你想越过生物识别系统,基本没什么障碍,而且方法非常简单。
当然,这里面除了有厂商夸大宣传的因素在里面,还有这些技术本身难以逾越的问题。
「经过我们研究测试,常见的生物特征识都存在易于获取,易于伪造的风险,长远来看风险很大,不如密码安全。」
j41u6dctdqftg878!1200.jpg
为了能够让用户充分了解生物识别身份验证方式的安全漏洞,从指纹识别再到当下听起来比较炫酷的「静脉识别」,我们将依次还原小灰灰的「破解现场」。
首先,我们要明确一种破解思路:
不需要想方设法找到第二份生物体征,很明显,你的指纹或者眼球绝对是独一无二的。
但是,我们可以控制传感器「看到」的内容。
因此,我们只要得到目标正确通过时的特征内容(甚至不是全部),然后用更加简单的介质(一张纸或者塑料泡沫)呈现出传感器认为的正确的样子。
「实际上你会失望,因为破解的方法一点都酷炫,甚至根本没啥技术含量。但是最简单的方式,往往是最有效的。」
指纹识别:
很遗憾,小灰灰发现,目前除了人脸识别有活体检测,其他生物识别方式根本就没有活体检测的「二度验证」。因此,如果不设立多重验证方法(譬如密码+人脸),破解完全是分分钟的事情。
而指纹识别,就是最容易绕过的单一验证形式。
目前,指纹识别主要有两种类型:光学式指纹识别与电容式指纹识别。
举个例子,如果你公司安装的是光学指纹门禁设备,那么当你的手指按压到透明板上时,内部光学发射装置会发射光线到手指上,将手指纹理折射到另一侧的镜头中以获取数据,并对比资料库看是否一致。
bt9koo6ymhhixpkv!1200 - 副本.jpg
换句话说,就是利用指纹的凹凸,在手指滑过平板时接通或断开两个间隔电容的电流,根据不同的放电率以检测指纹资料。
k9cjxj2blsrhc924!1200 - 副本.jpg
在将指纹转化为计算机可以读取的数据过程中,我们需要将这些既有噪点又有间断的指纹图像,经过一系列算法,变成均匀的容易被计算机识别的图像。
而「决定你是否是这个人」的,其实就是那些特征点——「间断点」与「交叉点」(确定相对坐标后把其他信息删掉),并不需要一份完整的生物信息数据。
通俗点讲,就像古代挂在公告栏里的通缉犯画像,通常都是突出这个人最特别的地方,譬如下巴有两颗痣,而不必把这个人花的栩栩如生。
接下来就是关键的「绕过方法」了:
如果你看过 007 等谍战电影,里面各种盗取指纹的方法并非空穴来风。而目前,指纹模具制作已经非常简单,甚至有关「驾校打卡的电容硅胶」都在淘宝发展成了一项不错的买卖。
bnzbflthocwykmd8!1200 - 副本.jpg
先获取指纹图像——指纹到处都有。如果你正在看手机,请对着灯光看一下你的手机屏幕上有多少指纹;另外,如果你的指纹留在了光学传感器上,撒一些面粉,指纹清晰可见。
ag2jexaal4irdehl!1200 - 副本.jpg
那么如何制作出假指纹?
根据成像原理,复制品必须实现凹凸,小灰灰所在的实验室测试了大量成型方案,但是无论是 3D 打印,还是激光雕刻,但这些机械传动的方式精度都不够。
但最后,研究员们受到光敏刻章的启发,采取了光敏成型的方法,达到了在短时间内制作出高精度的指纹模具。
但这种主要针对光学指纹传感器,针对电容设备还需要涂上一层特殊的东西,做一些导电特性的处理。
就在我们面前,小灰灰按照这一系列步骤,轻松解锁了几部手机。
「我们统计测试发现,每个人录入指纹的手机大多是拇指与食指,如果这两个手指信息泄露了,基本指纹是被跟你说拜拜了。」
而更大的陷阱还在指纹识别的后面。小灰灰发现,市面上大多手机吹嘘的「指纹+活体识别」,后者基本不存在。
他们检测了 10 余款手机,均可仅用指纹就通过验证。
虹膜识别:
人的虹膜在胎儿发育阶段形成后,整个生命历程中将是保持不变的,因此也决定了身份识别的唯一性。
但是,获取虹膜的方式却十分简单——「距离 10 米内,拿单反长焦镜头(可以捕捉红外的)聚焦光束拍摄。」
在讲解如何伪造虹膜复制品前,我们需要了解一下虹膜识别验证的过程:
以一款市面上的虹膜识别仪为例,首先由设备上的 LED 灯发出红外光照射眼球,然后再由红外摄像头捕捉虹膜图像,继而利用算法进行定位和预处理。
而最后一步跟指纹识别一样,进行归一化、关键点抽取,并与数据库信息进行比对。
v4ld5tpglcscngem!1200 - 副本.jpg
需要注意的是,红外线是人眼是看不到的,但是电子设备却非常容易探测到。
(相机其实都可以捕捉红外,但因为红外光对照片效果产生影响,因此市面很多相机「封印」了这个功能。)
在通过对某款虹膜识别仪进行拆解分析后,小灰灰拿到了它的识别图像——确实是一张红外光照射下的图像。
zk6e9tsxw682kc0f!1200 - 副本.jpg

*接下来,就需要去找合适的纸,来「伪造」传感器能够识别的虹膜复制品。
最后他们发现,激光黑白打印机碳粉对近红外吸收效果比较好。
也就是说,利用激光黑白打印机打印出来的高清虹膜照片,与传感器中识别出的虹膜成像效果较为一致。
按照这个方法,他们又在实验后解锁了一款具备虹膜识别功能的手机。这个结果直接粉碎了「由于虹膜是生物特征,在照片或者视频上不能解锁」的专家说辞。
而且,即便有硬件在虹膜识别的过程中加入了「活体检测」,譬如眼球微动、瞳孔缩放,他们也能轻易绕过,通过认证。
「大多用虹膜识别的硬件,根本没有活体检测,而有也可以绕过。让眼球微动,你抖抖这张纸;想让瞳孔缩放,你维稳拉进拉远一些。」
但实际上,虹膜识别的破解过程并没有让他们觉得这项技术不靠谱,而是太多问题出在了厂商身上,「由于成本以及意识不足等原因,这项技术还没有达到足够高的安全等级」。
指静脉识别:
无论是最近国内开始使用的指静脉社保养老金身份认证系统,还是日本流行的指静脉取款机,都是基于指静脉识别技术。
而指静脉识别的过程,红外光照射又是一个不可缺的元素。
在红外线的照射下,血管中的血红蛋白对近红外光更容易吸收,其颜色逐渐加深,而手指肌肉、骨骼和其他部分都被弱化,最终静脉就显现了出来,被红外摄像头捕获。
6rriea0gpcvw7csr!1200 - 副本.jpg
之后的步骤跟其他生物识别差不多,静脉的特征值被提取并存储后,再通过与资料库信息进行比对进行身份鉴证。
值得注意的是,相关专家曾多次强调,这种技术本身就是一种活体识别技术,主要依靠红外光照射手指取得血管纹路,是靠血液流动形成的一种活体密码。
「脱离人体后这种特征就会消失,很难被窃取,因为血液流动很关键?这些话国内一家做指静脉仪器的知名厂商某销售跟我说的。但是我们又拆了昂贵的机子,发现根本不是那回事儿。」小灰灰吐槽。
拆解后他们发现,检测结构非常简单,根本就没有「检测血液流动的东西」,成本就几十块钱。
在放置手指的平板上,前后检测导电性的两个点,被厂商美名其曰为「活体感应」,其实就是一个手指放上去的信号。
「用两只手分别按着点,也可以触发信号,这种所谓的活体检测根本就不奏效。」
传感器要看什么,他们就伪造什么。小灰灰再次利用不同介质在红外线下反复测试,欺骗过了某厂商的静脉识别身份验证设备。


* 8fesga4goo9iahlk!1200 - 副本.jpg
「我们最后找到了一种高透的白纸,然后用一定亮度的 LED 红外光辅助,出来的图像与实物在传感器中的呈像非常接近。」
人脸识别:
如果你看过 2017 年的 315晚会,就应该知道人脸识别身份验证由于存在明显的安全漏洞,已经被拉出来大范围批斗过了:
根据当时的演示,利用一张静态照,只要通过一定的图像处理和动态合成技术,就能够顺利通过人脸识别验证,登录个人账户。
i9uif5p0x6f5vwdc!1200 - 副本.jpg

*目前,市面上大多数人脸识别技术通常使用「68 特征点」来标注人脸特征,譬如左眼、鼻梁等重要部位的相对坐标。
因此,如果是一般手机或是简单的人脸门禁验证设备,单靠摄像头拍一张照片都可以通过验证。因为这张纸上的人脸具备了 68 特征点。
z0cvjfp5pfzxrfod!1200 - 副本.jpg

*但是,人脸识别却是运用最多活体检测的生物识别方式。
换句话说,如果有充分的活体检测屏障加以辅助,它的安全系数可以明显高于其他三种。
「其实三星这款手机就有活体识别,正常单靠一张照片是过不了的,不过有时候在弱光下,活体检测还是可以通过的。」
而支付环境的活体检测就更多了(大概被鞭尸太多次)。
一些大厂为了判定采集到的人脸是活体信息而不是照片伪造、视频伪造或者其他软件模拟生成的,会采用 N 多种方式反复检测,而且方法还在不断进化。
譬如,他们会通过判断人脸图像的变形程度与「头部微动」(正面鼻梁相对坐标与侧面鼻梁相对坐标的差异值)来检测是否为静态图像;
此外,「判断屏幕是否反光」以及「摩尔文」等等验证方式也被用在了支付宝等金融交易平台上。
「当然,眨眼睛等动态检测也有。支付宝还有百度钱包的人脸识别检测做的还是不错的,另外 Face++的技术也不错。」小灰灰说。
而苹果的 Face ID 比较特殊。它是目前唯一采集人脸三维信息的识别技术,也是目前最为复杂的人脸检测。
iPhoneX 内置景深感知摄像机,其红外线发射器可以发射 3 万个密集侦测点(投射光),利用神经引擎将反射回来的数据与储存在 A11 芯片隔区内的数据进行对比,将用户面部形成 3D 图像后进行读取与处理。
「譬如你的头在摆动,它会在你的面部生成无数小点点,这些小点点与摄像头的距离都是不同的,每个点都是由 3 个数值组成的坐标,由此形成一幅 3D 图像,就像一个凹凸的面具一样。」
umpt2jek4agyya0a!1200 - 副本.jpg

*「关于 FaceID 的破解方法,我们还在研究中,已经有一些门路了,安全问题肯定是有的,因为它本质上还是由 2D 信息组成的,但总的说安全级别已经非常高的。」
那么如何获取一个人脸的 3D 信息呢?一台相机,或者一段个人视频就可以完成任务。
「从人脸的各个不同角度拍 N 张照片,是完全可以重建 3D 图像的;
另外,一段视频,譬如你一个回眸的动作,也可以被拿来建立 3D 模型。你看,这个小熊我拍了十几张照片,就完成了它的 3D 图像重建。」
makeb1zbkt6liigq!1200 - 副本.jpg
以上 4 种生物识别验证技术的漏洞都讲完了。
这个时候,让我们反过来想一下,这些生物识别技术标榜的「唯一性」,是否也会变成保证系统具备长久安全性的短板?
「不像密码,被人破解你还可以换个更长更复杂的;既然你的脸和眼睛都是唯一的,被人破解了,你还能去整容和抠眼睛吗?」小灰灰开了个玩笑。
因此,他认为提高安全系数的最有效方法应该就是设立多重屏障,在一些特殊环境采用复合式身份验证方式。
「一种可以轻易破解,但是把这些方法融合起来,却大大提高了破解成本。
当然,融合的方式也需要继续探索,并不是简单的叠加。」
yg49emy9n7b00n1v!1200 - 副本.jpg

*总之,以上 4 种识别技术单一存在的商用硬件,破解难度不高,风险和成本都很低,甚至不是什么高质量攻击手段。
一个摄影爱好者,或许就能完全搞定这些事情。
听起来,似乎不太符合计算机世界里,黑客常常利用技术来进行高智商「犯罪」的形象。
然而,就在电影《我是谁》里,Clay 团队攻破德国情报局的突破口,恰恰是他们跟踪垃圾车,在垃圾场内翻找到情报局某办公室主任的贺卡,匿名发送钓鱼邮件才得以攻入内部系统。
而传奇黑客凯文·米特尼克,也在改邪归正后,常常偷门禁卡闯入各大公司进行pen test。
mbk8gl0hhmegnhsp!1200 - 副本.jpg

*大概还是应了那句台词:
所有黑客手段中最有效的是社交工程学;人类,才是最大的安全漏洞。
因此,友情提示:在输入密码时,小心角落那些摄像头;而在看这篇文章的时候,也请小心你笔记本电脑屏幕上方的那个摄像头。
编者按:本文来自公众号“机器之能”(ID:almosthuman2017),撰文 | 宇多田;via36氪。






欢迎光临 纳金网 (http://old.narkii.com/club/) Powered by Discuz! X2.5