原文在这里
原文作者:Julie Qiu, for the Go security team 发布于 13 July 2023
我们很高兴地宣布,govulncheck v1.0.0 已经发布,同时还发布了用于将扫描集成到其他工具中的 API 的 v1.0.0 版本!
Go对漏洞管理的支持首次在去年九月宣布。自那以后,我们进行了多次更改,最终在今天发布了最新版本。
这篇文章介绍了Go更新后的漏洞工具,并说明了如何开始使用它。我们最近还发布了一份安全最佳实践指南,帮助你在Go项目中优先考虑安全性。
Govulncheck是一个命令行工具,帮助Go用户在项目依赖中查找已知的漏洞。该工具可以分析代码库和二进制文件,并通过优先考虑实际调用你代码的函数中的漏洞来减少干扰。
你可以通过go install来安装最新版:
$ go install golang.org/x/vuln/cmd/govulncheck@latest
然后在你的项目中执行govulncheck:
$ govulncheck ./...
请查看govulncheck教程,以获取有关如何开始使用该工具的其他信息。
在v1.0.0版本中,现在有一个稳定的API可用,该API的说明位于golang.org/x/vuln/scan。该API提供了与govulncheck命令相同的功能,使开发人员能够将安全扫描器和其他工具与govulncheck集成。例如,可以查看与govulncheck集成的osv-scanner示例。
Govulncheck由Go漏洞数据库https://vuln.go.dev提供支持,该数据库提供了关于公共Go模块中已知漏洞的详尽信息。您可以在pkg.go.dev/vuln上浏览数据库中的条目。
自初始发布以来,我们已更新了数据库API以提高性能并确保长期的可扩展性。提供了一个实验性工具来生成您自己的漏洞数据库索引,位于golang.org/x/vulndb/cmd/indexdb。
如果您是Go包维护者,我们鼓励您贡献关于您项目中公开漏洞的信息。
有关Go漏洞数据库的更多信息,请参见go.dev/security/vuln/database。
漏洞检测现已集成到许多Go开发人员常用的工具套件中。
可以在 pkg.go.dev/vuln 上浏览来自Go漏洞数据库的数据。漏洞信息还会在pkg.go.dev的搜索和包页面中显示。例如,golang.org/x/text/language的版本页面会显示该模块旧版本中的漏洞。
您还可以使用Visual Studio Code的Go扩展直接在编辑器中运行 govulncheck。详细操作请参见教程。
最后,我们知道许多开发人员希望将 govulncheck 作为CI/CD系统的一部分运行。作为起点,我们为 govulncheck 提供了一个GitHub Action,以便与您的项目集成使用。
如果您对上述集成感兴趣,今年我们在Google I/O大会上展示了这些工具的演示,我们在演讲中介绍了如何使用Go和Google构建更安全的应用程序。
我们一如既往地欢迎您的反馈!请查看有关如何贡献和帮助我们进行改进的详细信息。
我们希望您会发现Go对漏洞管理的最新支持对您有用,并与我们一起建立更安全可靠的Go生态系统。
声明:本作品采用署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)进行许可,使用时请注明出处。
author: mengbin
blog: mengbin
github: mengbin92
cnblogs: 恋水无意