了解持续安全验证
如今,开发人员会毫不犹豫地使用公共包源(例如 npm 或 NuGet)中提供的组件。
借助更快的交付和更高的工作效率,许多组织都鼓励使用开源软件 (OSS) 组件。
但是,随着对这些第三方 OSS 组件的依赖性增加,安全漏洞或隐藏的许可证要求的风险也会增加符合性问题。
对于企业来说,这一点至关重要,因为与合规性、责任和客户个人数据相关的问题可能会带来许多隐私和安全方面的顾虑。
在发布周期早期识别此类问题会提供高级警告,并留有足够的时间来解决问题。 值得注意的是,发现问题的项目阶段越早,纠正问题的成本就越低。
许多工具都可以在生成和发布管道中扫描这些漏洞。
合并完成后,CI 生成应在拉取请求 (PR-CI) 过程中执行。
通常,这两次运行之间的主要区别在于,PR-CI 过程不需要在 CI 生成中执行任何打包/暂存。
这些 CI 生成应运行静态代码分析测试,以确保代码遵循维护和安全性的所有规则。
可使用多种工具来完成这一测试:
- SonarQube。
- Visual Studio 代码分析与 Roslyn 安全分析器。
- Checkmarx - 静态应用程序安全测试 (SAST) 工具。
- BinSkim - 二进制静态分析工具,可为 Windows 可移植可执行文件等提供安全性和正确性结果。
许多工具无缝集成到 Azure Pipelines 生成过程中。 请访问 Visual Studio Marketplace,详细了解这些工具的集成功能。
此外,若要使用 CI 生成验证代码质量,其他两个繁琐或已忽略的验证会扫描第三方包中的漏洞和 OSS 许可证使用情况。
当我们问及第三方包的漏洞和许可证时,回答会是担心或不确定。
尝试管理第三方包的漏洞或 OSS 许可证的组织解释称其过程繁琐且需要手动完成。
幸运的是,利用 Mend Software 的工具几乎可即刻完成此识别过程。
在稍后的模块中,我们将探讨如何集成多个有用且常用的安全性和合规性工具。