摘要:应用安全测评是等级保护测评中的重要一环,本文对应用安全测评三级(S3A3G3)要求项的深入理解,并给出了增强Web应用安全性的实用性建议。
关键字:Web安全;等级保护;应用安全测评;渗透测试;工具测试;
0.引言
随着Web应用平台普及越来越广泛,针对Web应用程序的攻击也越来越多,Web应用安全已成为越来越重要的课题,研究表明,大多数的安全漏洞来自于软件设计自身。本文对第三级信息系统的应用安全基本要求进行分析,深入解析三级要求的关键测评项,结合测评实践经验,说明三级信息系统关键测评项的测评要求,并且给出一些建议。
1.Web应用安全测评
1.1Web应用安全概述
Web应用系统具有复杂的架构。从系统角度来看,Web应用系统中的服务器和客户端,可以分成三个层面:应用层、支撑技术和中间件以及底层的计算机资源。具体的应用架构大体上如下图1所示。
保护数据在存储、传输、处理过程中不被泄漏、破坏和免受未授权的修改的信息安全类要求(简记为S);保护系统连续正常的运行,免受对系统的未授权修改、破坏而导致系统不可用的服务保证类要求(简记为A);通用安全保护类要求(简记为G)。
1.2Web应用安全参考标准
OWASP是全球性开源组织,长期致力于发现并解决Web应用安全问题。OWASP发布2013 Top 10RC1版本[1],“2010-A8:没有限制URL访问是现在2013-A7:缺少函数级访问控制”、“合并和扩大2010-A7和2010-A9创建了:2013-A6:敏感数据泄漏”、“增加了2013-A9:利用已知的漏洞组件”。本文以OWASP 2013 TOP 10为蓝本进行下面安全漏洞分类:
拒绝服务:一个攻击者可以从一个主机产生足够多的流量来耗尽很多应用程序提供的有限资源,阻止合法的用户使用系统。
缺少函数级访问控制:实际上所有Web应用程序在UI中使用验证函数级别访问权限。如果请求不验证,攻击者能够伪造请求,以访问未经授权的功能。
敏感数据泄漏:大多数Web应用程序没有正确的保护敏感数据,例如认证证书等,攻击者可以窃取或修改这些数据,可能会导致敏感数据泄漏。
利用已知的漏洞组件:漏洞组件加入被溢出,使用这些脆弱性组建的应用程序可能会影响应用程序的安全性,导致应用程序被攻击的范围和影响扩大。
1.3测评方法
等级保护测评主要包括三种方法,即访谈、检查、测试[2]。针对应用安全检查可以细化成四种方法。
应用访谈:通过与应用系统管理员的交流获取应用系统安全现状的一种手段,但这种方式存在较大的局限性。
安全检查:通过了解应用系统的架构等,对应用系统进行检查、测试等活动,是一种比较直观的方法,但是仅仅适用于身份鉴别、访问控制等常规安全要求的测评。
工具测试:利用协议分析、应用安全扫描等工具,通过对目标系统的扫描、探测等操作,查看、分析响应结果。通常情况下工具测试与渗透测试配合使用。
渗透测试:完全模拟黑客可能使用的攻击技术和漏洞发现技术,对目标系统的安全做深入探测,发现系统最脆弱的环节[3]。
2.Web应用安全测评存在的问题
随着应用安全测评的不断深入开展,应用安全测评逐渐成为信息系统测评中的薄弱环节,主要表现在如下几个方面。
1)应用系统只有在充分了解其部署情况和业务流程后,才能明确测评的范围和对象,有针对性的进行测评。
2)应用系统架构由框架、组件和中间件等多种组成,与平台软件存在关联关系,其安全漏洞不易发现,只能暂时采用规避的手段来实现。
3)应用软件在开发之初对安全需求考虑不足,软件开发商没有邀请专业的第三方机构进行安全测试。
接下来将以第三级(S3A3G3)信息系统作为切入点,具体分析应用安全自身应该满足安全子类哪些方面的要求。
3.Web应用安全测评关键点分析
3.1身份鉴别测评分析
身份鉴别安全控制点主要关注用户身份鉴别的功能,主要包括专用的登录控制模块、采用两种或两种以上组合的鉴别技术等。
测评关键点分析:
1)对于采用两种或两种以上组合的鉴别方式,可以基于数字证书的UKEY等方式,以实现双重的身份认证,强化身份认证功能。
2)Web应用程序应该建立安全策略配置功能,可以实现统一的Web用户安全策略配置,也可以针对每个账户进行单独的安全策略配置。
3.2访问控制测评分析
基于角色访问控制(RBAC)的一个重要特征是支持三条安全准则:最小特权、职责分离和数据抽象,它通过给角色仅配置完成工作所需权限实现最小特权;通过角色静态、动态的互斥实现职责分离;通过对操作的封装实现数据抽象[4]。
测评关键点分析:
1)对于权限可以继续的进行细粒度的控制,例如通过控制模块及数据展示可以实现更加细粒度的权限控制要求,角色如果具有模块级权限,就可以看到该模块页面。
2)可以在RBAC的基础上,为应用系统的功能菜单和操作分配安全标记,安全标记由级别和范畴集组成,其中级别为资源的重要程度;范畴为资源可被使用的范围。
3.3通信保密性测评分析
通信保密性主要关注通信过程中会话,要求采用加密技术来实现初始化会话验证以及对整个通信报文或会话进行加密。
测评关键点分析:
1)Web应用安全一般要保证通信过程数据完整性需要使用https协议来实现,一般Web 服务器具有此类型的证书。
2)SSL要求客户端与服务器之间的所有发送的数据都被发送端加密、接收端解密,同时还检查数据的完整性。
4.结束语
对于第三级的应用安全要求是针对重要信息系统,本文主要通过研究Web应用系统应用层面的安全需求以及安全测试的关键点分析,说明Web应用系统如何保障应用层面的安全性。通过安全需求能够满足大部分要求,除应用层面实现安全需求外,还需要注意应用系统平台的安全,最终保证Web应用系统的相对安全。
参考文献
[1]Category:OWASP Top Ten Project[EB/OL] https://www.owasp.org/index.php/Category:OWASP_Top_Ten_Project
[2]杨磊,郭志博.信息安全等级保护的等级测评[J].北京:中国人民公安大学学报(自然科学版).2007,(1):52
[3]廉明,庄严,程绍银,蒋帆.渗透测试在信息系统等级测评中的应用[J].上海:信息网络安全.2012,(增刊):115
[4]陈旺,李中学,张茂军.角色访问控制和强制访问控制的统一模型研究[J].沈阳:小型微型计算机系统 2008(3).422
论文作者:高琦
论文发表刊物:《电力设备》2017年第6期
论文发表时间:2017/6/14
标签:系统论文; 测试论文; 应用程序论文; 信息系统论文; 访问控制论文; 数据论文; 等级论文; 《电力设备》2017年第6期论文;