聚合支付安全技术规范
Aggregation payment security technical specification

一、 前 言

本标准按照GB/T 1.1—2009给出的规则起草。

本标准由中国人民银行提出。

本标准由全国金融标准化技术委员会归口。

本标准负责起草单位:中国人民银行科技司。

本标准参加起草单位:

本标准主要起草人:

二、 引 言

本标准所称聚合支付是指将多种支付方式或者多个支付渠道进行技术整合,为商户提供一点接入和对账的技术服务。在参与此过程的各类角色中,客户与商户是服务的使用方,聚合机构是支付渠道整合服务方,商业银行、非银行支付机构提供账户管理、支付受理服务。从聚合支付的特点及目前存在的问题来看,聚合支付面临一系列技术风险,如单点故障、中间人攻击、信息泄露、交易不可追溯、支付接口交叉感染等。在收集、分析和评估聚合支付风险的基础上,本标准从安全技术、安全管理和风险控制三个方面对聚合支付进行规范。

三、 聚合支付安全技术规范

1. 范围

本标准规定了聚合技术服务商与支付服务机构开展聚合支付服务的总体框架、安全、风控管理等要求。

本标准适用于聚合支付业务设施的设计、开发、部署和运营等方面。

2. 规范性引用文件

下列文件对于本文件的应用是必不可少的。凡是注日期的引用文件,仅所注日期的版本适用于本文件。凡是不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件。

GB/T 22239 信息安全技术 信息系统安全等级保护基本要求

《中国金融移动支付 支付标记化技术规范》(JR/T 0149-2016)

《网络支付报文结构及要素技术规范V1.0》(银办发〔2016〕222号)

《条码支付安全技术规范(试行)》(银办发〔2017〕242号)

《条码支付受理终端技术规范(试行)》(银办发〔2017〕242号)

《条码支付业务规范(试行)》(银办发〔2017〕296号)

《非银行支付机构支付业务设施技术要求》(JR/T 0122-201X)

3. 术语与定义

下列术语和定义适用于本文件。

3.1 客户 customer

付交易中,购买商品或服务的自然人或组织。

3.2 商户 merchant

支付交易中,直接接入支付服务方提供商品或服务的自然人或组织。

3.3 聚合技术服务商 aggregator technology services

聚合技术服务商是指经工商行政管理部门批准成立,接受支付服务机构、商户委托,利用自身的技术与服务集成能力,提供商户拓展、支付渠道整合、技术对接、系统运维、集合对账等服务的机构。

3.4 支付服务机构 payment service institution

主要承担账户开立与注销、商户资质审核、支付指令处理、交易验证、交易授权、资金结算等服务的机构。

4. 系统实现

4.1 体系架构

4.1.1 连接方式

聚合机构位于商户与支付服务机构之间,为商户提供聚合条码、聚合条码设备、APP、支付接口SDK等,如图1所示:

4.1.2 系统组成

聚合支付相关系统主要包括商户系统、聚合系统和支付服务系统。其中,商户系统部署在商户方,聚合系统部署在聚合机构,支付服务系统部署在支付服务机构。

4.2 处理流程

4.2.1 静态码聚合支付

静态码聚合支付模式将多个支付服务机构的条码整合成一个由聚合机构生成的“聚合码”,条码编码规则、条码承载内容、生成、展示等都由聚合机构掌握。用户使用不同的支付机构APP(如微信、支付宝等),均可扫描“聚合码”完成支付。具体交易流程如图2所示。

——聚合系统为商户提供统一的静态码,该条码能够接受多个支付服务机构 APP 的扫描;

——用户使用其支付服务机构的 APP 对条码进行扫描;

——支付服务机构的 APP 调用内嵌的浏览器容器,将支付请求路由到聚合系统;

——支付服务机构的 APP 调用内嵌的聚合前端,统一将支付请求汇集到聚合系统;

——聚合系统将支付请求转发给对应的支付服务机构支付系统,完成支付;

——支付服务机构支付系统将支付结果通知聚合系统和用户 APP;

——聚合系统将支付结果通知商户系统。

4.2.2 动态码聚合支付

4.2.3 条码设备聚合支付

静态码聚合支付和动态码聚合支付均为均为用户扫码模式,条码设备聚合支付为商户扫码模式。聚合机构统一为商户部署条码设备及聚合前端,商户可以通过此设备扫描不同支付服务机构的条码,如图4所示。

