原文在这里

概述

Go帮助开发人员检测、评估和解决可能被攻击者利用的错误或弱点。在幕后,Go团队运行一个管道来整理关于漏洞的报告,这些报告存储在Go漏洞数据库中。各种库和工具可以读取和分析这些报告,以了解特定用户项目可能受到的影响。这个功能集成到pkg.go.dev和一个新的命令行工具govulncheck中。

这个项目正在进行中,并且正在积极开发中。我们欢迎你的反馈,以帮助我们改进!

要报告Go项目中的漏洞,请参阅Go安全政策

架构

Go漏洞管理架构

Go中的漏洞管理包括以下高级组件:

  • 数据管道从各种来源收集漏洞信息,包括国家漏洞数据库(NVD)GitHub咨询数据库,以及直接从Go包维护者那里获得的信息。
  • 使用数据管道的信息填充漏洞数据库。数据库中的所有报告都由Go安全团队进行审查和整理。报告的格式采用开源漏洞(OSV)格式,并通过API访问。
  • pkg.go.dev和govulncheck的集成,使开发人员能够在其项目中查找漏洞。govulncheck命令会分析你的代码库,并仅显示真正影响你的漏洞,根据你的代码中哪些函数传递调用了有漏洞的函数。govulncheck为你的项目提供了一种低噪音、可靠的方式来查找已知的漏洞。

资源

Go漏洞数据库

Go漏洞数据库包含来自许多现有来源的信息,除此之外还有直接报告给Go安全团队的信息。数据库中的每个条目都经过审查,以确保漏洞的描述、包和符号信息以及版本详细信息的准确性。

有关Go漏洞数据库的更多信息,请参阅go.dev/security/vuln/database,以及pkg.go.dev/vuln,以在你的浏览器中查看数据库中的漏洞。

我们鼓励包维护者贡献有关其自己项目中公共漏洞的信息,并向我们发送减少阻力的建议

Go漏洞检测

Go的漏洞检测旨在为Go用户提供一种低噪音、可靠的方式,以了解可能影响其项目的已知漏洞。漏洞检查集成在Go的工具和服务中,包括一个新的命令行工具govulncheckGo包发现网站以及带有Go扩展的主要编辑器(如VS Code)。

要开始使用govulncheck,请在你的项目中运行以下命令:

$ go install golang.org/x/vuln/cmd/govulncheck@latest
$ govulncheck ./...

要在你的编辑器中启用漏洞检测,请参阅编辑器集成页面中的说明。

Go CNA

Go安全团队是CVE编号机构。有关更多信息,请参阅go.dev/security/vuln/cna

反馈

我们希望你能为以下方面做出贡献,帮助我们进行改进:

  • 为你维护的Go包的公共漏洞提供新的更新现有的信息
  • 参与这项调查,分享你使用govulncheck的经验
  • 向我们发送有关问题和功能请求的反馈

声明:本作品采用署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)进行许可,使用时请注明出处。

Author: mengbin

blog: mengbin

Github: mengbin92

cnblogs: 恋水无意


