目录
背景
目前安全测试一般都存在如下问题:
- 安全测试人员不懂业务,业务测试人员不懂安全,安全测试设计出现遗漏是无法避免的
- 安全测试点繁多复杂,单点分析会导致风险暴露,不安全
目前的状态:
- TR2阶段测试人员根据开发人员提供的story威胁分析设计文档,检查已有的削减措施是否正常实现
- 检查建议的削减措施是否合理,待版本转测试后对削减措施进行多角度测试,确保削减措施被正确实施并真正削减产品分析出的威胁。
基于以上两点需要一套完整的,连贯的方法指导安全及业务特性的安全测试设计,TM(ThreatModeling,威胁建模)安全测试设计方法应运而生。
TM(ThreatModeling)
威胁建模的本质:尽管通常我们无法证明给定的设计是安全的,但我们可以从自己的错误中汲取教训并避免犯同样的错误。
TM主要的理论、实践来源是微软的STRIDE威胁建模方法论,它从6个维度来考察系统设计时存在的来自外部威胁的风险点。
首先需要知道什么样的设计是“安全的”,安全设计原则:
设计 | 安全原则 |
---|---|
开放设计 | 假设攻击者具有源代码和规格。 |
故障安全预设值 | 出故障时自动关闭,无单点故障。 |
最低权限 | 只分配所需的权限。 |
机制经济性 | 保持简单、易懂的特性。 |
分离权限 | 不允许根据单一条件执行 |