Govulncheck v1.0.0 发布了!

2023-10-16 19:44:50 浏览数 (1)

原文在这里[1]

原文作者:Julie Qiu, for the Go security team 发布于 13 July 2023

我们很高兴地宣布,govulncheck v1.0.0 已经发布,同时还发布了用于将扫描集成到其他工具中的 API 的 v1.0.0 版本!

Go对漏洞管理的支持首次在去年九月宣布[2]。自那以后,我们进行了多次更改,最终在今天发布了最新版本。

这篇文章介绍了Go更新后的漏洞工具,并说明了如何开始使用它。我们最近还发布了一份安全最佳实践指南[3],帮助你在Go项目中优先考虑安全性。

Govulncheck

Govulncheck[4]是一个命令行工具,帮助Go用户在项目依赖中查找已知的漏洞。该工具可以分析代码库和二进制文件,并通过优先考虑实际调用你代码的函数中的漏洞来减少干扰。

你可以通过go install[5]来安装最新版:

代码语言:javascript复制
$ go install golang.org/x/vuln/cmd/govulncheck@latest

然后在你的项目中执行govulncheck:

代码语言:javascript复制
$ govulncheck ./...

请查看govulncheck[6]教程,以获取有关如何开始使用该工具的其他信息。

在v1.0.0版本中,现在有一个稳定的API可用,该API的说明位于golang.org/x/vuln/scan[7]。该API提供了与govulncheck命令相同的功能,使开发人员能够将安全扫描器和其他工具与govulncheck集成。例如,可以查看与govulncheck集成的osv-scanner示例[8]。

数据库

Govulncheck由Go漏洞数据库https://vuln.go.dev[9]提供支持,该数据库提供了关于公共Go模块中已知漏洞的详尽信息。您可以在pkg.go.dev/vuln[10]上浏览数据库中的条目。

自初始发布以来,我们已更新了数据库API[11]以提高性能并确保长期的可扩展性。提供了一个实验性工具来生成您自己的漏洞数据库索引,位于golang.org/x/vulndb/cmd/indexdb[12]。

如果您是Go包维护者,我们鼓励您贡献关于您项目中公开漏洞的信息[13]。

有关Go漏洞数据库的更多信息,请参见go.dev/security/vuln/database[14]。

集成

漏洞检测现已集成到许多Go开发人员常用的工具套件中。

可以在 pkg.go.dev/vuln 上浏览来自Go漏洞数据库的数据。漏洞信息还会在pkg.go.dev[15]的搜索和包页面中显示。例如,golang.org/x/text/language[16]的版本页面会显示该模块旧版本中的漏洞。

您还可以使用Visual Studio Code的Go扩展直接在编辑器中运行 govulncheck。详细操作请参见教程[17]。

最后,我们知道许多开发人员希望将 govulncheck 作为CI/CD系统的一部分运行。作为起点,我们为 govulncheck 提供了一个GitHub Action[18],以便与您的项目集成使用。

视频演示

如果您对上述集成感兴趣,今年我们在Google I/O大会上展示了这些工具的演示,我们在演讲中介绍了如何使用Go和Google构建更安全的应用程序[19]。

反馈

我们一如既往地欢迎您的反馈!请查看有关如何贡献和帮助我们进行改进的详细信息[20]。

我们希望您会发现Go对漏洞管理的最新支持对您有用,并与我们一起建立更安全可靠的Go生态系统。

声明:本作品采用署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)[21]进行许可,使用时请注明出处。 author: mengbin[22] blog: mengbin[23] github: mengbin92[24] cnblogs: 恋水无意[25]

References

[1] 这里: https://go.dev/blog/govulncheck [2] 宣布: https://go.dev/blog/vuln [3] 安全最佳实践指南: https://go.dev/security/best-practices [4] Govulncheck: https://golang.org/x/vuln/cmd/govulncheck [5] go install: https://pkg.go.dev/cmd/go#hdr-Compile_and_install_packages_and_dependencies [6] govulncheck: https://go.dev/doc/tutorial/govulncheck [7] golang.org/x/vuln/scan: https://golang.org/x/vuln/scan [8] govulncheck集成的osv-scanner示例: https://github.com/google/osv-scanner/blob/d93d6b73e90ae392fe2b1b64a33bda6976b65b2d/internal/sourceanalysis/go.go#L20 [9] https://vuln.go.dev: https://vuln.go.dev/ [10] pkg.go.dev/vuln: https://pkg.go.dev/vuln [11] 数据库API: https://go.dev/security/vuln/database#api [12] golang.org/x/vulndb/cmd/indexdb: https://golang.org/x/vulndb/cmd/indexdb [13] 贡献关于您项目中公开漏洞的信息: https://go.dev/s/vulndb-report-new [14] go.dev/security/vuln/database: https://go.dev/security/vuln/database [15] pkg.go.dev: https://pkg.go.dev/vuln [16] golang.org/x/text/language: https://pkg.go.dev/golang.org/x/text/language?tab=versions [17] 教程: https://go.dev/doc/tutorial/govulncheck-ide [18] GitHub Action: https://github.com/marketplace/actions/golang-govulncheck-action [19] 如何使用Go和Google构建更安全的应用程序: https://www.youtube.com/watch?v=HSt6FhsPT8c&ab_channel=TheGoProgrammingLanguage [20] 如何贡献和帮助我们进行改进的详细信息: https://go.dev/security/vuln/#feedback [21] 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0): https://creativecommons.org/licenses/by-nc-sa/4.0/deed.zh [22] mengbin: mengbin1992@outlook.com [23] mengbin: https://mengbin.top [24] mengbin92: https://mengbin92.github.io/ [25] 恋水无意: https://www.cnblogs.com/lianshuiwuyi/

0 人点赞