Golang漏洞管理的更多相关文章

  1. 小白日记15:kali渗透测试之弱点扫描-漏扫三招、漏洞管理、CVE、CVSS、NVD

    发现漏洞 弱点发现方法: 1.基于端口服务扫描结果版本信息,比对其是否为最新版本,若不是则去其 官网查看其补丁列表,然后去逐个尝试,但是此法弊端很大,因为各种端口应用比较多,造成耗时大. 2.搜索已公 ...

  2. Golang 包管理简介

    Golang 包管理 在一个项目里,如果想引用本地包,经常会把新手搞的莫名其妙.这里通俗记录一下. 首先先要知道几个默认的规则 必须定义环境变量GOPATH,GOPATH可以定义多个目录 所有项目代码 ...

  3. Golang包管理工具glide简介

    Golang包管理工具glide简介 前言 Golang是一个十分有趣,简洁而有力的开发语言,用来开发并发/并行程序是一件很愉快的事情.在这里我感受到了其中一些好处: 没有少了许多代码格式风格的争论, ...

  4. Golang内存管理

    Golang 内存管理 原文链接[http://legendtkl.com/2017/04/02/golang-alloc/] Golang 的内存管理基于 tcmalloc,可以说起点挺高的.但是 ...

  5. golang包管理工具

    软件开发中,不可避免的会使用到第三方库,因此包管理工具可以极大的方便开发者管理第三方依赖,避免掉入"依赖地狱". 作为google强大背书的golang语言,golang官方包管理 ...

  6. Golang 包管理机制

    Golang 包管理机制 1. 历史 在go1.11之前, 并没有官方的包管理机制(Godep算个半官方), 主流的包管理机制有: GoVendor Glide Godep 在go1.11之后, 官方 ...

  7. Golang依赖管理工具: go module 详解

    Golang依赖管理工具: go module (go1.11+) 大多数语言都会有包管理工具,像Node有npm,PHP有composer,Java有Maven和Gradle. 可是,Go语言一直缺 ...

  8. golang包管理解决之道——go modules初探

    golang的包管理是一直是为人诟病之处,从golang1.5引入的vendor机制,到准官方工具dep,目前为止还没一个简便的解决方案. 不过现在go modules随着golang1.11的发布而 ...

  9. Golang包管理工具之govendor的使用

    1. govendor简介 golang工程的依赖包经常使用go get命令来获取,例如:go get github.com/kardianos/govendor ,会将依赖包下载到GOPATH的路径 ...

  10. Golang依赖管理工具:glide从入门到精通使用

    这是一个创建于 2017-07-22 05:33:09 的文章,其中的信息可能已经有所发展或是发生改变. 介绍 不论是开发Java还是你正在学习的Golang,都会遇到依赖管理问题.Java有牛逼轰轰 ...

随机推荐

  1. deepin15.11系统使用罗技k380键盘

    罗技k380键盘官方支持安卓.windows.macos,就是没有支持Linux系统.在开发过程中使用的是Deepin15.11系统,如何连接罗技k380就是一个问题,折腾了一段时间后解决这个问题.记 ...

  2. 浅谈splice( )与slice( )

    1.splice( ) 概念:splice( )用于修改原始数组,它可以删除.插入.替换数组的元素,并返回被删除的元素组成的新数组. 语法:splice(start,deleteCount,item1 ...

  3. JSP 学习笔记 | 六、Filter & Listener

    前文:JSP 学习笔记 | 五.会话技术 Session & Cookie 前文:JSP 学习笔记 | 四.JSP标准标签库(JSTL)个人使用指南 前文:JSP 学习笔记 | 三.EL 表达 ...

  4. POJ 2484博弈——对称法

    题目链接:http://poj.org/problem?id=2484 题意:Alice和Bob玩游戏,从一堆圆环形排列的硬币中拿硬币,每次可以拿一个或者两个,但必须拿连续的(两个中间有空位也视为不连 ...

  5. 工作中使用Redis的10种场景

    前言 Redis作为一种优秀的基于key/value的缓存,有非常不错的性能和稳定性,无论是在工作中,还是面试中,都经常会出现. 今天这篇文章就跟大家一起聊聊,我在实际工作中使用Redis的10种场景 ...

  6. B3637-DP【橙】

    这题我用sort的时候大意了,从1开始使用的下标但是用sort时没加1导致排序错误,排了半天错才发现. 另外,这道题我似乎用了一种与网络上搜到了做法截然不同的自己的瞎想出来的做法,我的这个做法需要n^ ...

  7. linux tcpdump 使用小结(一)

    转载请注明出处: 很多情况在服务联调和定位过程中,需要在服务器上进行抓包进行问题定位.在Linux环境上使用tcpdump命令进行抓包: 1.tcpdump -s 0 -l -i any -w - p ...

  8. spring启动流程 (2) Bean实例化流程

    本文通过阅读Spring源码,分析Bean实例化流程. Bean实例化入口 上一篇文章已经介绍,Bean实例化入口在AbstractApplicationContext类的finishBeanFact ...

  9. 针对docker中的mongo容器增加鉴权

    1. 背景 业务方的服务器经安全检查,发现以docker容器启动的mongo未增加鉴权的漏洞,随优化之 2. 配置 mongo以docker compose方式启动,镜像的版本号为4.2.6,dock ...

  10. P1914 小书童——凯撒密码

    1.题目介绍 小书童--凯撒密码 题目背景 某蒟蒻迷上了 "小书童",有一天登陆时忘记密码了(他没绑定邮箱 or 手机),于是便把问题抛给了神犇你. 题目描述 蒟蒻虽然忘记密码,但 ...