纵观国内市场,在2010年-2015年间,我国人脸识别市场规模的平均复合增长率为15.9%,同一时期,我国市场规模约占全球人脸识别市场规模的10%。相比较于我国人口及城市规模的占比,虽然人脸识别市场的这个数值占比略微偏低,但随着我国人脸识别技术的越发先进,我国人脸识别市场将迎来爆发。但是2017年央视3·15晚会曝光人脸识别技术存在安全漏洞,在现场的测试中,可以使用软件后期修改人脸图片进行脸部识别,从而绕过网络实名认证系统。这让小编想到在此之前安全研究员在FIT互联网安全创新大会上展示的5种方法破解手法。
一人,一车,一司机,故事还得从一次“网约黑车”的经历说起 。
“车到了,可疑的是,接我的司机、车的信息,与手机客户端上显示的完全不符,但为了赶紧回家,我顾不了太多便上了车,结果司机开了不到一分钟,就回头对我说:“我要取消订单了,等会儿你直接给我钱就行 ”,在我的一再拒绝下,司机说可以把我送回原处,让我重新打个出租车回去。”
“结果当我再次用该约车软件打车,发现来接我的居然还是那个司机!司机说:“你要么就打个出租车回去,只要你还用这个软件约车,打到的还是我的车!”当时我就纳闷了,为什么还是你的车?why?”
“原来,附近有个由30多个黑车司机组成的车队,每个司机都有一堆虚假的司机账号,上百个账号由同一个人来统一接单,然后通过电台调度车辆去接人,因此不管你打到哪个号,都会调我去接人,而且就算是别人去接你,也是一样的流程。”
“于是我感到奇怪,这个 打车APP 上明明使用了人脸识别功能来验证司机信息,为什么这些司机可以继续使用虚假账号?经过一顿软磨硬泡,司机终于透露,虽然人脸识别听起来很牛逼,但是他们有软件可以轻易破解。”
“没错,人脸识别技术就这么被一群黑车师傅给黑了。”
以上故事是在 FIT 2017 互联网安全创新大会上,安全研究员高小厨(高亭宇)在一场“关于人脸识别技术应用风险”主题演讲中的一段描述。说完他便现场展示了那个司机用来破解人脸识别技术的软件,一个可以让照片“张口说话”的APP。
请注意两张照片的嘴部
高小厨说,从那之后他开始琢磨人脸识别技术在实际应用层面的风险,并调研了市面上使用了人脸识别技术的软件,最后的结果出乎自己的预料。
花式破解人脸识别技术
通过分析,他发现市面上大部分使用了人脸识别技术的软件,其识别流程均大致如下:
检测人脸 → 活体检测 → 人脸对比(和之前上传的自拍照或证件照)→ 分析对比结果 → 返回结果(通过或不通过)
据了解,其中活体检测技术即在人脸识别时要求用户进行眨眼、点头、张嘴等动作,以防止静态图像破解,国内多个知名APP中的人脸识别都采用了该项技术。
高小厨表示,一般的APP开发者不会自己开发人脸识别技术,而是通过第三方的API接口或SDK组件来获得人脸识别功能,基于这个特点,他对人脸识别技术从接入到实际使用过程中的每个关键点进行了分析,最终在多个环节都找到了多个突破点,只要略施小计,就能让人脸识别形同虚设。
1.注入应用绕过活体检测
高小厨首先在现场演示了通过注入应用的方式来篡改程序,从而绕过所谓的活体检测功能,使用一张静态照片就可以通过人脸识别。
在注入过程中,他首先在程序中布置一个了断点,通过不断演示人脸识别流程来触发该断点,然后分析并修改程序储存的值,来达到最终的绕过活体检测的效果。
除了注入应用之外,他还发现可以通过查看当前APP的数据结构,修改入参字典来篡改活体检测完成后的图片,从而达到活体检测由任意一个人完成都可以通过的效果,这样他同样可以拿着被攻击者的照片来通过静态人脸识别,然后自己眨眼抬头来破解活体检测。
2.视频攻击绕过活体检测
如果说前面的方法需要一些技术门槛,那这个方法就可以适用于所有小白用户,只需要安装一个能够将人脸照片制作成视频的手机软件,然后在朋友圈、个人空间等地方找到对方的一张正面照片(这个应该不难),输入到软件中,就可以令其开口说话,所谓的活体检测也就不攻自破。