静态应用程序安全性测试(SAST)的经典挑战是弥合安全性与开发之间的差距。在SAST的早期,它是安全专业人员的工具,他们将预发布扫描的结果扔给开发人员进行修复。开发人员必须处理大量不明确的发现和错误的阳性结果,这些结果通常出现在软件开发生命周期(SDLC)的晚期。在过去的几年里,随着DevSecOps的发展,安全专业人员越来越意识到需要向左转移,并在过程的早期与开发人员接触,但工具主要集中在安全角色上。

当我在听供应商简报的时候The Forrester Wave™:静态应用安全测试,2021年第一季度,“市场的变化之大令我震惊。在SAST市场上,几乎每个供应商都在考虑开发人员的问题。SAST工具现在已经很好地集成到开发人员工具链中,许多开发人员应该能够在他们的集成开发环境(ide)、票务工具、构建工具或代码存储库中执行和响应所有的SAST功能:

  • 在IDE中,开发人员可以运行扫描、查看结果,并按照链接到解释和代码示例。在最好的情况下,开发人员可以直接从IDE访问上下文的、交互式的、安全的开发培训。
  • 许多SAST工具会自动将安全漏洞映射到Jira等票务工具中的项目和严重程度,如果后续扫描显示漏洞已被修复,一些工具甚至会自动解决票务。
  • 在Jenkins等构建工具中,SAST将在构建时启动扫描,并根据结果通过或失败构建。质量门,帮助确定构建是否可以基于发现的缺陷的严重程度,甚至它们的年龄。
  • 在代码存储库中,集成了SAST工具,允许在合并或提取时自动扫描代码。
  • 由于总是有例外,顶级的SAST工具允许开发人员提出变通办法,例如将问题推迟到下一个版本,并为批准此类请求提供完整的工作流程。

在SAST Wave中评估的所有供应商都做得同样好吗?当然不是。然而,所有这些公司都通过与开发工具的更深入的集成来支持他们对开发人员的关注。如果您还没有研究过SAST工具如何更好地支持您的开发团队,那么现在是时候重新研究一下了。查看完整的报告在这里