background image

互,将故障注入技术用于软件安全性测试的一种故障模型。该项目通过修改某些协议中的数
据,支持的协议有

HTTP、HIP、WAP、SNMP 等。故障注入就是通过故障注入函数,进行故障

模拟,并使程序强制进入某些特定状态,而使用常规的测试技术是很难查看到的。

 

  

2.2 基于自盒的安全性测试 

  基于自盒的安全测试主要是静态分析,主要考察缓冲区溢出、数据竞争等安全性缺陷代
码模式,主要的技术分析有数据流分析、技术型推断和约束分析。为了在程序运行的时候插
入攻击代码,测试安全机制是否真正可用,

Lori Pollock 和 Ben Breech 提出一种基于动态编

译技术的安全测试框架,主要用来测试基于程序的攻击。

 

  

2.3 攻击树理论与威胁模型 

  安全性研究方法大致可分为:基于漏洞的方法、基于威胁的方法。前者是为了识别软件
的安全漏洞,主要是从软件的内部考虑软件的安全性。而后者是通过分解应用程序(识别入
口点,出口点,数据流描述),识别要保护的资产等步骤,来识别软件所面临的安全威胁
并测试是否能够正常发生。最常用的威胁分类方法有篡改、欺骗、信息泄露、否认、拒绝服务等
等,简称

STRIDE。 

  

2.4 基于模型的安全功能测试 

  

Mark blackbum 与 Robert Busser 研究出基于模型的安全功能测试,该模型安全功能测

试常用的模型有:

UML 模型有限状态机两种。这种方法的适用范围取决于安全功能的建模

能力,是一种较为一般的安全功能测试。

 

  

3 软件安全性测试工具分类与功能 

  为了更好地验证系统安全机制是否有效,及时地查找软件中的漏洞,检测系统的运行
是否正常,最近几年产生了很多功能强大的安全性测试工具,这不仅大大地提高了软件安
全性的测试效率,而且在很大的程度上也降低了软件的安全风险,为软件的顺利运行提供
了一个良好的环境。

 

  在当前的市面上,主流的软件安全测试工具有源代码分析器、字节码扫描器、网络漏洞
扫描器、配置分析工具、网络应用漏洞扫描器、网络服务扫描器、动态分析工具、数据库脆弱性
扫描器、设计验证工具等,这些安全性测试工具的出现与应用,让软件安全性测试技术得到
了进一步的飞跃,加快了软件的发展进程。

 

  

4 结束语 

  本文通过具体的案例,分析了软件安全性测试的分类、特点、主要测试方法、安全性测试
工具分类与功能,深入探析软件安全性测试。软件的安全性测试是通过相关的工程技术,为
了尽可能地避免人为很难发现的技术缺陷和安全风险,最大限度地保障人民的生命财产安
全而开发的一个工程技术,是软件开发中的一个重要的组成部分。如何通过完善的文档资料,
技术分析,测试方案,最大限度的实现测试覆盖,并发现软件瑕疵,是所有的软件技术人
员面临及应思考的问题。

 

  参考文献

 

  

[1]毕媛媛,陈锦平.基于模型的安全静态检测技术[J].硅谷,2012(08). 

  

[2]李明,高勇.基于语法的软件安全检测[J].信息安全与通信保密,2011(06). 

  

[3]刘东飞.故障树分析技术在软件测试中的运用[J].软件导刊,2011(07). 

  

[4]王之.参透测试技术与模型研究[J].计算机与信息技术,2011(05).