摘要

近年来,软件系统安全问题正引发越来越多的关注,系统存在的安全威胁容易被攻击者所利用,攻击者通常采用各种攻击技术诸如口令暴力破解、网络钓鱼、SQL注入等对系统进行攻击.威胁建模是一种结构化分析、识别并处理威胁的方法,传统的测试主要集中在测试代码缺陷,处于软件开发后期,不能很好地对接前期威胁建模分析成果以构建安全的软件,业界威胁建模工具缺少进一步生成安全测试的功能.为了应对此问题,提出一种从威胁模型生成安全测试用例的框架,并设计和实现工具原型.为了便于测试,对传统的攻击树模型进行改进,对构建的模型进行规范性检查,从该模型中可以自动生成测试线索.根据攻击节点发生概率对测试线索进行评估,优先检测概率较高的威胁的测试线索.对防御节点进行评估,选择收益性较高的防御方案缓解威胁,以改进系统安全设计.通过为攻击节点设置参数可以将测试线索转换成具体的测试用例.在软件开发早期阶段以威胁建模识别出的威胁作为输入,通过框架和工具可以生成测试,指导后续的安全开发和安全测试设计,将安全技术更好地嵌入到软件设计和开发之中.案例研究部分将该框架和工具运用于极高危风险的安全测试生成,并说明了其有效性.

  • 单位
    南京大学; 计算机软件新技术国家重点实验室

全文