金融机构如何建立内部应用系统安全测试体系
发布时间:2013-04-22   作者:启明星辰

摘要:在金融机构内部建立自身的应用系统安全测试体系,可有效提升安全防范能力,减少因应用系统安全问题带来的隐患。

 

随着金融机构对计算机网络和软件系统的依赖程度逐渐增加,以及电子金融产品的不断推出,新信息技术在给业务带来巨大方便、高效的同时,也带来了潜在的巨大风险。由于我国的商业化应用系统测评体系起步晚,发展也尚未成熟,加之金融应用系统有其自身的特殊性,所以目前在金融行业还没有一套体系化的测试方法,这使得金融行业应用系统的安全风险防范工作略显不足,因此在金融机构内部建立自身的应用系统安全测试体系,可有效提升安全防范能力,减少因应用系统安全问题带来的隐患。

 

应用系统安全问题亟待解决

 

2011年某银行5万客户遭遇网银升级骗局,造成客户资金巨大损失,给银行声誉带来重大影响;同年花旗银行证实受到黑客袭击,约有1%的信用卡用户受到了影响,客户的姓名、账号、联系方式等信息均被黑客获取。


无论是哪类事件,应用系统安全问题主要归纳为以下六类:

 

1、身份欺骗。应用系统的身份认证措施不足,导致攻击者可能冒用他人的系统身份操作账号,从而利用他人的权限获取相关信息资料,并进行资金盗取等操作。

 

2、篡改数据。应用系统的数据保护措施不足,导致金额、密码、联系方式等数据信息可能被攻击者恶意篡改,从而造成账户资金被盗等后果。

 

3、信息泄露。应用系统开发设计或配置不当,缺乏敏感信息保护功能,导致可能发生源代码泄露、目录遍历等后果,攻击者利用泄露的信息可以更容易的实施入侵。

 

4、权限提升。应用系统的权限管理功能不足,导致攻击者可能绕过权限限制,进行未经授权或超越授权的操作,使得攻击者获取系统权限或访问系统中的重要数据。

 

5、拒绝服务。应用系统安全保护能力不足,缺乏持续稳定运行的能力,可能受到应用资源消耗等DDoS攻击,或由于任务调度死锁等原因导致系统宕机或运行缓慢,无法继续对外提供服务。

 

6、行为否认。应用系统对用户操作行为缺乏可信的监查机制,导致无法提供有效证据,以证明该用户是否进行了某一操作。

 

行业监管机构曾对应用系统安全提出了具体要求,如银监会2009年下发的19号文《信息科技风险管理》、银监会2011年62号文及人行121号文《网上银行应用的安全通用规范》等。此外我国众多金融机构,如国有四大行、股份制银行及部分重要保险公司均在多年前就开始了对应用系统的安全测试工作,从最初的对互联网应用系统进行渗透测试到对安全控件的黑盒测试再到后来对应用系统代码的白盒测试等,这些都充分说明了应用系统的安全问题的严竣性和其重要性。

 

解决之道

 

通过仔细分析众多金融机构所做的大量的应用系统测试工作,启明星辰发现目前总体仍存在如下不足:

 

1、需求方面安全考虑不足。启明星辰在为多数金融机构提供咨询服务过程中发现,需求方面的安全考虑不充分,如在需求阶段对安全需求描述不够完整、对安全风险场景设计较为简单,对安全边界的统一规划不足,需求阶段对应用系统敏感信息防泄露考虑不足。

 

2、开发环节安全控制不足。启明星辰在为各金融机构进行白盒测试、渗透测试及安全测试的过程中发现应用系统安全存在SQL注入、跨站脚本信息泄露、越权操作等安全问题,包括众多大型银行,同时过程中也发现不按编码规范执行和代码安全检查不足的问题,这些都是开发环节控制不足的体现。

 

3、应用系统安全测试工作范围局限。应用系统安全测试目前在大多机构仅仅是在安全部门进行,整个测试方法与理念未贯穿于系统开发全过程,需求和设计过程仍未涉及较体系化的安全措施和控制点。

 

4、外包开发和外购模块的风险控制不足。多数机构外购的产品缺乏可信赖的第三方评估机构,另外第三方开发商不可能遵循金融机构自身的开发规范,因此无法控制相关风险。

 

针对上述问题,虽然有些金融机构采取了一些相应的措施应对,如对网页敏感信息加固,对新版本进行安全测试,系统等保测评或外购模块安全测试等。但这些措施都仅是“头痛医头、脚痛医脚”,未解决根本问题。启明星辰分析存在上述问题的根源如下:

 

1、效率和安全性矛盾。所有机构在开发时优先关注功能,只能牺牲一定的安全。

 

2、制约机制不足。大多机构中,相关的安全规范由开发人员自行制订、颁布、执行、检查,安全测试未成为应用系统能否上线的关键环节。

 

3、 分散管理的问题。机构各部门分散管理应用系统及其各自的安全,未形成统一管理。

 