——收银员通过聚合条码设备扫描用户 APP 显示的动态付款码;

——商户系统调用内嵌的聚合前端,将获取的付款码信息和订单信息等发送给聚合系统;

——聚合系统通过收银员选择或者动态付款码规则,判断支付服务机构,将信息转发给相应支付服务机构支付系统,完成支付;

——聚合系统根据付款码中的支付服务机构编码,将信息转发给相应支付服务机构支付系统,完成支付;

——支付服务机构支付系统将支付结果通知聚合系统和用户 APP;

——聚合系统将支付结果通知商户系统。

4.2.4 线上聚合支付

无论是静态码聚合支付、动态码聚合支付还是条码设备的聚合支付,均为通过二维码或条码载体进行聚合支付的模式;在线上聚合支付中,支付信息的载体为H5页面等形式的链接或者SDK等调用方式,由用户主动发起支付动作,如图5所示。

——商户系统将商品信息、金额、商户账户信息等发送给聚合系统;

——聚合系统为商户系统生成订单,该订单为可通过 H5 浏览器展示的页面;

——用户使用支付服务机构 App 打开该支付链接,支付服务机构 App 调用内嵌的浏览器容器,打开订单页面;

——聚合系统将支付请求/渠道信息、订单信息汇集,并生成支付请求支付请求转发给对应的支付服务机构支付系统,完成支付;

——支付服务机构 APP调用内嵌的聚合前端,统一将支付渠道信息、订单信息汇集到聚合系统,并生成支付请求;

——聚合系统将支付请求转发给对应的支付服务机构支付系统,完成支付;

——支付服务机构支付系统将支付结果通知聚合系统和用户 APP;

——聚合系统将支付结果通知商户系统。

5.安全技术要求

5.1 系统安全

5.1.1 物理安全要求

按GB/T 22239—2008中7.1.1执行。

5.1.2 网络安全要求

按GB/T 22239—2008中7.1.2执行。

5.1.3 主机安全要求

按GB/T 22239—2008中7.1.3执行。

5.1.4 应用安全要求

按GB/T 22239—2008中7.1.4执行。

5.1.5 数据和交易安全

5.1.5.1 基本要求

数据和交易安全基本要求如下:

——聚合技术服务商应采取加密存储、访问控制、信息安全审计等措施,提高聚合系统日志和数据库的信息安全防护水平,防范拖库撞库攻击。

——聚合支付系统应能够通过支付标记化技术,防范跨渠道交易安全风险。

——应定期开展敏感信息安全的内部审计。

5.1.5.2 数据录入

数据录入应满足以下要求:

——聚合技术服务商应用应用软件的口令框应默认屏蔽显示;

——应具有错误次数限制等防穷举措施;

——应采用信息输入安全防护、即时数据加密等安全措施防止敏感信息被非法截获;

——应采取防篡改机制降低交易敏感信息和交易数据被非法篡改的风险。

5.1.5.3 数据访问

数据访问应满足以下要求:

——应根据业务需要保证敏感信息仅供授权用户或授权应用组件访问。

——敏感信息应按业务要求进行保存和使用,显示时应进行屏蔽处理。

5.1.5.4 数据存储

数据存储应满足以下要求:

——在满足法律、管理规定和业务需求的前提下,聚合技术服务商应用宜保留最少的支付信息(如支付账号等),并限制数据存储量和保留时间;

——聚合技术服务商不应保存用户支付敏感信息(如支付口令等)及其密文;

——聚合技术服务商应用在使用过身份认证、交易等敏感信息后,应及时清除敏感信息;

——不得留存非本机构的支付敏感信息,确有必要留存的应取得客户本人及账户管理机构的授权;

——应具备重要数据的访问控制措施。

5.1.5.5 数据传输

数据传输应满足以下要求:

——身份认证信息等敏感信息通过公共网络传输或与其他本地应用软件间传输时应采取加密措施,保证敏感信息传输的保密性;

——数据传输时如涉及安全通讯协议宜采用国际或国内标准规定的协议,如 SSL、IPSec 等;

——交易数据在传输时,聚合技术服务商应用应采取安全措施(如消息认证码 MAC 等)以确保交易数据的完整性。

5.1.6 运维安全

按JR/T 0122中的运维安全性要求相关章节执行。

5.1.7 业务连续性

