Go生态系统中发现恶意软件包-更新

这个恶意软件包是流行的BoltDB模块的拼写错误,据说是Go module Mirror的无限模块缓存的首批已知漏洞之一。

带代码的后门

backdoor with code

来源:enzozo/Shutterstock

2月6日更新:谷歌已删除该软件包,并提供了以下声明:


该模块已从Go模块代理和GitHub中删除,我们已将其添加到Go漏洞数据库中,供任何认为自己可能受到影响的人使用。


我们正在通过Capslock进行能力分析和与deps.dev进行比较等修复来解决这个问题。我们要感谢Socket和Go团队的贡献者,


他们检测到了该模块并正在解决修复问题。我们将继续与更广泛的行业合作,提高人们对这些常见开源安全问题的认识,并通过SLSA和OpenSSF等举措开展工作。

在Go语言生态系统中发现了一个恶意的拼写错误软件包。应用安全公司Socket的研究人员发现了该软件包,其中包含一个后门,可以远程执行代码。


2月3日Socket的一篇博客文章指出,该包模拟了广泛使用的Bolt数据库模块。据博客报道,BoltDB包在Go生态系统中被广泛采用,有8367个包依赖于它。


在Go Module Mirror缓存恶意软件后,GitHub上的git标签被战略性地更改,以删除恶意软件的痕迹并将其隐藏在手动审查中。


在github上手动审核github.com/boltdb-go/bolt的开发人员没有发现恶意代码的痕迹。


但是,通过Go Module Proxy下载软件包时,检索到了原始的后门版本。

这种欺骗行为在三年多的时间里没有被发现,使恶意软件包得以在公共存储库中持久存在。

Socket已请求从模块镜像中删除该包,并报告了威胁行为者的GitHub存储库和帐户,这些存储库和账户用于分发恶意的boltdb-go包。


据Socket称,这种攻击是首批记录在案的坏人利用Go模块镜像对模块的无限缓存的实例之一。


为了减轻软件供应链的威胁,Socket建议开发人员在安装之前验证软件包的完整性。他们还应该分析异常的依赖关系,并使用安全工具在更深层次上检查已安装的代码。2月5日,我们无法立即联系到Go的设计公司谷歌就此事发表评论。


安固软件扫码咨询
扫码加微信咨询
免费使用安固软件,规范上网行为,即刻保护企业安全!!