你的指纹还安全吗? - BlackHat 2015 黑帽大会总结 day 2

你的指纹还安全吗? 

 


speaker是来自FireEye的Wei Tao和Zhang Yulong。Talk首先介绍了指纹系统的原理以及实现,比如如何进行特征采集,如何对比特征等。

enter image description here

 

随后讲了2种架构,

一种是Fingerprint without TrustZone和Fingerprint with TrustZone。在root情况下without TrustZone是非常危险的,所有的数据都可以轻松获取到。但是在有了TrustZone的情况下,hacker在获取了root以后依然无法读取TrustZone中的指纹信息。如果想要获取指纹信息,理论上还需要破解TrustZone才行。

 

enter image description here

 

接着speaker介绍了四种攻击手段:

第一个攻击是confused attack(迷惑性攻击)。speaker提到fingerprint有两种用处,一种是authentication另一种authorization。就像是passport和visa。一个用来做身份验证,一个用来行使权力。Hacker可以采取一种迷惑性的攻击,让用户仅仅是觉得做身份验证,但实际上却行使了权利,比如说在demo中用户以为他在解锁手机屏幕,而实际上却使用指纹转了钱给黑客。

 

enter image description here

 

 

第二个攻击是不安全的数据存储。最经典的例子就是HTC one的指纹保存文件。对所有人都是可读可写的。毫无安全性可言。

 

enter image description here

 

 

 

enter image description here

 

 

第三个攻击是finger spy。

虽然TrustZone非常安全,但是android系统是通过应用层的service和TrustZone进行通讯的。因此hacker可以伪造一个finger print app,并且和finger print sensor进行通讯,从而窃取到用户的指纹。三星针对这个问题的解决方式是TrustZone UI。也就是当使用指纹进行授权的时候必须通过TrustZone UI来进行,因为TrustZone UI也是TrustZone的一部分,所以黑客必须要破解掉TrustZone才能获取到指纹。

enter image description here

 

 

第四个攻击是fingerprint backdoor。

用户在系统的设置中可以查看当前记录的指纹数量,但是这个数量信息并没有保存在TrustZone当中。因此hacker可以留下自己的指纹作为后门,并且将增加的指纹的数量减掉。比如说在demo中fingerprint service显示仅保存了一个指纹,但是demo中却成功的用三个指纹解锁了手机屏幕,因为其中两个指纹其实是黑客留下的,为了防止用户发现,黑客将保存的指纹数修改成了1。

PPT:

https://www.blackhat.com/docs/us-15/materials/us-15-Zhang-Fingerprints-On-Mobile-Devices-Abusing-And-Leaking.pdf
posted @ 2016-01-23 15:33  administrtor  阅读(277)  评论(0编辑  收藏  举报