5.2 按 JR/T 0122 中的业务连续性要求相关章节执行。移动终端安全

5.2.1 聚合技术服务商应用软件安全

5.2.1.1 数据有效性校验

聚合技术服务商应用宜提供数据有效性校验功能,保证通过人机接口或通信接口输入的数据格式或长度等信息符合系统设定要求,如输入的资金金额、账户等信息应不含特殊字符、负数等非法参数。

5.2.1.2 页面回退清除敏感信息机制

聚合技术服务商应用宜支持页面回退清除敏感信息的机制。

5.2.1.3 残余信息保护

残余信息保护应满足以下要求:

——聚合技术服务商应用软件退出时,应清除非业务功能运行所必需留存的业务数据,保证客户信息的安全性;

——聚合技术服务商应用软件卸载完成后,文件系统中不应残留任何与用户相关的个人信息及敏感数据等。

5.2.1.4 反编译

聚合技术服务商应用宜采用防逆向工程保护措施,如聚合技术服务商应用可采取代码花指令、反调试、代码混淆等技术手段,防范攻击者对聚合技术服务商应用的反编译分析。

5.2.1.5 聚合技术服务商应用完整性

聚合技术服务商应用完整性应满足以下要求:

——应对聚合技术服务商应用程序进行签名,标识聚合技术服务商应用程序的来源和发布者,保证客户所下载的聚合技术服务商应用程序来源于所信任的机构;

——聚合技术服务商应用启动和更新时,宜进行真实性和完整性校验,防范聚合技术服务商应用被篡改或替换。

5.2.1.6 运行时安全

聚合技术服务商应用软件运行时安全应满足以下要求:

——应通过白名单、提醒等方式,确保聚合技术服务商应用访问聚合技术服务商web站点进行安全控制;

——聚合技术服务商应用应从木马病毒防范、信息加密保护、运行环境可信等方面提升安全防控能力;

——聚合技术服务商应用应能检测并向后台系统反馈手机支付环境安全状况,作为风控策略的依据。

5.2.1.7 敏感数据显示

敏感数据显示应满足以下要求:

——聚合技术服务商应用软件的密码框应禁止明文显示密码,应使用同一特殊字符(例如*和•)代替;

——除必须由用户确认的情况外,聚合技术服务商应用在显示个人信息(如银行账号、身份证号、手机号、邮箱、姓名等)时默认屏蔽关键字段。

5.2.2 通信安全

5.2.2.1 网络通讯协议

网络通讯协议应满足以下要求:

——应在聚合技术服务商应用与服务器之间建立安全的信息传输通道,通过公开网络进行数据传输时,宜进行双向认证,例如使用 SSL/TLS 或 IPSEC 等协议;

——如使用 SSL/TLS 协议,应使用相对高版本的协议,取消对低版本协议的支持。

5.2.2.2 抗抵赖

通过聚合技术服务商应用发送的报文的关键要素宜进行数字签名,以确保支付内容的真实性和抗抵赖性。

5.3 受理终端安全

应从终端产品选型、验收、现场检查等环节加强安全管理,确保终端的技术标准符合性,受理终端安全应满足以下要求:

——受理终端安全要求应满足《条码支付受理终端技术规范》第6章要求

——可以直接受理银行卡交易的受理终端应符合《银行卡受理终端安全规范》(JR/T 0120-2016)的要求。

5.4 报文接口安全

交易报文安全应满足以下要求:

——应防止对交易的重放攻击;

——宜保证交易的抗抵赖性,包含但不局限于证书签名等技术手段;

——在交易报文传输过程中应使用安全传输协议保证传输安全;

——应用系统应保证在一段时期内同一商户交易、订单的唯一性;

——应用系统应检查交易请求报文中记载的交易要素是否完整并符合业务规则,并拒绝不完整或者        不符合业务规则的交易请求;

——应用系统应防止对支付成功的订单重复支付;

——应针对不同风险等级的支付接口、服务接口采取有效技术措施,并严格进行安全隔离,防范接        口暴露风险;

——应采用密码技术,对传输信息进行加密处理,与支付服务机构支付系统和商户系统均实现双向        认证,监控伪造或篡改交易风险,防范中间人攻击;

——应在聚合支付报文中准确记录聚合机构编码、支付渠道信息等要素,完整刻画真实交易;

