开户功能遭入侵攻击,银行 App 数据安全如何保护?

本文涉及的产品
mPaaS订阅基础套餐,标准版 3个月
简介: 客户端 App 安全刻不容缓。

2019 年 10 月,00 后田某因非法获取计算机信息系统数据罪判处有期徒刑三年,并处罚金人民币一万元。当事人田某只有初中文化,但却拥有极强的计算机天赋,在 2019 年 1 月 5 日到 1 月 15 日期间,通过软件抓包、PS 身份证、重放攻击等手段,在某银行手机银行 App 内使用虚假身份信息注册银行Ⅱ、Ⅲ类账户非法销售获利。

案例分析

很多人会好奇银行 App 是如何被一步步通过抓包、入侵、重放攻击,从而让黑客有利可图。让我们具体分析下作案过程:

  • 首先,田某通过本人身份证信息,在注册账号正常流程中,通过「软件抓包」技术将银行系统下发的人脸识别身份认证数据包进行拦截并保存。
  • 其次,在输入开卡密码环节,田某将 App 返回到第一步(上传个人身份证照片),并输入伪造的身份证信息,并在此进入人脸识别身份认证环节。
  • 最后,田某使用先前拦截的身份认证数据包(含本人信息)进行上传验证,使得银行系统误以为此环节需比对本人身份信息,遂而成功验证本人人脸,使得其能够成功利用虚假身份证信息注册到银行账户。

重放攻击.png

客户端 App 数据安全刻不容缓

在以上案例中,涉及到银行开户系统遭受重放攻击的事件正好映证了移动端针对数据传输的加密验签的重要性。我们应当如何重新审视客户端的数据安全问题?通过解析支付宝目前在“端上安全”的设计机制,也许能够带给我们一些新的启发。

首先,我们以移动网关能力举例,试着重新梳理在重放攻击的层层环节中如何保障数据传输及存储的安全性。

客户端 App 数据安全传输、安全存储

针对客户端的数据传输与验签,要做到精细化的安全一直是老大难的挑战。借助“安全黑匣子”,目前支付宝已实现针对应用级别数据如 AppSecret 采用加密存储,通过数据加签接口实现各类上层业务的封装。

借助安全黑匣子,客户端通过应用公钥和秘钥加密针对生成的数据进行离散存储,保证加密秘钥的安全性。而安全黑匣子本身的代码混淆、多重反调试机制,使其安全性能极大提升保障。

除此之外,安全黑匣子基于反调试技术使得常见的调试工具如 GDB、IDA Pro 的动态调试分析技术失效,基于导出表混淆、垃圾指令等手段充分提升攻击者静态分析应用的难度。如此动静结合,客户端数据传输及存储安全能够充分保障。

移动网关 - 重放攻击.png

  • 当用户提交个人信息至客户端 App 时,MGS 移动网关能够通过 API 接口进行数据加密,使得下发的身份认证数据包无法被篡改;
  • 即使用户尝试使用伪造的身份信息针对数据包进行解密篡改,MGS 移动网关同样具备验签机制,使得数据包无法被解密成功。
  • 除却借助移动网关能力多方面的验签加密能力提升 App 被重放攻击的门槛之外,在业务服务器的设计中,仍然需要增加对用户及业务数据的多重验证,从而彻底保障端上数据的安全防护。

当然,App 数据安全不止于传输与存储。如何提前在开发期做风险预估及安全机制设计,针对用户端实现信息多重验证,以及构建围绕 App 全生命周期的防护措施,从而能够真正实现覆盖“App 开发、上线到使用”全链路的安全规范:

App 开发期的安全机制设计

支付宝通过打造多层次的端上安全机制从而防止 App 被黑客或木马攻击,具体主要分为“本地域”、“线上运行”以及“App 端”三个层面。在本地域方面,通过代码混淆、加密等手段实现二进制防护;线上运行时,通过“安全黑匣子”打造的数据安全环境以及加密等手段实现数据防泄露;在 App 端,借助数据安全存储、安全签名等手段充分确保业务功能的稳定运行。

1.png

用户信息验证

随着终端设备算力的持续增强,目前移动端设备借助强大的 CPU 和 GPU 完全可以进行非常复杂的运算。而由此催生出的一系列移动端 AI 引擎,如支付宝的 xNN,帮助我们能够进一步加强用户信息验证的智能化。

结合端上金融业务属性,如银行卡及身份证 OCR 识别、人脸识别、活体检测等智能服务,已经过近 2 亿用户验证,具备识别准确率高、速度快、模块丰富等特点,同时在支付宝小程序中也已开放。

App 全生命周期防护

关于客户端 App 安全,实际上是一套从 App 开发、上线及使用的一站式解决方案。在 App 开发阶段,提供代码混淆、数据加密、数据库加密等安全开发以及数据安全能力;在上线阶段,提供 App 加固的能力,通过 DEX 加壳、SO 加壳、防反编译、防重打包等能力,提升 App 的整体安全水位;在使用阶段,通过 API 签名、API 数据加密等手段来保障数据的完整性及安全性,同时借助安全加密键盘从而保护用户输入的信息安全性。

2.png

mPaaS 客户端 App 安全能力

