安全测试是在IT软件产品的生命周期中,特别是产品开发基本完成到发布阶段,对产品进行检验以验证产品符合安全需求定义和产品质量标准的过程,可以说,安全测试贯穿于软件的整个生命周期。下面通过一张图描述软件生命周期各个阶段的安全测试,如下图所示。
上图中的风险分析、静态分析、渗透测试都属于安全测试的范畴,与前面介绍的普通测试相比,安全测试需要转换视角,改变测试中模拟的对象。下面从以下维度比较常规测试与安全测试的不同。
(1)测试目标不同
普通测试以发现Bug为目标;安全测试以发现安全隐患为目标。
(2)假设条件不同
普通测试假设导致问题的数据是用户不小心造成的,接口一般只考虑用户界面;安全测试假设导致问题的数据是攻击者处心积虑构造的,需要考虑所有可能的攻击途径。
(3)思考域不同
普通测试以系统所具有的功能为思考域;安全测试的思考域不但包括系统的功能,还有系统的机制、外部环境、应用和数据自身安全风险与安全属性等。
(4)问题发现模式不同
普通测试以违反功能定义为判断依据;安全测试以违反权限与能力的约束为判断依据。
作者:千锋教育qyf
原文链接:http://blog.itpub.net/69996644/viewspace-2768427/