Apple Pay 有可能被盗刷吗?
2019-07-10

Apple Pay 登陆中国,这幺简单就能付款,真是让人剁手的路上又少了一个障碍啊。根据尝鲜的朋友体验,用 Apple Pay 支付有一种「德芙」般丝滑的感觉。

咦,怎幺听起来怕怕的?既然付钱这幺简单,会不会存在安全隐忧呢?偷偷绑上别人的 Apple Pay,然后纵情享受土豪人生。这种人生梦想有没有可能实现呢?

Tim Cook

好吧,现在我们就来科普一下:偷偷盗用别人的 Apple Pay,总共分几步。

首先是背景知识:

    Apple Pay 的原理是把一张信用卡和一支手机硬体绑定。让 iPhone 成为这张信用卡的替身,让 Touch ID 成为信用卡密码的替身。Apple Pay 把用户的银行卡号经过加密转为一段代码,名为「Token」。这个 Token 存在专门的安全晶片上,和你的 Touch ID 是邻居。

现在,盗刷正式开始。

Token
Plan A

先从最简单的方法入手。是否可以透过木马病毒盗取他人手机上的卡号(Token)呢?以往,在苹果手机上安装恶意软体的事件时有发生,但是,不要认为在 iOS 上随便安装一款软体是一件容易的事,它需要对系统的多个漏洞进行联合利用。这种联合利用的最高形式就是 iOS 的越狱。中国越狱大神盘古团队的陈小波(DM557)曾对雷锋网表示,最近几年苹果的系统版本每进行一次大的迭代,都会增加一重安全机制,对漏洞的挖掘需要越来越强的技术实力。

所以,想要安装恶意软体,一般需要对方的 iPhone 处于越狱状态。但是这还远远不够,因为 Apple Pay 的卡号资讯是储存在安全晶片之中的。研究无线电安全的独角兽团队负责人杨卿告诉雷锋网:

iPhone 的安全晶片自身是一个体系,有独立的 iOS 和独立的储存区,所以即便获取了手机系统的控制权,也未必能介入到安全晶片之中去取数据。

NFC

▲ 图中亮处就是用于支付的安全晶片,它被放置在 NFC 晶片内。

也就是说,如果想要破解 Apple Pay,实际上要攻破两套系统:

    苹果的 iOS 系统内置安全晶片的系统

然而,iOS 安全研究团队涅槃的掌门人高雪峰告诉雷锋网一个悲伤的事实:攻破安全晶片,需要的是硬体级别的漏洞,而自从 iPhone 4 之后,全世界的骇客就没有在苹果手机上找到硬体级别的漏洞。

所以,想要用「飞龙探云手」把卡号偷出来的 Plan A 几乎宣告破灭。更让人洩气的是:由于卡号资讯是以 Token 的形式储存,即使拿到这串字符,也很难解密。

Apple Pay Token

▲ Apple Pay 的 Token 验证示意图,反正很複杂就是了。Plan B

看来拿到手机里的信用卡号非常难,那不如我们直接把朋友的信用卡偷来,绑定到我的 iPhone 上吧。你可能会问,既然拿到了别人的信用卡,我直接用信用卡消费不就可以了吗?其实并不是。在大多数情况下,信用卡消费是需要验证密码的。而在把信用卡和 iPhone 绑定的过程中,信用卡的密码是不需要的。只需要输入「卡号」「信用卡 CVV 码」和「绑定手机验证码」这 3 个隐私资讯。

前两个资讯在卡片上都可以找到。但是问题仍然很严重,这绑定手机的验证码却非常难得到。除非你同时拿到一个人相互匹配的手机和信用卡,才可以成功把这张卡和你 自己的 iPhone 绑定。想必能让你这幺做的,只有你的老公或老婆吧。与其这幺麻烦,还不如抓住他的衣服,逼他付帐来得痛快。

Back of Your Credit Card

▲ 信用卡背面的这 3 个数字就是 CVV 码。Plan C

以上计画都不成功,看来我们需要使出最后的杀手锏——把别人的 iPhone 偷到手。这样的计画也适用于你捡到一支 iPhone。

用捡到的 iPhone 去超市买东西,同样会遇到一个致命的问题:即使只花一分钱,也需要手机主人的指纹。这个指纹其实就存在手机里,而你就是没办法拿到它。 指纹资讯储存于苹果引以为傲的安全晶片中,多年以来骇客们多次尝试攻破安全晶片,结论是:想要拿到安全晶片里的资讯,对一般骇客来说代价高到不用尝试。有人做了如下有趣的比方:

iPhone 的 CPU 里住了很多工人,他们共同计算和处理用户给予的任务,但指纹、密码等资讯却是由一个哑巴工人来看管。当用户在支付时,其他工人就需要对指纹资讯进行辨识比对,这时候只能去问哑巴工人,但由于他不会说话, 只能用摇头或点头来表示「是」与「否」。所以想要让哑巴告诉你他看守的指纹究竟是什幺,简直比登天还难。

在骇客找到破解 Touch ID 的办法之前,你只能望机兴叹。

 

Plan D

你都已经拿到了别人的 iPhone,还是没办法用他的钱愉快地购物,这个事实还真让人沮丧。不过,让我们把自己想像得再幸运一些,你捡到一个没有设置 Touch ID 的 iPhone。这个时候使用 Apple Pay 的话,就会要求你输入信用卡的支付密码。至于怎幺搞到这张卡的密码,就是另一个故事了。

其实在这种情况下,还有一种「贼不走空」的解决方案:你不妨去找找手机里的微信支付和支付宝。因为大多数的微信支付和支付宝都是小额免密码的,这也算是对手机主人不设置 Touch ID 这种行为的小小惩罚吧。

Barcode
结论

说了这幺多,其实没有一个完美的盗刷计画,可以看出苹果在 Apple Pay 的安全方面,确实是花了心思的。

Apple Pay 推出这幺久,还没有骇客对它成功破解。而对于 Apple Pay 在中国的落地,相对脆弱的部分应该是苹果手机和银联、银行之间的支付协议。目前中国的众多安全团队正在开足马力,对 Apple Pay 的支付协议进行代码层面的分析,相信不久就会有详细的分析报告出炉。

fingerprint