基于移动应用安全防护能力评估方法研究

2018-07-07 07:17孔金阳覃蓝锋綦招寅牟永瑞
网络安全技术与应用 2018年7期
关键词:开发者代码流程

◆孔金阳 覃蓝锋 綦招寅 牟永瑞 孟 鑫



基于移动应用安全防护能力评估方法研究

◆孔金阳 覃蓝锋 綦招寅 牟永瑞 孟 鑫

(新疆大学软件学院 新疆 830000)

随着科技的不断发展,移动应用安全问题逐渐成为国内外的关注重点,为了加强移动应用的安全防护性能,需要加强对安全防护性能评估方法的研究。本文主要围绕开发流程、能力类型、能力要素、能力分级等方面展开讨论,分析了移动应用在开发各阶段应具备的安全性能,并根据相关技术措施对安全强度进行了等级的划分,进一步提出提高安全防护能力的针对性措施。

移动应用;安全防护;检测体系

0 前言

互联网对社会发展与人民生活产生了深刻影响,其具备的社交属性、工具属性以及社会动员功能逐渐凸显,成为人们工作生活中不可或缺的组成部分。这种情况下,多种移动应用逐渐出现。但是由于开发商安全意识较差,对产品的安全要求不足,从而造成移动应用的安全威胁明显提高。为了解决这一问题,需要加强有关移动应用安全性能的研究,并对应用安全等级进行合理评价,以便保证移动应用使用安全性。

1 国内外移动应用安全防护情况

当移动应用开发过程中没有采取有效的安全控制手段,将导致应用产生较多漏洞,使用户处于安全风险之下。因此,需要在应用开发各环节进行风险控制,在对风险因素有一定掌握后,不断提升应用的安全性能。从国外情况来看,在应用安全性能提高上主要以行业标准和国家规范的引导作用为主,并针对应用本身提出安全要求,从而加强移动应用的安全防护能力和用户信息安全。以美国国家为例,相关技术研究院从管理角度出发,提出规范企业评估应用可靠性的方法,并对应用运行过程中可能存在的风险漏洞进行分类,为企业提供参考依据。

对国内而言,邦邦安全、阿里聚安全等企业的业务范围逐渐扩展到移动应用的开发上,安全服务行业加强了对应用安全性能标准制定的重视[1]。2015年,阿里巴巴、中国联合通信公司、通信研究院等联合提出移动应用安全规范,以应用开发周期可靠为基础,为应用开发者进行技术指导。2015年,通付盾在智能终端会上提出《移动软件安全开发手册》,主要是为了从应用开发着手,减少由于代码漏洞造成的信息泄露,为开发者提供充足知识资源。由此可见,安全服务企业、终端厂商和科研机构等都注重对移动应用安全性能提升的探索。从整体上看,我国现阶段需要尽快建立一套运用在应用安全风险控制上的评估体系。

2 评估架构

在对移动应用安全性能进行评估分析时,需要从移动应用的开发基础流程角度考虑,详细分析移动应用可能存在的安全威胁和它应该具有的安全防护能力。通过对应用开发实际情况与国内外有关研究成果总结分析后,可得到移动应用应体现的安全能力,再次利用技术手段加大移动应用安全强度并进行安全等级的划分,最终形成移动应用安全性能评估的整体框架。以图1某APP应用为例。

2.1 开发流程

从开发流程来看,移动应用的开发具有项目周期短、规模小和开发紧凑的特点。移动应用开发包括需求分析、框架设计、编写代码、测试验证、实际应用和运维监控等阶段。其中需求分析阶段指的是结合移动应用业务场景、行业标准以及用户需求等,对移动应用应具备的功能进行明确的需求分析;而框架分析阶段主要是根据需求分析结果,确定移动应用的系统框架及业务逻辑;在编写代码阶段,需要开发者将架构设计成果转变为可在终端运行的代码;测试验证这一阶段是以已经设定的验证基准为主,进行移动应用的安全测试,并对其中存在的问题加以解决;应用阶段要求开发者对安全达标的应用进行验收审核,审核通过的应用可投放到市场;运维监控这个阶段指的是移动应用上线后,要求应用开发者对其进行日常的监控及运行维护。

