ReversingLabs(RL)的研究人员发现,深受以太坊开发者喜爱的 Visual Studio Code 扩展 ETHcode 遭遇了供应链攻击。而这起攻击的关键,竟是通过 GitHub 拉取请求悄悄植入的两行恶意代码。
RL 警告称:“仅仅两行代码…… 即便是合法的软件模块,也可能被不明身份的开发者账户以及对可信代码库做出的些许微妙改动所攻陷。”
ETHcode 由名为 7finney 的小型 GitHub 组织维护,自 2022 年推出以来,安装量已接近 6000 次。6 月 17 日,一位名为 Airez299 的 GitHub 用户提交了一个拉取请求,标题为 “通过 viem 集成和测试框架实现代码库现代化”。
表面上看,这似乎是对一个已有半年多未提交代码的仓库的有益贡献。GitHub 的 AI 审核工具和项目维护者都对该拉取请求进行了审核,并批准了其中的微小改动。
ReversingLabs 指出:“乍一看,Airez299 的拉取请求实际上并没有向 ETHcode 模块的代码库添加恶意代码。然而,在 43 次提交和约 4000 行代码的变更中,有两行代码…… 却让整个项目陷入了危险境地。”
第一行可疑代码引入了一个新的依赖项 ——keythereum-utils,这个名字刻意模仿了现有的依赖项 keythereum,仅仅添加了 “-utils” 后缀,目的是尽可能不引起怀疑。
第二行代码看似简单,却暗藏玄机,它调用了 Node.js 的 require () 函数,激活了这个恶意包。
一旦被触发,恶意代码会启动一个隐藏的 PowerShell 进程,连接到公共文件共享服务,下载并运行第二阶段的批处理脚本,其全部影响目前仍在调查中。
据 RL 称,GitHub 用户 Airez299 很可能是一个临时创建的身份,唯一目的就是提交这个带有恶意代码的拉取请求。“发起 ETHcode 拉取请求的 GitHub 账户 Airez299 是在同一天创建的,之前没有任何历史记录或活动。这强烈表明这是一个一次性账户。”
这起事件中最令人担忧的一点是,VS Code 默认会自动更新扩展,这意味着任何受感染的版本都可能在开发者的环境中悄无声息地传播恶意软件。
“ETHcode 有近 6000 次安装,这意味着该恶意软件可能已经扩散到数千个开发者的系统中…… 具体情况取决于后续有效负载阶段的横向移动能力。”
在 RL 联系微软后,这个恶意版本的扩展已于 6 月 26 日从 VS Code 市场下架。ETHcode 的原开发者随后在 7 月 1 日发布了 0.5.1 版本,移除了其中的恶意依赖项。
资讯来源:securityonline
转载请注明出处和本文链接
球分享
球点赞
球在看
点击阅读原文查看更多
原文始发于微信公众号(看雪学苑):VS Code ETHcode 扩展遭供应链攻击:两行恶意代码通过 GitHub PR 植入
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论