理论探讨破解POS终端的支付POI是个伪命题

金卡生活 2016-10-19 09:24

1.事件描述

2016年8月3日BlackHat大会(“黑帽”安全技术大会)上,支付技术公司NCR的计算机安全研究人员Nir Valtman和Patrick Watson声称,发现美国在磁条卡升级至芯片卡之后存在一个漏洞,并在会上演示了如何劫持零售POS交易,包括使用了EMV标准芯片卡的交易。此后,他们还向与会者提供了一些在现实生活中如何避免此类事件的提示。

两位研究人员表示,通过简单修改几个POS终端设备中的文件,或者操纵其通信协议,即可绕过当前技术对POS终端中POI(points of interaction)的保护进行攻击。他们展示了几种攻击POI,主要指密码键盘PIN Pad的方法,此类攻击主要是通过重写磁条码,使它看起来像是一个非芯片卡,继而采取一直以来针对磁条卡的攻击方式对芯片卡攻击。

2.攻击原理

两位研究人员发现,由POS终端的典型支付数据流可以看出,当前终端内存在对POI的弱认证问题,交易数据不经过加密(如下图)。因此,可以通过在商户的POS终端插入一个发起中间人攻击的软件shim,完成对POI系统的攻击。

 

 

 

鉴于此,他们现场演示了通过在POS终端植入shim软件,可以完成对POI的几种攻击方式:

方式一,由shim对POS终端的POI发起被动中间人攻击,可以捕获银行卡的磁道数据或者EMV Tag。通过修改捕获的磁道数据,并以此数据制作一张新的卡片,使其表明此卡是磁条卡而没有芯片,绕过了EMV的“芯片+PIN”保护模式的防伪造优势。我们知道,当前芯片卡里还包含一个磁条,但是,磁条会通过某些标志位,告诉支付设备去使用芯片而不使用磁条。

攻击原理如下图:

 

shim软件获取到EMV磁道数据如下图:

 

通过修改图中磁道信息的褐色部分“201”中第一个数据位为“1”,即可使卡片表明自身为磁条卡,继而进行刷磁条卡交易。

方式二,同方式一,首先对POS终端的POI发起被动中间人攻击,获取卡片磁道信息,然后对POI发起主动中间人攻击,无需入侵POI系统,仅通过简单修改相应的文件而使POI设备向持卡人要求输入CVV2。

通过中间人攻击获取CVV2方法如下图:

 

方式三,同方式一,首先对POS终端的POI发起被动中间人攻击,获取卡片磁道信息,然后对POI发起主动中间人攻击,无需入侵POI系统,仅通过简单修改相应的文件而使POI设备向持卡人要求重新输入PIN,进而获取到卡片的PIN码。为了更好地、隐蔽地实施攻击,攻击者可以通过向POI实施屏幕注入而覆盖掉“重新输入密码”的屏显提示,而持卡人往往因无法辨别其真实性而泄露PIN码。

通过中间人攻击获取PIN方法如下图:

 

屏幕注入获取PIN码示例:

 

此外,两位研究人员还给出了其他几种可能的攻击方法设想,如在POS终端直接插入skimmer窃取卡片信息、直接入侵POI系统获取交易信息等。

3.防范措施

会上,两位研究员给出了相应的防范措施建议。

对于供应商和商户来说,应对支付应用使用P2PE(点对点加密),包括:仅使用基于硬件的信息加密;利用强加密算法,如AES;防止远程固件降级至基于软件的加密;仅允许供应商对经过制造商官方签名的屏显文件进行升级;支付应用中离线交易数据的加密。

若支付应用中的POI不支持P2PE,商户应该要求他们的供应商至少使用TLS(或SSLv3)协议加密,或者将对POI的所有请求消息都进行签名。

对于顾客来说,应注意从不重新输入PIN;警惕异常的提示;应该更倾向于使用基于APP的支付系统,而不是直接使用卡片进行支付。

4.安全性分析

攻击者能够实现对POI系统的攻破,主要原因在于以下两点:

一是主要的支付终端机器制造商都宣称他们给零售商的机器提供了点对点加密,但是,这取决于零售商和他们的合作伙伴是否打开它。目前,零售商专注于保护支持他们的支付系统的网络,而忽略了安全问题,这使得持卡人的卡和支付终端之间的交易数据是未进行加密的,任何侵入系统的黑客都可直接读取到静态交易数据明文,这些数据中就包括持卡人EMV卡/磁条卡的磁道数据。

二是以直接读取到EMV芯片卡的卡片信息。

基于上述两个因素,攻击者可以绕过EMV对芯片卡的保护,较为轻易地获取到EMV卡信息,并进一步通过其他手段骗取持卡人的PIN码或CVV2等重要信息。

5.三点分析击破伪命题

经过我们分析,认为此种攻击方法具有局限性,并不一定能够真正实现卡片的盗刷,主要体现在以下三点:

一是此类攻击中的“方式一”只在离线设备上起作用,即只能用于离线交易。离线终端不连接网络进行实时双向认证,仅进行单向认证。原因是离线终端不连接网络进行实时认证,而是隔一段时间进行批量认证。美国没有离线设备,但在一些国家仍可以见到,因此,此种攻击受场景限制而较难实现。

二是此类攻击依赖于磁条信息而不是EMV芯片,在不支持刷磁条卡或者不支持降级的交易设备上,无法实现盗刷卡行为。

三是仅通过改变磁条中的数据可能会欺骗到交易终端,但在后端,系统将拒绝交易。这是因为攻击者捕获到的信息为静态卡交易信息,没有用到EMV系统,以整个付款流程来看,EMV系统中存在着一定的措施来减轻这类攻击,能够保证仅仅从芯片卡中读取信息,而不足以创建一个有效的磁条卡。

可以设想攻击者的盗刷场景为:在非离线交易下,攻击者利用植入shim软件的POS终端实现对EMV芯片卡的信息盗用,进而进行卡盗刷,然而由于EMV后台系统对此笔交易认证不通过,最终将导致交易失败。由此可见,持卡人在非离线交易场景下,无需过度担心芯片卡的安全问题,新一代芯片卡系统会做相应的风险管理措施以保障持卡人的交易安全。

6.安全建议

持卡人在持EMV标准芯片卡进行POS交易时,当然希望交易是安全可信赖的,经过作者对此类攻击方式的解读与分析,可知此类攻击在现实生活中很难实现。但是,我们注意到,由于POS终端内部存在对POI的弱认证问题,交易数据不经过加密,因此造成了持卡人芯片卡与交易数据泄露的风险,这是需要引起注意的一个问题。此外,在POS终端布放的环节中,存在零售商可能不打开点对点加密功能的问题,因此加强对零售商及其合作伙伴的监控管理也是必要的。我们还注意到,离线交易可能会为不法分子提供理想的盗刷环境,商家要尽可能避免使用离线交易,对于顾客来说,在离线交易场景下要额外注意个人芯片卡相关信息(包括CVV2码、PIN码等)的安全。

 

作者供职于中国银联电子支付研究院

发布者:管理员   点击数:2642   发布时间:2016-10-19 14:47:52   更新时间:2020-12-11 18:13:28