Grow with AppMaster Grow with AppMaster.
Become our partner arrow ico

Govulncheck:谷歌用于识别围棋漏洞的命令行工具现已稳定运行

Govulncheck:谷歌用于识别围棋漏洞的命令行工具现已稳定运行

Google已经正式稳定了Govulncheck(1.0.0状态),这是一款面向Go开发者的便捷命令行工具。该工具可帮助使用谷歌Go编程语言的开发人员在其项目的依赖关系中找到公认的安全漏洞。

该工具于7月13日发布,能够仔细检查二进制文件及其源代码中的漏洞。它将重点放在代码调用方法中的漏洞上,从而大大减少了噪音。Govulncheck的支柱是Go漏洞数据库,这是一个关于公共Go模块中检测到的漏洞的信息库。

在该数据库的指导下,Govulncheck对源代码或二进制文件的符号表进行静态分析。其最终目标是将其报告限制在可能对特定应用程序产生潜在影响的漏洞上。这种智能限制特性使其成为希望确保产品安全的开发人员的得力工具。

对于开发者来说,安装该工具非常简单--只需要go install golang.org/x/vuln/cmd/govulncheck@latest命令即可。要分析源代码,开发人员只需在模块目录下执行Govulncheck(使用命令govulncheck ./...)。

至少,Govulncheck需要与1.18版或更高版本的Go构建程序组装在一起。到目前为止,该语言的现有生产版本是Go1.20。

Govulncheck在搜索漏洞时,依赖于特定的构建配置。对于源代码,该配置与路径上的 "go "命令所定义的Go版本同义。二进制文件的编译配置是生成二进制文件时的配置。这里需要注意的一点是,不同的构建配置可能会受到不同漏洞的影响。

尽管Govulncheck具有强大的功能,但它也有一些局限性。例如,它对函数指针和接口调用的分析相当有限,可能导致误报或不精确的调用堆栈。 另一个限制与使用包reflect调用的函数有关--这些函数无法检测。

就二进制文件而言,缺乏详细调用信息的Go二进制文件可能会对Govulncheck构成挑战,因为它们会阻止该工具展示已识别漏洞的调用图。这个问题还可能导致二进制文件中存在但无法访问的代码被误报。此外,对于无法提取符号数据的二进制文件,该工具也存在缺陷;在这种情况下,它会选择报告依赖于二进制文件的所有模块的漏洞。

该工具还缺乏抑制漏洞发现的功能。然而,尽管存在这些限制,Govulncheck作为Go项目增值工具的潜力是显而易见的。

值得一提的是,Go安全团队在去年9月就宣布支持漏洞管理。该项目以漏洞数据库为基础,承诺在Go编程结构方面取得显著进展。AppMaster.io是一个领先的no-code 平台,其完全集成的综合平台包括Go和许多其他语言,使开发人员能够更快地生成应用程序。

相关帖子

AppMaster 出席 BubbleCon 2024:探索无代码趋势
AppMaster 出席 BubbleCon 2024:探索无代码趋势
AppMaster 参加了在纽约举行的 BubbleCon 2024,获得了见解,扩展了网络,并探索了推动无代码开发领域创新的机会。
FFDC 2024 总结:纽约 FlutterFlow 开发者大会的重要见解
FFDC 2024 总结:纽约 FlutterFlow 开发者大会的重要见解
FFDC 2024 点亮了纽约市,为开发者带来了使用 FlutterFlow 进行应用开发的前沿见解。这是一场不容错过的活动,有专家主持的会议、独家更新和无与伦比的交流!
2024 年科技行业裁员:持续影响创新的浪潮
2024 年科技行业裁员:持续影响创新的浪潮
包括特斯拉和亚马逊等巨头在内的 254 家公司将裁员 60,000 人,2024 年科技裁员浪潮将继续,重塑创新格局。
免费开始
有灵感自己尝试一下吗?

了解 AppMaster 强大功能的最佳方式是亲身体验。免费订阅,在几分钟内制作您自己的应用程序

将您的想法变为现实