因此,要根本解决上述出现的问题,必须将目前分散的测试工作整合成一个整体,并建立起一个内部应用系统安全测试体系,这样就能将安全测评整合于整个开发和操作流程中,过程完全掌握,也能够更好的把控开发质量;同时也能够使更多的部门融入到测评工作来,各业务部门对自身业务系统更加熟悉,能从不同角度为安全测评提供更全面的支持。

 

借鉴国内外优秀经验

 

目前国内及西方大多数发达国家在国家层面的第三方测评机构方面都建立了比较完善的应用系统安全测试体系,我国金融机构在内部建设自身的应用系统安全测试可以借鉴其组织架构的做法和参考的标准。

 

无论国际还是国内,目前在应用系统测试方面主要是以国际通用评估准则(CC)为主,此标准是在多个国家的测评标准基础之上,由六国七方统一提出的全球35个国家互认的针对产品及应用系统的信息安全测评标准,在1999年已成为了国际标准ISO15408,且美国欧洲很多政府机构采购里面都要求必须通过CC,此外很多电信、金融的招标要求里面也提及了CC认证的要求。此标准目前已是针对应用系统及产品安全测试的应用最广的标准,2011年国内已等同采用为GB/T18336,当然除此标准外,在应用系统中涉及密码模块和密码算法还会参考FIPS 140标准,或者涉及具体某一类应用系统时也会参考相关的系统标准,如国内针对网银系统安全有人行下发的网上银行系统信息安全通用规范(121号文)、银监会下发的《网上银行安全风险管理指引》和国家测评中心发布的《GBT 20983-2007 信息安全技术 网上银行系统信息安全保障评估准则》。

 

除了参考的优秀标准外,从国内外政府测评机构中还可以借鉴其组织架构模式,无论是国外还是国内,测评体系都应实现三权分立,国内的测评体系如下图所示。

 

 

 

图1 中国信息安全测评认证体系组织层次

 

从上图中可以看出,认证机构与测评实验室(即测评机构)均需获CNAS的认证认可,同时测评实验室还需要得到认证中心的授权,测评实验室完成对某一系统的测评后,认证中心负责颁发相关认证证书。

 

建立机构内部的应用系统测试体系之道

 

借鉴体系化的标准和组织架构,金融机构便可建立应用系统测试体系,主要从以下几方面建设:

 

1、 建立内部测试组织体系

 

任何一项工作没有良好的组织保障就不能顺利开展,因为建立组织体系是第一要事。组织体系要将相关部门及相关岗位人员都纳入,这样才能将相关工作都深入到各自的岗位中,但大多机构由于行政管理的原因,直接纳入都会比较困难,因此通常情况下虚实结合更容易落实,如下图所示。当然有了组织必须配备如下图所示的相关技术工程师。


 

 

图2 测试组织体系架构

 

2、 明确内部应用系统安全测试的流程内容

 

有了明确的组织人员后,就要制定具体的应用系统安全测试的流程内容,通常一个较完善的基于CC的应用系统测试体系流程主要分四个大部分,即:准备测试阶段、预测试阶段、执行测试阶段、结束测评阶段。详细流程及内容图如下所示。
 

 

图3 应用系统测评体系整体流程图

 

3、 建设过程中要注意的问题

 

本体系建设不仅有很高的技术门槛,而且还需有很强的管理措施,因此过程中要注意如下问题:

 

1) 必须领导重视。一个完善的体系建设不仅涉及财力而且涉及各部门的人力,需要领导将应用安全工作提升高度,要有推动贯彻该体系的决心,过程中长期关注,并保证资源,包括人力、物力、财力。

 

2) 要有统一的组织体系并明确责任分工。内部应用系统测评体系建立工作的顺利展开,离不开各部门的明确责任分工,例如业务部门负责参与编写ST,提出安全策略等。

 

3) 需要相应的技术环境。一个完整体系必须有相应的技术支撑,如白盒测试工具、扫描工具等整套支撑该体系的技术和相应产品。

 

4) 建立内部应用系统测评体系应循序渐近,按计划分步实施。建立内部应用测评体系将会大大改变公司内部的管理及工作模式,所以不能急功近利,否则可能会出现很多问题,甚至导致前功尽弃,另外各金融机构可依据自己公司的规模、复杂度等具体设计实施计划。

 

长远意义

 

虽然建立该体系前期投入较大,也需要足够的人员储备,但适合金融行业安全自主掌控的理念。鉴于目前各大金融机构均未建立此测试体系,所以一旦有机构建立,将会有如下长远意义:

 

1、使安全工作从开发源头抓起,实现良性循环,提高应用系统安全性在企业内部的可见度。

 

2、能够提升整个机构整体应用系统安全水平,在行业内树立标杆形象,为商业化运作提供条件。

 

3、目前各大机构都在扩展海外业务,此测试体系的建立可为实施全球业务战略奠定基础。

文章来源:启明星辰
  • 公司总部 | 分支机构 | 法律声明 | 投资者关系 | 400-624-3900 800-810-6038
  • © 启明星辰1996-2015 版权所有 京ICP备05032414号 京公网安备110108003435号