SAST 与 DAST

SAST(静态应用程序安全测试)也被称为“白盒测试”,已经存在了十多年。它允许开发人员在软件开发生命周期的早期发现应用程序源代码中的安全漏洞。在不实际执行底层代码的情况下检测是否符合编码指南和标准,直接面向所有源码,并且可以定位缺陷所在的代码行数。OWASP TOP 10 安全漏洞中60-70%的安全漏洞类型可通过源代码静态分析技术检测出来。

DAST,或动态应用安全测试,也称为“黑盒”测试,可以发现运行中的应用程序的安全漏洞和弱点,通常是web应用程序。通过在应用程序上使用故障注入技术(例如向软件提供恶意数据)来识别常见的安全漏洞,例如SQL 注入和跨站点脚本。DAST 可以聚焦静态分析无法识别的运行时问题,例如身份验证和服务器配置问题,以及仅在已知用户登录时可见的缺陷。

交互式应用程序安全测试 (IAST)

IAST旨在通过结合SAST 和 DAST 两种方法来解决SAST和DAST各自的缺点。IAST在应用程序中放置一个探针,并在开发过程 IDE、持续集成环境、QA 甚至生产中的任何位置实时在应用程序中执行所有分析。

因为IAST探针在应用程序内部工作,它可以将其分析应用于整个应用程序所有代码。其运行控制和数据流信息、它的配置信息、HTTP请求和响应、库及框架和其他组件、以及后端连接信息。

运行时应用程序安全保护 (RASP)

与IAST一样,RASP或运行时应用程序安全保护在应用程序内部工作,但它不是一个测试工具,而是一个安全工具。它被插入到应用程序或其运行时环境中,可以控制应用程序的执行。RASP 保护应用程序,即使网络的外围防御被破坏并且应用程序包含开发团队错过的安全漏洞。RASP允许应用程序对自身进行持续的安全检查,并通过终止攻击者的会话并向防御者发出攻击警报来响应实时攻击。
展开
评论