安全测试是在IT软件产品的生命周期中,特别是产品开发基本完成到发布阶段,对产品进行检验以验证产品符合安全需求定义和产品质量标准的过程。安全是软件产品的一个重要特性,也是CNAS测试认证中非常重要的项目,本系列文章我们与大家分享软件安全测试的流程、方法以及软件测试工具等内容,帮助大家快速掌握软件安全测试。前面的文章中我们为大家介绍了安全测试的需求分析和用例设计,本文我们继续为大家介绍安全测试中的测试执行环节。
测试执行指的是根据设计的测试用例及实施验证方法进行测试、分析。同用例设计环节一样,我们可以从身份鉴别、访问控制、数据安全、安全审计、漏洞扫描、抗抵赖性、接口安全、密码应用、个人信息保护、剩余信息保护验证、组件安全、业务安全测试这些方面着手安全测试。
身份鉴别
人工检查系统登录模块,用户及口令相关配置,并进行登录等相关的操作,验证相关测试项是否符合预期的安全要求。
访问控制
人工检查系统权限、密码相关设置,并进行相关的功能操作权限测试,验证相关测试项是否符合预期的安全要求。
数据安全
使用WireShark软件测试工具,截取系统的相关数据,验证数据的完整性、保密性是否符合预期的安全要求。人工检查系统的数据备份恢复相关设置,并进行相应的数据备份、恢复操作,验证数据备份恢复是否符合预期的安全要求。
安全审计
人工检查系统的相关功能操作日志,验证相关测试项是否符合预期安全要求。
漏洞扫描
1、进行应用程序漏洞扫描
根据测试内容,指定相应扫描策略,使用安全测试工具绿盟进行扫描,做好规则配置,进行扫描。
2、漏洞扫描结果分析
根据对漏洞原理的理解,对测试工具的扫描结果进行分析:查看漏洞详情,并根据原理进行验证,确认漏洞的有效性,排除误报漏洞。以常见漏洞为例:
(1)跨站点脚本编制
攻击者将恶意代码注入到Web客户端,从而影响到其他浏览此Web界面的用户。
(2)跨站点请求伪造
跨站点请求伪造是攻击者可以在第三方站点制造HTTP请求并以用户在目标站点的登录态发送到目标站点,而目标站点未校验请求来源使第三方成功伪造请求。一般系统以请求头中Referer作为请求来源校验,若测试响应与原始响应完全相同,则存在问题,
(3)已解密的登录请求
已解密的登录请求是指用户名、密码字段未经加密即进行了传递。
查看扫描结果中测试请求,分析用户名、密码参数是否加密传输。
(4)注销后会话未失效
在认证用户或者以其他方式建立新用户会话时,如果不使任何现有会话标识失效,攻击者就有机会窃取已认证的会话。
抗抵赖性
采用Wireshark软件测试工具抓包分析,或者人工审查系统源代码,检查软件是否采用MAC或数字签名技术保证系统抗抵赖性。
接口安全
同“身份鉴别”、“访问控制”、“数据安全”、“安全审计”的测试方法。
密码应用
使用源代码审查工具Fortify,测试软件采用的加密算法,以及算法实现是否符合预期的安全要求;采用Wireshark工具抓包分析,或者人工审查系统源代码,或通过使用密码算法验证工具(如
转载请注明:http://www.0431gb208.com/sjsbszl/3820.html