作为源自支付宝的移动开发平台,mPaaS 目前已完成支付宝金融级的端上安全能力沉淀,不仅能够提升 App 应对高峰带宽下的服务质量挑战,同时在弱网情况下的可用性、针对网络请求的危险识别能力均属于行业前列。目前,借助 mPaaS 客户端的加固技术与黑匣子,能够保障移动端的代码安全和网络层的数据安全,提供加签、加密等方式,同时网关能够识别出客户端环境,并有能力针对可疑请求做拦截。

3.png

结合中国人民银行于 2019 年 9 月出台的《移动金融客户端应用软件安全管理规范》,针对客户端应用在数据安全、身份认证安全、功能安全设计、密码秘钥管理、数据安全、安全输入、抗攻击能力等方面均提出明确要求,全面覆盖客户端应用在设计、开发、发布及运维的全生命周期。

mPaaS 产品目前已通过中国金融认证中心的安全测评,并服务银行、证券、政务、交通等众多行业超过 2000 家客户。同时,针对客户端安全方面 mPaaS 提供全方位安全防护方案,真正帮助企业打造安全稳定的移动应用,更好地做到技术驱动业务创新、为业务带来美好体验。

目录
相关文章
|
17天前
|
小程序 视频直播 数据安全/隐私保护
如何在1v1视频直播交友APP中实现防录屏防截屏功能?
婚恋交友市场快速增长,1v1社交应用海外投放增86.49%,中东、东南亚及北美需求旺盛。用户偏好私密高效交流,国内“云相亲”兴起。开发需合规备案、实名认证,并防范诈骗。本文详解原生APP防录屏技术:Android通过MediaProjection检测,iOS监听UIScreen状态,结合动态水印、远程销毁等增强防护,平衡体验与安全。
|
28天前
|
JavaScript API 开发工具
如何在原生App中调用Uniapp的原生功能?
如何在原生App中调用Uniapp的原生功能?
433 139
|
2月前
|
移动开发 小程序 Android开发
基于 uni-app 开发的废品回收类多端应用功能与界面说明
本文将对一款基于 uni-app 开发的废品回收类多端应用,从多端支持范围、核心功能模块及部分界面展示进行客观说明,相关资源信息也将一并呈现。
104 0
|
1月前
|
存储 自然语言处理 算法
参照Yalla、Hawa等主流APP核心功能,开发一款受欢迎的海外语聊需要从哪些方面入手
海外语聊APP开发需结合Yalla、Hawa等主流产品,聚焦多语言支持、实时音视频、社交互动与安全合规。兼顾技术架构、本地化运营与法律风险,避免劣质成品代码,平衡创新与成本,打造差异化出海产品。(239字)
|
3月前
|
存储 Java PHP
轻量化短视频电商直播带货APP源码全解析:核心功能与设计流程​
在电商直播热潮下,开发专属直播带货APP成为抢占市场关键。本文详解原生开发轻量化APP的核心功能与全流程设计,涵盖用户登录、商品浏览、直播互动、购物车、订单及售后功能,并介绍安卓端Java、苹果端Object-C、后台PHP的技术实现,助力打造高效优质的直播电商平台。
|
5月前
|
数据库
《仿盒马》app开发技术分享-- 回收订单页功能完善(45)
上一节我们实现了订单的待取件、已取消状态展示,并且成功实现了修改订单状态后的列表刷新,实现了云端数据的修改,这一节我们来实现订单页剩下的两个板块的业务逻辑,分别是运输中、已完成状态下的列表展示以及订单状态的修改
107 1
|
4月前
|
存储 移动开发 监控
App Trace功能实战:一键拉起、快速安装与免提写邀请码的应用实践
App Trace系统通过一键拉起、快速安装和免提写邀请码三大功能,显著提升用户转化率、安装成功率和邀请注册率。结合深度技术实现与优化,助力公司用户增长,成为移动端核心基础设施。
|
5月前
|
UED
《仿盒马》app开发技术分享-- 扫一扫功能(35)
随着app的逐渐完善,我们现在需要在细节处做更多的打磨,在首页我们添加了很多静态的按钮和组件,现在我们开始对这些组件进行功能的添加,这次首先实现的是首页头部的扫一扫功能,扫一扫我们实现扫码后跳转商品详情页
115 0
|
5月前
|
存储 数据库
《仿盒马》app开发技术分享-- 购物车功能完善(14)
上一节我们实现了购物车商品列表的状态切换,已添加商品数量的增减,已添加商品滑动删除,已添加商品在选中情况下的价格计算。这一节我们在这些功能的基础上实现云端记录,因为我们现在只有数据的查询是从云端获取的,其他的操作虽然都实现了相对应的功能,但是当我们操作完,关闭app,再打开不会有对应的记录,有的同学可能会说,那我们把数据用首选项或者数据库的形式存储就可以了吧? 那如果我更换了另一个设备那这些添加的数据是不是就又不能使用了?所以我们的每个操作,最好都是提交到云端,这样我们在其他设备,在退出应用,切换账号这些情况下都能很好的保存我们操作后的购物车状态。
107 0
|
5月前
|
前端开发
《仿盒马》app开发技术分享-- 购物车基础功能实现(13)
上一节我们实现了加入购物车和购物车列表的简单展示。对一个电商类的应用来说,这很显然是不够的,我们的购物车内容应该更加的丰富,他需要用户能自主的去选择想要结算的商品,删除一些不需要的商品,或者取消掉一些本次不结算的商品,同时根据选择的不同,我们需要把相对应的价格和选择的数量等信息传递给用户,帮助用户节省更多的时间。
95 0

热门文章

最新文章