防护之盾|金融数据安全思考

点击「京东金融技术说」可快速关注

防护之盾|金融数据安全思考

二、场景与方案

1、行业的痛点

  • WEB 尽管使用了HTTPS,但是核心用户数据在局域网与企业内网依旧缺乏保护。

  • 移动APP尽管做了很多安全机制,但依然持续不断的被网络攻击,同时,APP总是能被检测出许多业务相关的安全问题。

  • 企业信息数据没有统一加密中心,密钥管控中心。每个业务均自己实现一套加密方式,明文的对称,非对称密钥。没有统一的数据保护体系

  • 企业使用第三方云服务,数据保护完全依赖云端环境,企业没有自主可控的密钥体系,保证云端数据仅受控于企业自身。

2、安全保护轮廓与场景

安全轮廓:欧盟,美国顶级商用密码安全检测与验证标准有严格的逻辑墙以及明确可量化的检验与执行标准。例如:FIPS120-2标准从11个逻辑维度,提供了安全参考轮廓:(一般来说,国内金融支付行业,尤其是跨境大型支付机构,都需要通过PCI-DSS认证,而PCI仅仅是金融行业的安全准入最低门槛,如果一个大型系统想进一步完成安全体系与提高安全等级,欧美企业一般使用CC标准Common Criteria for InformationTechnology Security Evaluation。而当系统涉及密码学,安全算法,密钥管理,核心系统安全,CC标准会按照FIPS标准执行,)

  • CryptographicModule Specification:首先我们将系统需要进行安全防御的界限画出,明确定义安全系统轮廓。

  • CryptographicModule Ports and Interfaces:在安全轮廓范围内,将所有接口,交互通道列出。聚焦交互接口为安全检测的入口。即,病,从口如。

  • RolesServices and Authentication:系统都是给人来服务的,明确系统角色与身份验证体系,谁使用了那些可以互动的接口怎样的系统,如何运行起来的。

  • FiniteState Model:最终状态机,将静态的系统动态演化,推演判断,人,接口,模型的安全状态。

  • PhysicalSecurity:物理安全,这里主要指对物理设备的可以进行物理接触,甚至直接进行芯片,防止精元机研磨机,电子显微镜等的物理破解方案

  • OperationalEnvironment:系统运行环境安全检测,这个比较容易理解,APP本身的安全被运行的环境影响,运行在有病毒的Android,Windows上也是很难保证绝对安全的

  • CryptographicKey Management:密钥管理,是所有安全检测,合规必检的一项。原因是现代密码学的安全基础是未解的数学难题,即算法的密钥安全,所有,密钥的安全保护逻辑是否环环相扣,完成闭环保护。逻辑上来说,目前行业认可的终级保护方式,都是基于安全的物理硬件实现根密钥保护。

  • EMI/EMC:可以理解成基于近场的电池信号攻击保护,已经有工业级攻击POC方法,但是芯片进行了EMI保护后基本可以防御

  • SelfTests:自测试,涵盖了三个维度的检测,第一是开机自测试检测,第二是运行时条件检测,第三是实时的环境检测,对于封闭环境嵌入式系统可以忽略。

  • Design Assurance:主要是相关的QA保障维度,主要体现工程化的质量保障。

  • Mitigation of Other Attacks:复合攻击检测,通常指大家经常提及的灰盒攻击,白盒攻击

3、移动安全与web H5 数据安全

互联网行业的数据入口一般只有移动平台与WEB H5平台,而移动平台信息比重越来越大,但是相关的移动APP防御还处于比较原始的阶段,只使用最基本的保护框架,例如HTTPS,Android原生混淆等,然而面对移动APP的深度APT攻击行为,行业中80%-90%的攻击均依赖移动APP的通信破解结合APP反编译。一般APP并没有对通信数据,本地数据进行加固维度的保护方案。

但是,从攻击维度来说,如果无法破解APP通信,无法反编译APP查看代码逻辑,攻击便无从谈起。这也是从根源上解决问题的入口,而不是无数次的进行猫鼠游戏。

WEB端的情况类似,过往,经常有研发同事提起,我们通信已经是使用了HTTPS进行通信保护。那是否只用HTTPS就够了呢答案在使用场景中:

