原文在这里[1]
概述
Go帮助开发人员检测、评估和解决可能被攻击者利用的错误或弱点。在幕后,Go团队运行一个管道来整理关于漏洞的报告,这些报告存储在Go漏洞数据库中。各种库和工具可以读取和分析这些报告,以了解特定用户项目可能受到的影响。这个功能集成到pkg.go.dev[2]和一个新的命令行工具govulncheck中。
这个项目正在进行中,并且正在积极开发中。我们欢迎您的反馈[3],以帮助我们改进!
要报告Go项目中的漏洞,请参阅Go安全政策[4]。
架构
Go中的漏洞管理包括以下高级组件:
•数据管道从各种来源收集漏洞信息,包括国家漏洞数据库(NVD)[5]、GitHub咨询数据库[6],以及直接从Go包维护者[7]那里获得的信息。•使用数据管道的信息填充漏洞数据库。数据库中的所有报告都由Go安全团队进行审查和整理。报告的格式采用开源漏洞(OSV)格式[8],并通过API[9]访问。•与pkg.go.dev[10]和govulncheck的集成,使开发人员能够在其项目中查找漏洞。govulncheck命令[11]会分析您的代码库,并仅显示真正影响您的漏洞,根据您的代码中哪些函数传递调用了有漏洞的函数。govulncheck为您的项目提供了一种低噪音、可靠的方式来查找已知的漏洞。
资源
Go漏洞数据库
Go漏洞数据库[12]包含来自许多现有来源的信息,除此之外还有直接报告给Go安全团队的信息。数据库中的每个条目都经过审查,以确保漏洞的描述、包和符号信息以及版本详细信息的准确性。
有关Go漏洞数据库的更多信息,请参阅go.dev/security/vuln/database[13],以及pkg.go.dev/vuln[14],以在您的浏览器中查看数据库中的漏洞。
我们鼓励包维护者贡献[15]有关其自己项目中公共漏洞的信息,并向我们发送减少阻力的建议[16]。
Go漏洞检测
Go的漏洞检测旨在为Go用户提供一种低噪音、可靠的方式,以了解可能影响其项目的已知漏洞。漏洞检查集成在Go的工具和服务中,包括一个新的命令行工具govulncheck[17],Go包发现网站[18]以及带有Go扩展的主要编辑器[19](如VS Code)。
要开始使用govulncheck,请在您的项目中运行以下命令:
$ go install golang.org/x/vuln/cmd/govulncheck@latest
$ govulncheck ./...
要在您的编辑器中启用漏洞检测,请参阅编辑器集成[20]页面中的说明。
Go CNA
Go安全团队是CVE编号机构[21]。有关更多信息,请参阅go.dev/security/vuln/cna[22]。
反馈
我们希望您能为以下方面做出贡献,帮助我们进行改进:
•为您维护的Go包的公共漏洞提供新的[23]和更新[24]现有的信息•参与这项调查[25],分享您使用govulncheck的经验•向我们发送有关问题和功能请求的反馈[26]
声明:本作品采用署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)[27]进行许可,使用时请注明出处。 Author: mengbin[28] blog: mengbin[29] Github: mengbin92[30] cnblogs: 恋水无意[31]
References
[1]
这里: https://go.dev/security/vuln/
[2]
pkg.go.dev: https://pkg.go.dev/
[3]
反馈: https://go.dev/security/vuln/#feedback
[4]
Go安全政策: https://go.dev/security/policy
[5]
国家漏洞数据库(NVD): https://nvd.nist.gov/
[6]
GitHub咨询数据库: https://github.com/advisories
[7]
直接从Go包维护者: https://go.dev/s/vulndb-report-new
[8]
开源漏洞(OSV)格式: https://ossf.github.io/osv-schema/
[9]
API: https://go.dev/security/vuln/database#api
[10]
pkg.go.dev: https://pkg.go.dev/
[11]
govulncheck命令: https://pkg.go.dev/golang.org/x/vuln/cmd/govulncheck
[12]
Go漏洞数据库: https://vuln.go.dev/
[13]
go.dev/security/vuln/database: https://go.dev/security/vuln/database
[14]
pkg.go.dev/vuln: https://pkg.go.dev/vuln
[15]
贡献: https://go.dev/security/vuln/#feedback
[16]
发送减少阻力的建议: https://golang.org/s/vuln-feedback
[17]
govulncheck: https://pkg.go.dev/golang.org/x/vuln/cmd/govulncheck
[18]
Go包发现网站: https://pkg.go.dev/
[19]
带有Go扩展的主要编辑器: https://go.dev/security/vuln/editor
[20]
编辑器集成: https://go.dev/security/vuln/editor
[21]
CVE编号机构: https://www.cve.org/ProgramOrganization/CNAs
[22]
go.dev/security/vuln/cna: https://go.dev/security/vuln/cna
[23]
新的: https://golang.org/s/vulndb-report-new
[24]
更新: https://go.dev/s/vulndb-report-feedback
[25]
参与这项调查: https://golang.org/s/govulncheck-feedback
[26]
反馈: https://golang.org/s/vuln-feedback
[27]
署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0): https://creativecommons.org/licenses/by-nc-sa/4.0/deed.zh
[28]
mengbin: mengbin1992@outlook.com
[29]
mengbin: https://mengbin.top
[30]
mengbin92: https://mengbin92.github.io/
[31]
恋水无意: https://www.cnblogs.com/lianshuiwuyi/