软件安全测试与威胁建模全解析
1. 安全测试的核心要点
1.1 安全测试与功能测试的区别
安全测试和功能测试有着显著的差异。在进行安全测试时,需要转变关注点,因为并非所有的消费者都是客户。功能测试主要关注软件是否能正常实现其预定功能,而安全测试则侧重于识别软件中可能存在的安全漏洞。
从测试意图来看,安全测试与功能测试也有所不同。安全测试包含“积极”和“消极”测试。“积极”测试通常验证软件在正常情况下的安全性,而“消极”测试则尝试通过各种异常输入和攻击手段来发现软件的弱点。
在测试过程中,存在测试重叠和精简的情况。同时,需要根据代码的成熟度、复杂度和覆盖率来调整测试的优先级。例如,对于成熟度高、复杂度低的代码,可以适当减少测试的投入;而对于新开发的、复杂度高的代码,则需要重点关注。
1.2 软件漏洞的发现途径
软件漏洞的发现途径主要有以下几种:
- 意外发现 :在日常的测试或使用过程中,偶然发现软件存在的安全漏洞。
- 内部信息 :内部人员可能因为了解软件的内部结构和实现细节,而发现潜在的安全问题。
- 主动搜索 :安全测试人员通过使用各种工具和技术,主动对软件进行安全检测。
我们必须假设攻击者了解我们所知道的一切信息,因为源代码泄露是常见的情况,而且攻击者可以轻易获取各种攻击工具。此外,保密并不等同于安全,软件中的漏洞很可能会被迅速利用,同时社会工程学攻击在各个领域都很有效。
1.3 了解攻击者
为了更好地进
超级会员免费看
订阅专栏 解锁全文
59

被折叠的 条评论
为什么被折叠?



