Help us learn about your current experience with the documentation. Take the survey.

动态应用安全测试 (DAST)

  • 级别:Ultimate
  • 提供:GitLab.com、GitLab 自托管、GitLab 专用

基于 DAST 代理的分析器在 GitLab 16.9 中被弃用, 在 GitLab 17.3 中被移除。 此更改是一个破坏性变更。有关如何从基于 DAST 代理的分析器迁移到 DAST 版本 5 的说明, 请参阅基于代理的迁移指南。 有关如何从 DAST 版本 4 的基于浏览器的分析器迁移到 DAST 版本 5 的说明, 请参阅基于浏览器的迁移指南

动态应用安全测试 (DAST) 运行自动化渗透测试,以在您的 Web 应用程序和 API 运行时发现漏洞。 DAST 自动化黑客的方法,并模拟针对关键威胁(如跨站脚本攻击 (XSS)、SQL 注入 (SQLi) 和跨站请求伪造 (CSRF))的实时攻击,以发现其他安全工具无法检测到的漏洞和错误配置。

DAST 完全独立于语言,从外部检查您的应用程序。DAST 扫描可以在 CI/CD 管道中运行、按计划运行, 或按需手动运行。在软件开发生命周期中使用 DAST,可以在部署到生产环境之前发现应用程序中的漏洞。 DAST 是软件安全的基础组件,应与其他 GitLab 安全工具一起使用,以提供对应用程序的全面安全评估。

概览请参见 动态应用安全测试 (DAST) - 高级安全测试

GitLab DAST

GitLab DAST 和 API 安全分析器是专用的运行时工具,为现代 Web 应用程序和 API 提供广泛的安全覆盖。

根据您的需求使用 DAST 分析器:

  • 要扫描基于 Web 的应用程序(包括单页 Web 应用程序)以查找已知漏洞, 请使用 DAST 分析器。
  • 要扫描 API 以查找已知漏洞,请使用 API 安全 分析器。 支持 GraphQL、REST 和 SOAP 等技术。

分析器遵循保护您的应用程序中描述的架构模式。 每个分析器都可以通过使用 CI/CD 模板在管道中进行配置,并在 Docker 容器中运行扫描。 扫描输出 DAST 报告工件, GitLab 使用它来确定源分支和目标分支之间扫描结果差异所发现的漏洞。

查看扫描结果

检测到的漏洞出现在合并请求管道安全选项卡漏洞报告中。

管道可能包含多个作业,包括 SAST 和 DAST 扫描。如果任何作业因任何原因未能完成, 安全仪表板不会显示 DAST 扫描器输出。例如,如果 DAST 作业完成但 SAST 作业失败, 安全仪表板不会显示 DAST 结果。失败时,分析器会输出退出代码。

列出已扫描的 URL

当 DAST 完成扫描时,合并请求页面会显示已扫描的 URL 数量。 选择 查看详情 以查看包含已扫描 URL 列表的 Web 控制台输出。