图1 智能移动某APP开发平台

2.2 能力类型

移动应用开发流程主要包括6个阶段,根据各阶段应用需要具备的安全防护能力的特点,将应用应具有的安全防范能力分为设计安全保证、应用交付加固、代码风险防范、使用风险管理等类型[2]。设计安全保障能力与应用开发流程中的需求分析以及架构设计阶段相对应,要求开发者有较强的设计安全保障能力,可确保安全设计要求分析的合理性、制定科学的质量目标。开发者可制定并实施安全设计规范标准,通过电子化和自动化等工具的利用,使安全保证能力体现在应用需求分析与架构设计等阶段。

代码风险控制能力与开发过程中的编码开发及测试阶段相对应。开发者需要具有代码风险控制能力,保证代码编写成果满足应用的安全质量需求,避免出现由于代码安全缺陷而产生安全风险的现象。如应用开发者会遵循安全编码原则,将第三方代码结合到审核机制中,借助安全测试工具来保证代码开发及测试等阶段应用代码风险控制能力的实现。应用交付加固这一功能与应用开发过程中的交付阶段对应,开发者需要具备实现交付加固功能的能力,保证终端应用软件包的安全性和可信性。应用开发者可利用自研或第三方工具来加强移动应用的应付加固能力。

2.3 能力要素

在对移动应用的开发流程和能力类型有一定了解后,分析出移动应用应具备设计安全保证、使用风险控制、代码风险规范等能力要素。按照安全能力等级标准,对不同能力要素的安全能力要求有所差异,通常来讲,级别越高的安全能力,对它的安全要求越高。因此,为了保证移动应用安全能力评估准确性,应对安全能力等级分析,为评估过程的顺利进行提供基础条件。

2.4 能力分级

按照技术实现的难度和必要性,可将终端应用开发安全防护能力从低到高分成一级、二级和三级能力。一级能力要求:主要是指移动应用运行环境可靠,在应用没有被恶意篡改的情况下,要求移动应用能稳定运行,确保终端应用执行效果和用户使用安全;二级能力要求:是指在一级能力指标基础上,增加执行监控和安全加固等要求,对运行环境容易受到外界威胁的运行情况下,提出更强的安全技术措施和安全策略等;三级能力要求:是在满足二级安全标准的前提下,再次增加对移动应用开发者自身安全风险发现、通报和安全漏洞等能力的要求。要求安全控制策略能涉及应用开发整个流程,而在移动应用安全防护上,要求防护强度继续保持。总的来讲,在对终端应用安全防护能力分类、能力要素和能力等级有一定了解后,可为应用安全防护能力评估体系的建立,以及安全性能测试方法的制定提供参考依据,进一步得到有效的评估结果。同时,可指导应用安全开发流程,促使应用开发者应用安全意识与能力不断提高,帮助开发者加强应用抵抗外界威胁的能力。

3 结论

综上所述,移动应用安全性对社会进步和人们生活工作都有一定影响,尤其在互联网技术不断普及的背景下,为移动应用的开发创造了良好条件,但是加大了移动应用的安全威胁性。针对这一问题,国内外分别采取了相应的解决措施,探索了移动应用的开发流程,对各阶段可能存在的安全问题进行评估,在不断实践中,逐渐形成移动应用安全性能评估框架,为移动应用开发的良性发展奠定基础。

[1]于成丽.移动应用安全防护能力评估方法研究[J].电信网技术,2017.

[2]常玲,赵蓓.移动应用安全防护技术研究[J].电信工程技术与标准化,2016.

大学生创业训练项目(项目编号:201710755037)。

猜你喜欢
开发者代码流程
吃水果有套“清洗流程”
创世代码
创世代码
创世代码
创世代码
违反流程 致命误判
四川省高考志愿填报流程简图
“85后”高学历男性成为APP开发新生主力军
析OGSA-DAI工作流程
16%游戏开发者看好VR