您的浏览器禁用了JavaScript(一种计算机语言,用以实现您与网页的交互),请解除该禁用,或者联系我们。[天融信]:2023电子支付漏洞报告 - 发现报告
当前位置:首页/行业研究/报告详情/

2023电子支付漏洞报告

电子设备2023-07-31天融信光***
2023电子支付漏洞报告

可信网络安全世界 电子支付漏洞专题报告 北京市海淀区西北旺东路10号院西区11号楼东侧天融信科技集团 100193电话:+8610-82776666传真:+8610-82776677 服务热线:+86-4007770777 https://www.topsec.com.cn 版权声明 本文档中的所有内容及格式的版权属于北京天融信公司(以下 简称天融信)所有,未经天融信许可,任何人不得仿制、拷贝、转 译或任意引用。 版权所有不得翻印©2023天融信公司 商标声明 本文档中所谈及的产品名称仅做识别之用。文档中涉及的其他公司的注册商标或是版权属各商标注册人所有,恕不逐一列明。 TOPSEC®天融信公司 信息反馈 +8610-82776666 目录 1.电子支付的现状8 1.1电子支付的定义8 1.2电子支付在我国的应用8 1.3电子支付的主要形式10 1.4电子支付相关漏洞的统计11 1.5电子支付的安全风险12 1.5.1线下支付安全风险12 1.5.2线上支付安全风险12 2.电子支付原理与实现13 2.1简述13 2.2线下支付13 2.2.1线下支付概念13 2.2.2线下支付一般流程13 2.2.3线下支付技术分类14 2.3线上支付15 2.3.1线上支付概述15 2.3.2线上支付一般流程16 2.3.3第三方支付的流程16 3.支付环节攻击方式与漏洞类型17 3.1卡复制18 3.1.1卡复制简介18 3.1.2卡复制原理分析18 3.1.3卡复制案例19 3.2卡数据破解与篡改21 3.2.1卡数据破解与篡改简介21 3.2.2卡数据破解与篡改原理分析21 3.2.3卡数据破解与篡改案例22 3.3网络欺骗攻击24 3.3.1网络欺骗攻击简介24 3.3.2网络欺骗攻击原理分析24 3.3.2网络欺骗攻击案例24 3.4线下欺骗攻击28 3.4.1线下欺骗攻击简介28 3.4.2线下欺骗攻击原理分析28 3.5支付身份伪造29 3.5.1支付身份伪造简介29 3.5.2支付身份伪造原理分析29 3.5.3支付身份伪造案例30 3.6支付逻辑绕过30 3.6.1支付逻辑绕过简介30 3.6.2支付逻辑绕过原理分析31 3.6.3支付逻辑绕过案例31 3.7数据不同步32 3.7.1支付数据不同步漏洞简介32 3.7.2支付数据不同步漏洞原理分析33 3.7.3支付数据不同步案例33 3.8支付数据篡改34 3.8.1支付数据篡改简介34 3.8.2支付数据篡改原理分析34 3.8.3支付数据篡改案例36 3.9条件竞争漏洞(并发)43 3.9.1条件竞争漏洞简介43 3.9.2条件竞争漏洞原理分析43 3.9.3条件竞争漏洞案例44 3.10拒绝服务46 3.10.1拒绝服务漏洞简介46 3.10.2拒绝服务漏洞原理分析46 3.10.3拒绝服务漏洞案例47 4.安全风险防范措施47 4.1卡复制以及卡数据破解与篡改防御48 4.2网络欺骗防御48 4.3线下欺骗防御48 4.4支付身份伪造防御48 4.5支付逻辑绕过防御49 4.6支付数据不同步防御49 4.7支付数据篡改防御49 4.8条件竞争防御49 4.9拒绝服务防御50 5.参考文章50 文章摘要:电子支付漏洞是指在支付过程中,攻击者可以通过利用漏洞获取用户支付信息,甚至非法转移资金。本文对电子支付的现状,电子支付漏洞的定义、原因、影响以及防范措施进行了深入探讨。 关键词:电子支付;漏洞;解决方案 1.电子支付的现状 1.1电子支付的定义 根据中国人民银行在2005年10月公布的《电子支付指引(第一号)》,电子支付被定义为“单位、个人直接或授权他人通过电子终端发出支付指令,实现货币支付与资金转移的行为。电子支付的类型按照电子支付指令发起方式分为网上支付、电话支付、移动支付、销售点终端交易、自动柜员机交易和其他电子支付”[1](中国人民银行,电子支付指引(第一号))。在现代电子商务系统中,电子支付是主要的支付手段。电子支付以接受线上转账和其他电子化付款方式为主要特点,已经成为我国最常见的支付手段之一,其影响力仍在不断扩大。 电子支付依赖现代密码学实现的身份认证技术和安全通信协议。以目前应用最为广泛的线上电子支付技术为例,用户完成支付之前,需要借助PKI(全称:PublicKeyInfrastructure,公钥基础设施)来和金融机构的服务接口建立一个经过CA(全称:CertificateAuthority,权威证书签发机构)认证身份的安全连接。大多数情况下,该连接会直接使用TLS(全称:TransportLayerSecurity,传输层安全协议),以确保数据在公共互联网上传输时的隐蔽性和完整性。 本文提及的电子支付包括线上转账和实体商户使用的POS机等收款手段,但不会涉及加密货币等新兴支付方式。 1.2电子支付在我国的应用 我国电子支付分为传统金融机构提供的支付手段(如网络银行)和第三方支付两大主流类型。传统金融机构和第三方支付手段均覆盖线上和线下两种支付场景,电子支付的应用场景大致相同。“第三方支付”指非金融机构作为商户与消费者的支付中介,通过网联对接而促成交易双 方进行交易的网络支付模式。近年来,在我国电子商务持续繁荣、移动支付快速发展的推动下,我国第三方支付交易规模持续扩大。移动支付是第三方支付增长的主要驱动力,据统计截至2022 年,我国移动支付用户规模约为9.04亿,77.5%的手机用户每天都会使用移动支付[2]。 图1-1中国第三方支付综合交易规模发展趋势 图1-2中国非银行互联网支付与移动支付市场规模对比 1.3电子支付的主要形式 从中国人民银行文件可以看出,我国对电子支付的形式划分为如下几类: 网上支付 电话支付 移动支付 销售点终端交易 自动柜员机交易 其他电子支付 其中网上支付也就是线上支付,是现代电子商务系统的核心支付方式。在线上支付流程中,付款者使用银行或第三方支付机构提供的数字金融工具,以互联网和web技术为基础,完成对收款者的资金转移。 电话支付、移动支付、销售点终端交易、自动柜员机交易等均属于线下支付的范畴。在线下支付场景中,付款者通过电话银行、智能手机、银行卡、生物特征等可以有效认证身份的终端完成对自己金融账户的资金划转,从而完成支付。 1.4电子支付相关漏洞的统计 根据《国家信息安全漏洞共享平台》(CNVD)每年公布的电子支付相关漏洞进行统计,2019年之前电子支付相关漏洞数量保持了较快增长趋势,2019年后,相关漏洞数量逐渐减少,天融信阿尔法实验室调研发现,漏洞减少的原因主要有以下几点: 1.第三方支付业务聚拢在头部厂商,该类厂商具备完善的运营机制和风控机制。 2.相关企业对电子支付漏洞越来越重视,逐年加大漏洞治理投入力度。 3.攻击者未将掌握的相关漏洞公开。 图1-3支付漏洞趋势 1.5电子支付的安全风险 1.5.1线下支付安全风险 线下交易要求付款者必须持有有效支付工具,如银行卡和智能手机APP。银行卡可产生的安全问题包括: 1.卡遗失导致被冒用。 2.商户终端的安全问题,如针对信用卡系统的中间人攻击[3]。 3.SDA(静态数据认证)的安全问题可以导致重放攻击等[3]。 针对目前流行的智能手机APP使用二维码支付的场景,安全问题如下: (1)越权扣款,本质上是攻击者使用扫码枪盗刷付款者的一次性付款码,也就是用户凭据的易失性。 (2)二维码欺骗,由于二维码不具备可读性,付款者扫描商家付款码时也可能扫描到攻击者留下的恶意二维码,从而被引导进入钓鱼页面进行扣款或产生其他危害。 1.5.2线上支付安全风险 线上支付场景中,传统信用卡支付仍可使用。但由于缺少实体卡的认证保护,付款者必须输入信用卡安全信息来证明自己持卡人的身份。针对身份认证问题,Mastercard,Visa等卡组织推出了3DSecure协议[4],而第三方支付平台则会使用自己的身份认证协议。 针对以上场景,可能的攻击面如下: 1.协议本身的安全缺陷,如3DSecure协议的iframe应用导致的不可辨识性[3]。 2.钓鱼攻击,攻击者可能伪造商家或付款页面并欺骗付款者进行付款。 3.电子商务网站存在的安全漏洞导致的身份冒用或者恶意消费等。 4.第三方支付平台的安全漏洞导致的其他问题。 2.电子支付原理与实现 2.1简述 电子支付通用支付流程一般涉及四个主体:消费者、商家、金融机构以及移动运营商。电子支付的具体原理根据不同的支付方式有所不同,电子支付一般可以分为线下支付与线上支付。线下支付主要使用的通信技术有RFID(RadioFrequencyIdentification)、NFC(NearFieldCommunication,简称NFC)、蓝牙。线上支付一般通过短信、邮件、移动网络等完成。 2.2线下支付 2.2.1线下支付概念 线下支付一般指用户在购买完商品后,通过手机或者智能卡等设备,在现场完成支付过程。常见的线下支付方式有NFC支付、RFID支付、蓝牙支付、扫码支付等。 2.2.2线下支付一般流程 线下支付的一般流程为: 用户进入商店选择购买的商品,商家在其收费终端设备上输入用户的消费金额向用户发起收款,用户携带的支付设备与商家的收款设备进行通信、数据传输完成支付过程,商家的终端设备将数据上传到第三方的交易系统,交易系统根据商家的结算周期以及数据定期向银行发起付款请求。如下图2-1所示: 图2-1线下支付原理图 2.2.3线下支付技术分类 1)NFC支付 NFC支付是使用NFC通信技术在读卡器和支付设备之间交换数据。NFC设备必须在较近的距离(通常相距小于2英寸)才能完成支付。 NFC技术在单一芯片上结合感应式读卡器、感应式卡片和点对点功能,当支付设备和NFC芯片相互靠近并激活时,NFC芯片交换加密数据并完成支付。NFC芯片使用特定的RFID射频 (13.56MHz),仅在芯片非常靠近时才起作用。 图2-2线下支付展示 2)RFID支付 RFID支付使用RFID技术进行支付,RFID技术(也被称为射频识别)通过磁场或者电磁场,利用无线电射频方式进行双向通信,以达到识别目的并交换数据。在电子支付中,基于RFID技术的支付方式主要有NFC、eNFC、SIMpass、RF-SIM这四种方式。 RFID支付过程主要是支付设备靠近识别设备,然后双方进行数据交换,完成支付过程。 3)蓝牙支付 蓝牙支付主要使用蓝牙技术进行支付。在蓝牙支付系统中,通常情况下支持蓝牙支付的手机和商家的蓝牙传感器是系统中的核心设备。使用蓝牙的支付设备通过相同的无线电波传输信息,蓝牙支付中的蓝牙标准被称为低功耗蓝牙(BLE),比正常情况下的蓝牙功耗要小。该标准(BLE)已经被Apple、Android、Windows和黑莓手机所支持。与NFC支付方式相比,蓝牙支付技术的主要优点有传输距离远,速率快等。 4)扫码支付 扫码支付通常指二维码支付,这是一种无线支付方案。商家可以将自己的支付账号,商品价格等交易信息汇于一个二维码中。用户通过二维码识别设备识别商家的二维码进行付款。除此之外,用户也可以将自己的付款信息汇于二维码中,让商家识别自己的二维码进行付款。因为扫码支付在线下的应用场景较多,因此将其归类于线下支付中。 2.3线上支付 2.3.1线上支付概述 如今我们日常生活中比较常见的支付方式就是线上支付,比如支付宝支付,微信支付,短 信支付,语音提示支付等。线上支付也被称为远程支付,它通过连接到通信网络,然后接入支付后台系统完成支付过程。移动网络以及移动终端的发展推动了线上支付的全面推广,在一些较为偏远的地区,银行等机构部署支付设备费用较为高昂,线上支付的出现就很好的解决了这一问题。 2.3.2线上支付一般流程 线上支付的一般流程: 用户到在线商城挑选商品并添加到购物车,然后用户选择下单,网站系统分别在前后端对用户提交的信息进