DevOps 和敏捷方法论改变了软件的开发、构建和迭代方式。CI/CD 管道的落地使得开发和运维团队能够以创纪录的速度进行代码迭代、Bug修复、发布功能并交付产品。
然而,交付速度的提高也会遇到不少关键挑战,在这其中,安全问题正随着网络攻击的频繁而变得越加重要。在产品发布上线前,所有阶段都必须有一层自动安全检查,包括代码测试和漏洞检查。
以下是几款非常有用的DevOps 安全工具,可用于加强CI /CD 管道的安全性和合规性。
01
—
Trivy
容器漏洞扫描
使用云计算时,您必然会使用容器、应用程序映像和 Kubernetes。Trivy 是一个开源项目,旨在简化应用程序镜像扫描,使用可信数据库来验证任何已知漏洞。
作为 DevOps 安全工具,Trivy快速、灵活,并且可以在几秒钟内与漏洞数据库进行交叉引用(快速扫描)。此外,它支持许多操作系统包,可以扫描存储库、文件系统,并且很容易在 CI 中实现。
例如:
02
—
Gerrit
代码审查
Gerrit 是另一个直接在团队工作流程中工作的 DevSecOps 工具,允许对每次合并和提交进行审查或测试是否存在漏洞。Gerrit通过突出显示问题并允许对特定代码部分进行注释和评论,从而帮助团队更好地沟通。
您还可以构建自己的插件或享受社区为增强 Gerrit 代码审计而制作的许多插件。
社区每天不断更新和创建的一些插件包括:
03
—
OWASP Dependency-Check
构建组合分析
开发人员通常会使用其他人发布的依赖包来构建他们的应用程序,但有时它们可能包含来自危险源的错误代码。通常,使用上述依赖项的开发人员不会意识到这些问题,这会使你的应用程序在使用时遭受潜在的攻击。
OWASP 扫描有关此类依赖项的所有报告,指出缺陷和漏洞,并建议可能的修复方案。
04
—
Arachni
测试
DevSecOps 工具在开发过程的测试阶段旨在将应用程序置于实时工作流程中,测试身份验证、API 端点、SQL 注入和用户相关的应用程序流程。Arachni是一个功能强大的开源项目,可以多次扫描 Web 测试的脚本化审核(使用 Ruby),同时可以轻松集成到 CI/CD 中。
Arachni 支持 Mac OS X、Microsoft Windows 和 Linux,可以轻松在云服务器上使用。由于其 Ruby 库允许执行复杂的脚本扫描,因此使用 Arachni 进行部署非常容易。它还能够使用命令行界面执行快速扫描。安装它就像下载并解压一个包一样简单,然后就可以运行测试了。
05
—
Falco
部署运行时验证
应用程序经过整个开发和安全验证过程后,必须在上生产环境前通过最后一系列测试。这些测试旨在检查仅在实时生产环境中才会发生的稳定性、漏洞和错误。本质上, Falco测试不一致的一些点包括:
由于此 DevSecOps 工具位于开发的最后一步,因此它具有对策略违规的即时警报和高度可配置的规则引擎,可满足任何团队或应用程序的需求。它具有强大的默认配置,即使很少交互,也将为您提供一个坚实的起点。