原文在这里

概述

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. Solon 生态插件清单

    Solon 是一个微型的Java开发框架.强调,克制 + 简洁 + 开放的原则:力求,更小.更快.更自由的体验.支持:RPC.REST API.MVC.Micro service.WebSocket. ...

  2. 人人都会Kubernetes(一):告别手写K8s yaml,运维效率提升500%

    1. Kubernetes的普及和重要性 随着云计算的迅速发展,容器化技术已成为构建和运行分布式应用程序的关键.而Kubernetes作为容器编排领域的佼佼者,已经成为了云原生应用的标准.它不仅简化了 ...

  3. Asp.Net Core 使用X.PagedList.Mvc.Core分页 & 搜索

    1.Nuget包添加引用: X.PagedList.Mvc.Core 2.View: @using VipSoft.Web.Model @model X.PagedList.IPagedList< ...

  4. dom4j selectNodes 取不到值 因为XML带有命名空间 HL7

    xml 如下: <?xml version="1.0" encoding="UTF-8"?> <POOR_IN200901UV ITSVers ...

  5. Flask小知识集合

    全局变量g的使用 flask在上下文中提供了四种变量,分别是: 变量名 上下文 说明 current_app 应用上下文 当前激活程序的程序实例 g 应用上下文 处理请求时用作临时存储的对象.每次请求 ...

  6. 【Docker】容器操作 mysql部署 redis部署 nginx部署 迁移与备份 Dockerfile

    目录 上节回顾 今日内容 1 容器操作 2 应用部署 2.1 mysql 部署 2.2 redis 2.3 nginx 3 迁移与备份 4 Dockerfile 练习 上节回顾 # 1 docker ...

  7. vivo平台化实践探索之旅-平台产品系列01

    vivo 互联网平台产品研发团队- Yang Yang 本篇为<vivo 平台产品>系列文章的第1篇.主要描述在业务高速发展的背景下,vivo软件工程师通过系统平台化建设等手段,逐步解决软 ...

  8. 叮~OpenSCA社区拍了拍您并发来一份开源盛会邀请函

    2023数字供应链安全大会(DSS 2023)将于8月10日在北京·国家会议中心举办.本次大会以"开源的力量"为主题,由悬镜安全主办,ISC互联网安全大会组委会.中国软件评测中心( ...

  9. C语言常用字符串操作函数整理(详细全面)

    目录 字符串相关 1.char *gets(char *s); #include<stdio.h> 2.char *fgets(char *s, intsize, FILE *stream ...

  10. ClickHouse的WITH-ALIAS是如何实现的

    ClickHouse的WITH-ALIAS是如何实现的 WITH-ALIAS包含相似但不同的两个特性: WITH <表达式> as <别名> WITH <别名> a ...