——在聚合技术服务商重新封装转发报文时,应采用数字签名、加密传输、哈希运算等措施,防范        报文信息被恶意篡改;

——聚合支付报文应采用唯一支付渠道标识、商户编码、条码设备编码和交易流水号等,保障交易        可追溯。

6. 聚合技术服务商应用安全管理要求

6.1 管理制度

基本要求:

——应建立信息安全管理制度体系,制度体系应贯穿网络支付系统设计、编码、测试、运行维护、        评估以及应急处置等过程,并涵盖安全制度、安全规范、安全操作规程和操作记录手册等相关        方面;

——应制定聚合支付安全管理工作的总体方针和策略,明确工作职责、规范工作流程、降低安全风        险;

——应指定或授权专门的部门或人员负责安全管理制度的制定和维护;

——安全管理制度应通过正式有效的方式发布;

——应每年组织相关部门和人员对安全管理制度体系的合理性和适用性进行审定,及时修订完善安        全管理制度。

7. 风险控制要求

7.1 总体要求

支付服务机构对聚合技术服务商的风险控制应参照《银行卡收单业务外包管理的通知》(银发〔2015〕199号)要求,不得开展特约商户资质审核、受理协议签订、收单业务交易处理、资金结算、风险监测、受理终端主密钥或交易密钥的生成和管理、差错和争议处理等工作;不得向支付服务机构申请拓展为特约商户并向支付服务机构发送支付交易信息;不得建立结算账户并将特约商户结算资金划转至自有账户。聚合技术服务商不得转让或者转包业务。

7.2 交易风险控制

聚合技术服务商应建立应对套现、欺诈、洗钱等方向的风险监控模型及系统,对异常交易进行及时预警并通过预警及时反馈支付服务机构。

聚合技术服务商应针对批量或高频登录等异常行为,应利用IP地址、终端设备标识等信息进行综合识别,及时采取附加/验证、拒绝请求等手段。

资金类等高风险业务,通过短信等方式实时告知客户和商户其资金变化情况。

7.3 身份认证

基本要求:

付款人身份认证可以组合选用下列三类要素:

——仅客户本人知悉的要素,如静态密码等;

——仅客户本人持有并特有的,不可复制或者不可重复利用的要素,如经过安全认证的数字证书、电子签名,以及通过安全渠道生成和传输的一次性安全验证码等;

——客户本人生物特性要素,如指纹等。

身份认证要素的使用,应满足以下要求:

——应确保采用的要素相互独立,即部分要素的损坏或者泄露不应导致其他要素损坏或者泄露;

——采用数字证书、电子签名作为认证要素的,数字证书及生成电子签名的过程应符合《中华人民共和国电子签名法》等有关规定,确保数字证书的唯一性、完整性及交易的抗抵赖性;

——采用一次性密码作为验证要素的,应当切实防范一次性密码获取端与支付指令发起端为相同物理设备而带来的风险,并将一次性密码有效期严格限制在最短的必要时间内;

——采用客户本人生理特征作为验证要素的,应当符合国家、金融行业标准和相关信息安全管理要求,防止被非法存储、复制或重放。


增强要求:

应提供基于用户行为大数据分析的身份认证机制,用户行为分析包括但不限于:对用户登录系统地理位置、用户使用系统习惯等各种分析模型。

7.4 交易过程安全

基本要求:

——应准确完整记录交易的支付请求信息,如直接向客户提供商品或者服务的特约商户名称、编码、按照国家与金融行业标准设置的商户类别码商户编号、商户交易流水号、商户交易订单号、交易类型、交易金额、交易日期时间等;

——应根据从商户及客户的发卡/账户机构获取的交易数据,检查交易信息的一致性,识别潜在的非法交易、欺诈交易等;

——退款时应与原支付交易对应,将款项退回原发出支付指令的付款人账户,付款人账户不能接收退款的,可根据有关规定退回到付款人其他账户;

——应采取有效措施保证交易信息的安全性,对于支付类交易应要求商户及其他外部机构提供必要的订单信息,以用于客户进行交易确认,保障支付交易安全;

——应验证交易数据签名的正确性、签名方证书的有效性、签名方证书与身份的一致性;

——应保证交易请求报文中记载的交易要素信息的真实性和完整性,通过可靠的数字签名等机制,验证订单的有效性并存储订单,防止交易篡改、伪造订单等。

7.5 交易提示

基本要求:

