Go 博客
Govulncheck v1.0.0 发布!
我们很高兴地宣布,govulncheck v1.0.0 和用于将扫描集成到其他工具中的 API v1.0.0 已发布!
Go 对漏洞管理的支持已于去年九月首次宣布。此后我们进行了多项更改,最终促成了今天的发布。
本文介绍了 Go 更新的漏洞工具以及如何开始使用它。我们还于近期发布了安全最佳实践指南,以帮助您优先处理 Go 项目中的安全问题。
Govulncheck
Govulncheck 是一个命令行工具,可帮助 Go 用户查找其项目依赖项中已知的漏洞。该工具可以分析代码库和二进制文件,并通过优先处理代码实际调用的函数中的漏洞来减少噪音。
您可以使用 go install 安装最新版本的 govulncheck
go install golang.org/x/vuln/cmd/govulncheck@latest
然后在您的模块内运行 govulncheck
govulncheck ./...
有关如何开始使用该工具的更多信息,请参阅 govulncheck 教程。
从本次发布开始,现在有一个稳定的 API 可用,可在 golang.org/x/vuln/scan 找到。此 API 提供与 govulncheck 命令相同的功能,使开发人员能够将安全扫描程序和其他工具与 govulncheck 集成。例如,请参阅 osv-scanner 与 govulncheck 的集成。
数据库
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 开发人员工作流程的一部分。
Go 漏洞数据库的数据可在 pkg.go.dev/vuln 浏览。漏洞信息也会显示在 pkg.go.dev 的搜索和程序包页面上。例如,golang.org/x/text/language 的版本页面显示了模块旧版本中的漏洞。
您还可以使用 Visual Studio Code 的 Go 扩展程序直接在编辑器中运行 govulncheck。请参阅教程开始。
最后,我们知道许多开发人员希望在 CI/CD 系统中运行 govulncheck。作为起点,我们为 govulncheck 提供了GitHub Action 以便集成到您的项目中。
视频演示
如果您对上面介绍的集成有一个演示感兴趣,我们今年在 Google I/O 的演讲 使用 Go 和 Google 构建更安全的应用程序 中进行了这些工具的演示。
反馈
一如既往,我们欢迎您的反馈!有关如何贡献和帮助我们改进的详细信息。
我们希望您觉得 Go 漏洞管理支持的最新版本很有用,并与我们一起构建一个更安全、更可靠的 Go 生态系统。
下一篇文章:分享您在 Go 开发方面的反馈
上一篇文章:Go 1.21 Release Candidate
博客索引