VS Code ETHcode 扩展遭供应链攻击:两行恶意代码通过 GitHub PR 植入
ReversingLabs研究人员发现Visual Studio Code的ETHcode扩展遭遇供应链攻击,攻击者通过GitHub拉取请求植入两行恶意代码,导致依赖项劫持和恶意软件传播。VS Code的自动更新机制加剧了风险,最终扩展被下架并修复。 2025-7-8 16:46:20 Author: www.freebuf.com(查看原文) 阅读量:5 收藏

freeBuf

主站

分类

云安全 AI安全 开发安全 终端安全 数据安全 Web安全 基础安全 企业安全 关基安全 移动安全 系统安全 其他安全

特色

热点 工具 漏洞 人物志 活动 安全招聘 攻防演练 政策法规

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

ETH

2025年7月9日— ReversingLabs(RL)安全研究人员发现,面向以太坊(Ethereum)开发者广泛使用的 Visual Studio Code 编辑器 ETHcode 扩展遭遇供应链攻击。整个攻击仅通过 GitHub 拉取请求(pull request)悄悄植入两行恶意代码即告完成。

RL 警告称:"仅需两行代码...即便是合法的软件模块,也可能因可疑开发者账户和对可信代码库的细微修改而遭到入侵。"

伪装成合法更新的恶意提交

ETHcode 扩展由名为 7finney 的小型 GitHub 组织维护,自 2022 年发布以来已有近 6000 次安装。6月17日,GitHub 用户 Airez299 提交了标题为"通过 viem 集成和测试框架实现代码现代化"的拉取请求。

表面上看,这是对半年未更新的代码库的有益贡献。GitHub 的 AI 审查系统和项目维护者都审核了该请求,仅批准了少量修改。

GitHub 拉取请求评论

ReversingLabs 指出:"乍看之下,Airez299 的拉取请求并未在 ETHcode 模块代码库中添加恶意代码。但在43次提交和约4000行变更中,有两行代码...彻底破坏了整个项目。"

精心设计的依赖项劫持

第一行可疑代码引入了一个名为 keythereum-utils 的新依赖项——该名称刻意模仿了现有依赖项 keythereum。研究人员表示:"这个依赖项经过精心命名,仅添加了-utils后缀以尽可能降低怀疑。"

第二行代码则具有欺骗性的简单:通过调用 Node.js 的 require() 函数激活了恶意软件包。触发后,恶意代码会启动隐藏的 PowerShell 进程,从公共文件共享服务下载并运行第二阶段的批处理脚本——其完整功能仍在调查中。

一次性攻击账户

RL 分析认为,GitHub 用户 Airez299 很可能是专门用于投毒攻击的一次性账户:"发起 ETHcode 拉取请求的 GitHub 账户 Airez299 创建于攻击当天...没有任何历史活动记录,这强烈表明这是个临时账户。"

自动更新机制放大风险

该事件最令人担忧的是,VS Code 默认会自动更新扩展,这意味着任何受感染版本都可能悄无声息地在开发者环境中传播恶意软件。研究人员警告:"凭借近6000次安装量,ETHcode 可能已将恶意软件传播至数千个开发系统...具体影响取决于后续载荷的横向移动能力。"

在 RL 联系微软后,受感染的扩展版本已于6月26日从 VS Code 应用商店下架。原始开发者随后在7月1日发布0.5.1版本,移除了恶意依赖项。

参考来源:

VS Code ETHcode Extension Hacked: Just 2 Lines of Code Led to Supply Chain Compromise Via GitHub PR

本文为 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)


文章来源: https://www.freebuf.com/articles/development/438383.html
如有侵权请联系:admin#unsafe.sh