HackerNews 编译,转载请注明出处:
网络安全研究人员指出,针对 Go 生态系统的软件供应链攻击中出现了一种恶意包,该包能够使攻击者远程访问受感染系统。
据 Socket 称,该包名为 github.com/boltdb-go/bolt,是对合法 BoltDB 数据库模块(github.com/boltdb/bolt)的拼写混淆。恶意版本(1.3.1)于 2021 年 11 月发布到 GitHub,随后被 Go 模块镜像服务无限期缓存。
安全研究人员基里尔・博伊琴科(Kirill Boychenko)在分析中表示:“一旦安装,该后门包将授予威胁行为者对受感染系统的远程访问权限,使其能够执行任意命令。”
Socket 表示,这一事件标志着恶意行为者最早利用 Go 模块镜像对模块的无限期缓存来欺骗用户下载该包的案例之一。随后,攻击者修改了源代码仓库中的 Git 标签,将其重定向到良性版本。
这种欺骗手段确保了手动审核 GitHub 代码仓库时不会发现任何恶意内容,而缓存机制则意味着不知情的开发人员使用 go CLI 安装该包时,仍会下载后门版本。
博伊琴科说:“一旦模块版本被缓存,即使原始源代码后来被修改,它仍然可以通过 Go 模块代理访问。虽然这种设计对合法使用场景有益,但威胁行为者利用它在后续对代码仓库的修改后,仍能持续分发恶意代码。”
“由于不可变模块既提供安全优势,也存在潜在的滥用途径,开发人员和安全团队应警惕利用缓存模块版本来逃避检测的攻击。”
与此同时,Cycode 详细披露了三个恶意 npm 包——serve-static-corell、openssl-node 和 next-refresh-token,这些包包含隐藏代码,用于收集系统元数据并在受感染主机上运行由远程服务器(“8.152.163[.]60”)发出的任意命令。
消息来源:The Hacker News, 编译:zhongx;
本文由 HackerNews.cc 翻译整理,封面来源于网络;
转载请注明“转自 HackerNews.cc”并附上原文