[译] Go 新漏洞管理工具:govulncheck

作者: Yu Zhang | 1123 字, 3 分钟 | 2022-09-10 | 分类: Develop

go, go tools, govulncheck, programming, security, translation, vulnerability management

翻译: EN

《后来的我们 - 五月天》

前言

我们很高兴地宣布 Go 对漏洞管理的最新支持,这是我们为帮助 Go 开发者了解可能影响他们的已知漏洞而迈出的第一步。

这篇文章概述了这个项目的当前状况和后续计划。

概览

Go 提供的工具可以分析你的代码库并展示出已知的漏洞,该工具由 Go 安全团队设计维护的 Go 漏洞数据库提供支持。Go 只展示代码调用函数中的漏洞,从而减少结果中的噪音。

go_vulnerability_management_architecture

Go 漏洞数据库

Go 漏洞数据库(https://vuln.go.dev/)是一个囊括了公共 Go 模块中可导入包的已知漏洞的全面信息源。

漏洞数据来自现有来源(如 CVEs 和 GHSAs)以及 Go 软件包维护者的直接报告。这些信息将由 Go 安全团队审查并添加至数据库中。

我们鼓励软件包维护者贡献他们自己项目中的公共漏洞信息,并更新现有漏洞信息。我们旨在让报告漏洞成为一个低阻力的过程,所以请把你的建议发送给我们,以便于我们进行改进。

我们可以在浏览器中查看 Go 漏洞数据库,网址为 pkg.go.dev/vuln。关于数据库的更多信息详见 go.dev/security/vuln/database

使用 govulncheck 进行漏洞检测

新的 govulncheck 命令是一种低噪音、稳定的方式,让 Go 用户了解可能影响其项目的已知漏洞。Govulncheck 会基于代码中涉及调用易受攻击函数的函数分析你的代码库,展示对你有实际影响的漏洞。你可以在项目中运行以下程序来使用 govulncheck。

$ go install golang.org/x/vuln/cmd/[email protected]
$ govulncheck ./...

Govulncheck 是一个独立的工具,以便在我们收集用户的反馈时可以频繁更新和快速迭代。从长远来看,我们计划将 govulncheck 工具整合到 Go 的主要发行版中。

为了将漏洞检查直接集成到其他工具和流程中,vulncheck 包将 govulncheck 的功能作为 Go API 导出。

集成

在开发和部署过程中尽可能早地了解漏洞总是更好的。为此,我们将漏洞检测整合到现有的 Go 工具和服务中,如Go 软件包发现页。例如,这个页面显示了 golang.org/x/text 每个版本中的已知漏洞。通过 VS Code Go 扩展进行漏洞检查的功能也即将推出。

后续计划

我们希望你能发现 Go 对漏洞管理的支持是有用的,并帮助我们改进它!

Go 漏洞管理是一项正在积极开发中的新功能,可能会有一些错误和局限之处

我们希望您能在以下方面做出贡献,帮助我们进行改进。

我们很高兴能与你合作,建立一个更好、更安全的 Go 生态系统。

参考资料

  1. 原文地址:https://go.dev/blog/vuln
  2. 原文作者:Julie Qiu, for the Go security team
  3. 本文永久链接:https://github.com/gocn/translator/blob/master/2022/w37_Vulnerability_Management_for_Go.md
  4. 译者:张宇
  5. 校对:Fivezh

相关文章

2022-06-06
[译] 是什么让 Golang 如此受欢迎?语言创造者的回顾
2022-05-21
[译] 用 Go 编写一个简单的内存键值数据库
2022-02-15
[译] 理解并用 Go 语言实现一个 HTTP 中间件
2021-09-02
[译] Go sync.Once 的妙用
2021-08-29
Go 错误处理总结与实践
Yu Zhang

作者

Yu Zhang

区块链开发工程师,HKU ECICer。喜欢探索新技术,空闲时也折腾 Logseq 等效率工具。 在 GitHub 关注我。在我的 Telegram 频道了解更多。