中行、建行、中信等银行APP集体“沦陷” 出现重大安全漏洞

 

随着移动互联网的快速发展以及智能手机的日益普及,移动支付的发展也异常迅猛,各家金融机构纷纷推出了各自的手机银行APP。随之而来的则是移动金融支付的安全问题也不断爆发:钓鱼诈骗、信息泄露、资金盗取等。中国信通院泰尔终端实验室一直关注各类移动终端应用软件的安全性能,近期依据相关标准对多款基于安卓系统的手机银行APP进行了安全测评,结果不容乐观。

手机银行APP窃取信息事件分析显示存漏洞

 

 

今年以来,国内已经发生多起通过手机银行APP盗取客户信息及资金的情况。3月15日,中国信通院泰尔终端实验室的工程师近期针对基于安卓系统的多款手机银行APP安全性进行了较为全面的分析评测,涉及中国银行、中信银行、建设银行等国内多家大型商业银行。测评内容包括:通信安全性、键盘输入安全性、客户端运行时安全性、客户端安全防护、代码安全性和客户端业务逻辑安全性等6个方面的39项内容。

测评结果显示:手机银行APP在逻辑设计及流程设计时可能存在一定的缺陷,导致黑客可以识别转账、汇款时的敏感函数,继而将客户的交易数据篡改为黑客指定的账户,从而导致用户的转账资金被非法窃取。同时,工程师还发现被检测的手机银行APP自身防御手段较弱,易被破解,安全性较低。部分手机银行APP存在的问题如下:

(1)手机银行APP交易数据可被篡改

手机银行APP在运行过程中,用户进行转账、汇款等交易时的账号,开户行等敏感数据信息在写入移动终端内存时,可被黑客利用技术手段进行篡改,使得原本要转给亲友或企业的资金被转入黑客指定的账户。

(2)手机银行APP运行时关键Activity组件容易被劫持

手机银行APP关键组件不具备防止进入后台或提示用户等相关功能,黑客可以对登录或支付界面进行劫持替换,用户的敏感数据存在被窃取的风险。黑客可以在本地监听用户的状态,当用户登陆或者输入交易密码时,弹出伪造的界面诱骗用户输入正确的账号口令,从而窃取用户信息。

(3)手机银行APP抗逆向分析能力不足

实验室的工程师使用反编译工具、反汇编软件对手机银行APP进行反编译,发现手机银行APP可被反编译并且泄露出大量有效代码。黑客能够通过反编译,在客户端程序中植入木马、恶意代码以及广告等,客户端程序如果没有自校验机制的话,黑客可以通过篡改客户端程序窃取手机用户的隐私信息。

(4)手机银行APP能够被重新编译二次打包

实验室工程师对手机银行APP进行反编译,通过修改代码、XML、资源文件并对其重编译二次打包,重打包后的手机银行APP能够正常运行。黑客通过在手机银行APP程序中植入恶意代码或广告等,窃取手机用户的资金或隐私信息。

(5)手机银行APP可进行动态调试

手机银行APP可以通过GDB、IDA等调试器进行动态调试,黑客可利用GDB或IDA等调试器跟踪运行程序,并且执行查看、修改内存中的代码和数据等行为,从而获取用户的敏感信息。

(6)手机银行APP代码允许任意备份

手机银行APP代码允许任意备份,黑客通过备份应用程序获得用户的敏感信息。

(7)在发布版本的手机银行APP中留存测试用的组件或账号信息

此外被测的手机银行APP开发过程中存在几处明显问题,包括开发过程中缺乏有效的校验机制、上线前缺乏深度的对抗性安全测试、加固保护方案需要提升等。

 

产品开发和服务方义不容辞的责任

 

 

 

从技术角度展开来讲,信息安全需要系统化的思维,特别是针对重要产品的安全防护,切忌采用孤立的思维进行设计和实现。以手机网银为例:

  • 系统结构上应该包括客户端和服务端安全

  • 安全属性上应该包括机密性,完整性,可用性以及其他扩展属性

  • 从安全防护生命周期上而言,要覆盖业务流程的每一个环节

  • 从安全体系架构上而言,要覆盖物理接触,网络通信,系统接口,运行环境,数据存储,业务逻辑等每一个层面

对照这样的安全原则和理念,不难发现,这些手机网银产品,明显存在安全隐患。比如,交易请求发起过程中被明显篡改,系统未能识别和阻断,竟然可以完成非法交易,这是典型的完整性保护缺失。再深入剖析,不难发现,产品在安全机制设计上,没有充分考虑运行环境的因素,对运行环境采用了默认的高度信任,这是把自身业务的安全建立在“运行环境完全安全”的基础上的非系统化思维,事实上大家都知道,安卓系统是开源的,其他软件获得系统权限是非常普遍的现象,这也是产品开发方和服务提供方显然应该考虑的因素。业界的可信安全思想提出的技术方向,也正是要求专业人士在对运行环境无法完全控制的情况下,更加全面地设计一整套安全机制。

以此分析,行业内也有一些好的案例:如工商银行手机银行在进行预交易后,由密码器随机数生成密码的保护技术;招商银行手机银行将代码高度混淆并增加人脸识别的技术;浦发银行手机银行在转账交易时,对重要交易环节做通信保护等等均可大幅度提高交易安全性等。

另外,从用户使用的角度,充分考虑用户使用产品和服务整个过程的安全,也是产品开发方和服务提供方义不容辞的责任。今年,《网络安全法》将开始正式施行,仔细阅读并理解其中的每一个条款,不难发现,这也是国家层面提出的更高要求,任何人和企业都责无旁贷。

一些手机银行APP在发布版中留存了测试用的组件或账号信息,直接暴露服务器接口的调用参数,这样大大降低了逆向分析者的工作难度,甚至还可能泄露测试用账户,给用户带来极大安全隐患。

 

如何预防“山寨银行APP”

 

 

 

同时,泰尔终端实验室还发现被检测的手机银行APP,由于破解成本低,可能会导致已经出现大量的盗版、山寨版本。

从上述测评结果可知,被测手机银行APP都存在高危风险。泰尔终端实验室表示已经将相关漏洞信息反馈各家银行,普通用户可关注使用的手机银行的近期更新,保持最新版本即可。对于一般的手机银行APP使用者,给出几条建议:

  • 谨慎使用手机银行APP执行转账等敏感操作;

  • 选择在信息安全防护较强、用户权益保护良好的银行办理金融业务;

  • 从银行官方网站或正规渠道下载手机银行APP;

  • 提高信息安全意识,保护个人隐私数据。

 

建议大家不要随意开启莫名短信和彩信;谨慎使用“微信码扫一扫”;下载手机银行时关注开发商信息和用户评论;敏感应用设置密码;账户信息不要记录在手机中;设置银行账户额度等。此外应尽量减少个人信息泄露,尤其是手机号、身份证号、电子邮箱等敏感信息。

 

发布者:管理员   点击数:7279   发布时间:2017-03-23 11:28:51   更新时间:2020-12-11 18:11:59