——应以约定的方式及时、完整的将订单信息、交易结果等通知客户与商户,订单信息包括但不限于交易账户、交易金额、交易时间、商户名称等;

——当交易出现异常时,应给出相应的信息提示客户或商户;

——提供客户指定他人代为支付功能的,在付款确认时应向付款者进行风险提示,避免付款人误操作或者被恶意欺诈造成资金损失。

增强要求:

交易确认前,支付机构应提示验证预留信息。

7.6 交易监控

基本要求:

——应建立交易监控系统,能够甄别并预警潜在风险交易,例如套现、洗钱、欺诈等可疑交易,并生成风险监控报告;

——应根据交易的风险特征建立风险交易模型,有效监测可疑交易,对可疑交易建立报告、复核、查结机制;

——应对监控到的风险交易进行及时分析与处置。

增强要求:

——应建立自动化的交易监控机制和风险监控模型,对商户和客户的交易活动进行实时监控,及时预警;

——应通过分析用户交易习惯和群体用户行为习惯,提高交易监控的效率和准确率;

——应通过分析欺诈行为特征创建反欺诈规则,对交易数据实时分析,根据风险高低产生预警信息,从而实现欺诈行为的侦测、识别、预警和记录;

——应制定异常交易监测和处理的流程和制度;

——应建立异常交易识别规则和风险处置机制,对监控到的风险交易进行及时分析与处置;

——应依据已识别并确认的风险数据,建立黑名单数据库;

——应根据审慎性原则,对于交易要素不完整、超过额度的支付等违规交易进行人工核查。

7.7 风险识别与干预

风险识别与干预应满足以下要求:

——应采取必要措施,在交易过程中给予必要的支付风险提示。支付风险的提示可每次提示,也可在业务开通时给予提示;

——应对交易过程进行风险识别与干预,防范潜在的非法交易、欺诈交易。

7.8 客户教育

基本要求:

——应提供安全的包含条码支付功能的应用软件;

——应宣传条码支付的安全知识;

——应在支付过程中提示相关安全风险和注意事项;

——应向商户提示静态条码的风险及防范措施。

7.9 商户信息管理

基本要求:

——应通过系统管理商户的基本信息,采取有效措施确保信息的保密性与完整性;

——应通过安全有效的方式验证及核实商户的真实身份;

——应对商户基本信息变更进行核实,并保存变更记录;

——应完整地保留各项业务数据、日志等信息,所保存的内容应在相关法律法规规定的期限内妥善保管,便于事后检查和审计;

——未经商户直接授权或非监管需要,不得对外共享客户的敏感信息;

——如商户及聚合技术服务商参与敏感信息的处理,应对其进行监督,禁止其存储客户的敏感信息,对因业务需要存储的交易数据,应采取严格的访问控制措施;

——支付机构对聚合技术服务商的管理应依照《非银行支付机构支付业务设施技术要求》中的外包管理要求。

增强要求:

——应要求商户及聚合技术服务商采用可靠的密钥保护机制,例如采用专门的硬件加密设备,用来保存认证密钥;

——为防范伪盗交易、欺诈交易等,商户及聚合技术服务商应补充提供下列数据信息:

• 商品类别;

• 订单描述。

• 订单提交人的设备信息,如 IP 地址、MAC 地址、浏览器信息等;

• 订单提交人的客户标识,如登录名、会员号等。

四、参考文献

[1] JR/T 0013 金融业星型网间互联安全规范

[2] JR/T 0068 网上银行系统信息安全通用规范

[3] JR/T 0082.4 基于Internet的网上支付 第4部分:报文结构及要素

[4] JR/T 0118 金融电子认证规范

[5] JR/T 0092 中国金融移动支付 聚合技术服务商应用技术规范

[6] JR/T 0095 中国金融移动支付 应用安全规范

[7] 金融机构反洗钱规定 (中国人民银行令〔2006〕第1号 )

[8] 电子银行业务管理办法 (中国银行业监督管理委员会令2006年第5号)

[9] 商业银行内部控制指引 (中国银行业监督管理委员会令2007年第6号)

[10] 非金融机构支付服务管理办法 (中国人民银行令〔2010〕第2号)

[11] 非银行支付机构网络支付业务管理办法 (中国人民银行公告〔2015〕第43号)

[12] 《中国人民银行关于进一步加强银行卡风险管理的通知》(银发〔2016〕170号)