用户无论使用APP或WEB进行数据提交,我们APP与WEB也都使用了HTTPS通信保护,但从中间人攻击角度上看,HTTPS对于客户端使用代理中间人的攻击者来说是透明的,使用Burpsuite等神器进行中间人代理,在局域网内完成去HTTPS化,可以傻瓜式的实现基于客户端的渗透攻击行为。在数据通信的末端,数据进入IDC机房负载后,HTTPS就被卸载成了HTTP。于是,内网之中,移动,WEB数据全明文通信。在经历无数系统,缓存,消息,存储后,总是难免留下种种隐患。

我们的应对策略是,对WEB数据提供非对称数据通道保护方案,使用一站式H5数据传输加密,数据存储转加密保护。让数据安全保护落地。

例如,用户输入密码场景。用户输入支付密码后,会直接调用移动安全SDK接口,或者H5页面调用安全JS接口,于是,用户关键信息,在用户敲下密码后,无论移动开发,WEB开发人员,外部黑客,甚至是安全系统开发人员,都无法看到用户的真实密码明文。最后用户密码落库存储后,密码还会被进行转加密处理,保证存储和传输的用户密钥在空间上是隔离的。

移动安全平台:

我们提供许了多系统级的安全接口来保障安全系统化落地执行:

  • 移动信道加密: 使用动态握手与OTP技术实现放重放,放破解,放中间人攻击的安全移动通信通道。保证APP线程无关,服务主机状态无关,每个用户每次使用APP均为不同的通信密钥。

  • 移动本地安全加密: 使用多维度安全因子,白盒密码,保证本地数据加密安全。

  • 基于动态流加密的安全键盘:使用动态OTP,国密算法,流加密技术保护业务安全键盘与滑动手势键盘

  • SO与C级代码逻辑混淆与加固:保证核心逻辑代码逻辑不对外轻易暴露。

  • 防攻击框架防护: 针对模拟器加测,ROOT提权,内存DUMP,重新签名进行整体防护

  • 安全应用产品层:提供OTP(一次性动态密码),可离线的付款码,移动CA数字证书,移动电子证书与电子合同签章。

  • SDK加固: C级代码逻辑混淆,C函数名称混淆,防HOOK机制,防PTPACE机制,SDK防篡改,攻击框架检测,模拟器检测,ROOT提权检测等。

  • 高可用,多维自动降级:

  1. 移动通信保护,为异步,同步双重机制,建立信道机制。

  2. HTTPDNS的建议使用同步方式,等待应用真实的IP地址,如果业务需要强制降级,可选超时时间,超时后业务可自动选择为传统DNS解析方案

  3. SDK安全加固,移动安全加固方案,C级代码逻辑混淆,C函数名称混淆,防HOOK机制,防PTPACE机制,SDK防篡改,攻击框架检测,模拟器检测,ROOT提权检测等。理论上均会带来相应的额外性能开销,甚至在特殊Android设备上无法使用。故,移动安全加固检测特性,原则上使用最小化原则。默认情况下仅使用最基本的安全加固。对特殊业务和APP在根据需要进行特殊加固。

4、系统数据安全

京东金融的数据场景,是非常典型的互联网金融环境,日常TB级的数据流转,支付金融数据,个人身份数据,购物场景数据,几乎涵盖了人们生活的全部金融场景。

因为涉及,金钱与用户身份敏感信息,金融的数据安全面临了,各项监管合规检测,公网攻击的双重压力。

