近期,一位安全公司的研究人员发现了现在ATM机中NFC功能的漏洞,利用这个漏洞,可以修改交易金额,甚至可以让ATM直接吐钱。
你有多久没去ATM取过钱了?
由于移动支付的诞生,中国民众现在出门很少带现金了,为了跟上“移动化”的潮流,银行的ATM机经过不断升级已经有了NFC、无卡取款甚至是刷脸取款。
从诞生之初,ATM就一直被不法分子觊觎,毕竟ATM里面有大量现金,附近还无人值守,是一个天然吸引犯罪的地方。
一般来说,银行在考虑到ATM存在被抢风险的情况下,都会把ATM机建造的很坚固,但是依然有人选择“硬来”;
当然,也有人选择智取。近期,一位安全公司的研究人员发现了现在ATM机中NFC功能的漏洞,利用这个漏洞,可以修改交易金额,甚至可以让ATM直接吐钱。
安全顾问入侵ATM机多,修改金额只需一部手机
安全公司IOActive的研究员和顾问何塞普·罗德里格斯(Josep Rodriguez)去年开始一直在挖掘和报告所谓的NFC芯片的漏洞,这些芯片被用于全球数百万台ATM机。
在ATM机上,NFC功能可以让你在ATM机上挥动银行卡,而不是刷卡或插入银行卡,从而进行支付或从提款机中取钱。
为此,罗德里格斯开发了一个Android应用程序,可以让他的智能手机模仿银行卡的NFC通信功能,并利用NFC系统固件中的缺陷入侵ATM机或者销售点终端。
也就是说,仅仅利用一部智能手机,罗德里格斯就可以侵入ATM机或者销售点终端收集和传输银行卡数据,悄悄地改变交易数额,甚至锁定设备。
罗德里格斯说,他甚至可以强迫至少一个品牌的ATM机直接支付现金ーー由于与ATM供应商签订了保密协议,他拒绝详细说明或公开披露这些漏洞。
“例如,你可以修改固件并将价格改为1美元,即使屏幕显示你要支付50美元。你可以使设备失效,或者安装一种勒索软件。这有很多可能性,”罗德里格斯表示,“如果你发动连锁攻击,并向ATM机的处理器发送一个特殊的有效载荷,你就可以在ATM机上找到突破口——比如提现。”
罗德里格斯担任顾问多年来一直在测试ATM机的安全性。他表示,一年前他开始探索ATM机的NFC是否可以成为黑客入侵的捷径。
NFC读卡器通常由支付技术公司ID tech销售,罗德里格斯从eBay上购买NFC阅读器和销售点设备,很快发现其中许多都有同样的安全缺陷——他们没有验证通过NFC从银行卡发送到读卡器的数据包(APDU)大小。
因此,罗德里格斯创建了一个定制的应用程序,通过他的支持NFC的Android手机向ATM机或销售点设备发送一个精心制作的APDU,这个程序比设备预期的要大几百倍,这样,罗德里格斯能够触发一个“缓冲区溢出”(buffer overflows),这是一种有几十年历史的软件漏洞,黑客可以利用该漏洞破坏目标设备的内存,并运行自己的代码。
多家ATM机供应商受影响,打补丁需要很长时间
罗德里格斯说,他在7个月至1年前通知了受影响的ATM机和销售点终端供应商,其中包括ID Tech、Ingenico、Verifone、Crane Payment Innovations、BBPOS、Nexgo,以及未透露姓名的ATM供应商。
即便如此,他警告称,受影响的系统数量之多,以及许多销售点终端和ATM机不会定期接收软件更新,而且在许多情况下需要物理访问才能进行更新,这意味着这些设备中的许多可能仍然容易受到攻击。
罗德里格斯说:“给成千上万的自动取款机打补丁,这需要很多时间。”
为了展示这些挥之不去的漏洞,罗德里格斯与《连线》杂志分享了一段视频,视频中,他在自己居住的马德里街头的一台ATM机的NFC感应区上挥舞一部智能手机,并让这台机器显示一条错误信息。
罗德里格斯要求《连线》杂志不要发布这段视频,因为担心承担法律责任。他也没有提供劫机攻击的视频演示,因为他说,他只能在IOActive向受影响的ATM供应商提供安全咨询的机器上进行合法测试,IOActive已经与该供应商签署了保密协议。
安全公司SRLabs的创始人、著名的固件黑客卡斯滕·诺尔(Karsten Nohl)回顾了罗德里格斯的工作,他说,这些发现是“对嵌入式设备上运行的软件脆弱性的极好研究”。但是诺尔也指出了这项发现的一些局限性,正是这些局限降低了它在现实世界中被不法分子利用的可能性。
诺尔指出,被入侵的NFC读卡器只能窃取信用卡的磁条数据,而不能窃取受害者的个人识别码或EMV芯片中的数据。事实上,ATM提现还要求目标ATM的代码有一个额外的、明显的漏洞。
当《连线》联系受影响的公司时,ID Tech、BBPOS和Nexgo没有回应置评请求,ATM行业协会也拒绝置评。
Ingenico公司在一份声明中回应说,由于它的安全缓解措施,罗德里格斯的缓冲区溢出技术只能使其设备崩溃,而不能执行攻击代码,但是,“考虑到给我们的客户带来的不便和影响,”Ingenico还是发布了一个补丁。
Verifone公司则表示,早在罗德里格斯报告之前,他们就已经发现并修复了罗德里格斯在2018年指出的漏洞。但罗德里格斯说,他去年在一家餐馆的Verifone设备上测试了他的NFC攻击技术,发现它仍然很脆弱。
在保密了整整一年之后,罗德里格斯计划在未来几周的网络研讨会上分享漏洞的技术细节,部分原因是为了让受影响厂商的客户引起重视。他希望更广泛地呼吁人们关注嵌入式设备安全的糟糕状况,他发现,像缓冲溢出这样简单的漏洞存在于如此之多的常用设备中ーー这些设备正处理着人们敏感的财务信息。
“这些漏洞已经存在多年,我们每天都在使用这些设备来处理我们的信用卡,我们的钱,”他说。“它们需要得到保护。”