我们的场景主要解决两个问题:  

  • 企业中N个系统的密钥管理问题:密钥管理的核心问题是,如何让各个应用,安全的使用自己的密钥,而密钥本身又不对所有开发人员,运维人员,以及系统内部人员可见。互联网企业,传统IT企业,数据安全最大的隐患在于明文的使用密钥,而核心数据库的密文被这些明文密钥保护,发生数据库泄露后,如果黑客或内部同事能触碰到数据库,对于获取写数据的服务JAR是唾手可得的,这类情况是普遍存在,又容易被人忽略的问题,也是内网数据安全威胁的核心,号称AES加密的数据库通常是这样被破解的!

    具体形式为,在代码中写死明文密钥,数据库密码,或者在配置文件中写死明文密钥,数据库密码;如果我们深入审查这个问题,就会有趣的发现,有很多研发同学会机智的回答,我们的密钥使用了很牛的保护机制,只有开发同学自己知道。其实就是使用函数的形式,实时运算出了密钥。这类方式也是不合规的。因为,生产,开发,测试环境中的项目工程JAR包,对几乎所有公司内部人员可见,代码逻辑可以直接被反编译复制实现。黑客通过公网漏洞渗透获取,或者被内部人员泄露均是巨大隐患。

    所以,解决问题的核心是,让使用加解密算法的全部环节,只使用加解密接口API,而密钥本身对任何人均不可见!

  • 不同系统使用统一安全算法,进行简单,高效的万级系统数据安全处理问题。对于企业内部N个系统使用不同加密算法,不同密钥别名,不同数据类型需要脱密的场景复杂度,与企业的系统规模成正比,与企业的存量系统成正比。

主要面对的挑战:

  • 系统的稳定与可靠性;

  • 系统性能问题

  • 如果兼容新老系统

  • 故障恢复时效

 京东金融数据安全平台特性:

  • 企业核心数据密钥明文保存

  • 合规,牌照审核,央行非金支付牌照检测,PIC检测,等级保护检测通过

  • 企业核心数据即使被脱裤,黑客仍然无法破解密文数据,企业内部人员非法泄露数据,泄露的数据仍然无法破解,数据安全,不再依赖人为因素

  • 密钥与加解密管理统一标准,统一管理

  • 通用算法支持: 国密SM2,SM3,SM4,国际RSA,AES,HMAC,3DES,FF,白盒密码等

  • 高性能:性能要求,单虚机性能: TPS :1.2万;日常非对称加解密业务TP99: 1毫秒到3毫秒;峰值业务响应时间(京东双十一),TPS 6万,TP99为 8毫秒;BI大数据批量数据处理: 2.3亿条数据,解密处理时间:5分钟

  • 高可用,水平弹性扩展:

  1. 非计划停机故障次数不超过2次/年,一般故障恢复小于30分钟,大故障恢复小于1小时,全年可用率 99.99%

  2. 业务自动离线数据保护服务,故障恢复自动转回在线

  3. 双物理通道降级方案,自动通道切换,软件系统与硬件系统并行保证高可用

  4. 多级缓存降级机制,内存,强一致中心,DB

  5. 峰值极端情况下1分钟内实现应用实例扩展。

  6. 系统支持多机房,单机房内多个节点水平扩展,支持各个节点水平扩展。

  7. 所有业务节点,支持手动流量负责离线,在线操作,控制业务与安全中心的负载压力

BI大数据支持:

支持使用安全客户端方式,部署于Hadoop或SPARK集群中,提供多进程,多线线程,嵌入集群内的加解密服务。

  • 支持大规模数据清洗操作:2.3亿条数据清洗时间小于5分钟

  • 安全特性

  1. 代码功能自主可控:C语言开发服务,所有业务均使用源码实现,无黑箱代码,合计40多模块,屏蔽繁杂密码学算法,简单化,标准化统一涉密服务接口。主流对称,非对称算法,数字信封,数字签名,签名验证,密码保护

  2. 安全密钥管理:设备管理和密钥管理权限分离,做到人员与核心密码分离

  3. 安全性:多级安全访问控制,关键区域信道加密,Linux安全内存

 0X00  见素抱朴

京东金融的数据安全能力在经过时间与空间的洗礼后,数据安全能力会逐渐通过网络对外界开放,赋能于整个行业,我们试图提供一种行业易用的数据保护能力,将密钥管理,加解密处理与业务数据解耦,实现看不见的简单安全理念。

防护之盾|金融数据安全思考

京东金融技术说

   ▼▼▼     

原创·实用·技术·专业

不只一技之长

我有N技在手

你看,我写,共成长!

防护之盾|金融数据安全思考

防护之盾|金融数据安全思考

文章知识点与官方知识档案匹配,可进一步学习相关知识云原生入门技能树首页概览8632 人正在系统学习中

来源:京东科技技术说

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2018年4月11日
下一篇 2018年4月11日

相关推荐