网络安全研究人员发现了两个恶意的Microsoft Visual Studio Code (VS Code) 扩展程序,这些扩展被宣传为人工智能驱动的编程助手,但实际上具有隐蔽功能,会将开发者数据窃取到位于中国的服务器。
这两个扩展程序的总安装量达150万次,目前仍可从官方Visual Studio市场下载,具体如下:
ChatGPT - 中文版 (ID: whensunset.chatgpt-china) - 1,340,869次安装
ChatGPT - ChatMoss(CodeMoss)(ID: zhukunpeng.chat-moss) - 151,751次安装
Koi Security表示,这些扩展程序功能正常,运行符合预期,但它们会在用户不知情或未同意的情况下,捕获每个被打开的文件以及每次源代码修改,并将其发送到位于中国的服务器。这项攻击活动被代号命名为MaliciousCorgi。
"两个扩展都包含相同的恶意代码——同样的间谍软件基础设施在不同发布者名称下运行,"安全研究员Tuval Admoni表示。
让这种活动特别危险的是,这些扩展完全按照宣传的功能运行,提供自动完成建议并解释编码错误,从而避免引起任何警觉,降低用户的怀疑。
与此同时,嵌入的恶意代码被设计用来读取每个被打开文件的所有内容,将其编码为Base64格式,并发送到位于中国的服务器("aihao123[.]cn")。每次编辑都会触发这个过程。
这些扩展还集成了实时监控功能,可以被服务器远程触发,导致工作区中多达50个文件被窃取。扩展的Web视图中还存在一个隐藏的零像素iframe,加载四个商业分析软件开发套件(SDK)来识别设备指纹并创建详细的用户画像。
使用的四个SDK分别是诸葛IO、GrowingIO、TalkingData和百度分析,这些都是中国主要的数据分析平台。
供应链安全公司还透露,他们在JavaScript包管理器(如npm、pnpm、vlt和Bun)中发现了六个零日漏洞,这些漏洞可能被利用来绕过安全控制,跳过包安装期间生命周期脚本的自动执行。这些缺陷被统称为PackageGate。
禁用生命周期脚本("--ignore-scripts")和提交锁定文件("package-lock.json")等防御措施已成为对抗供应链攻击的关键机制,特别是在Shai-Hulud攻击之后,该攻击利用postinstall脚本以蠕虫方式传播,劫持npm令牌并将恶意版本的包发布到注册表。
然而,Koi发现可以绕过这四个包管理器中的脚本执行和锁定文件完整性检查。经过负责任的披露后,pnpm(版本10.26.0)、vlt(版本1.0.0-rc.10)和Bun(版本1.3.5)已解决了这些问题。Pnpm将两个漏洞追踪为CVE-2025-69264(CVSS评分:8.8)和CVE-2025-69263(CVSS评分:7.5)。
然而,npm选择不修复该漏洞,声明"用户有责任审查他们选择安装的包的内容。"当被要求置评时,GitHub发言人告诉The Hacker News,公司正在积极解决新问题,因为npm会主动扫描注册表中的恶意软件。
"如果通过git安装的包包含prepare脚本,其依赖项和开发依赖项将被安装。正如我们在问题提交时分享的,这是有意的设计,按预期工作,"该公司表示。"当用户安装git依赖项时,他们信任该仓库的全部内容,包括其配置文件。"
这家微软旗下的子公司还敦促项目采用可信发布和强制双重身份验证(2FA)的细粒度访问令牌来保护软件供应链。截至2025年9月,GitHub已弃用传统经典令牌,将具有发布权限的细粒度令牌限制为更短的到期时间,并移除了本地包发布绕过2FA的选项。
"标准建议,禁用脚本并提交锁定文件,仍然值得遵循,"安全研究员Oren Yomtov说。"但这不是全部。在PackageGate完全解决之前,组织需要就风险做出自己的明智选择。"
Q&A
Q1:MaliciousCorgi攻击活动是什么?
A:MaliciousCorgi是指两个恶意VS Code扩展的攻击活动,这些扩展伪装成AI编程助手,实际上会窃取开发者的源代码和文件内容,发送到中国服务器。两个扩展总安装量达150万次。
Q2:这些恶意扩展是如何避免被发现的?
A:这些扩展完全按照宣传功能运行,提供正常的代码自动完成和错误解释功能,因此不会引起用户怀疑。同时它们在后台秘密收集数据,每次文件编辑都会触发数据窃取过程。
Q3:PackageGate漏洞有什么危害?
A:PackageGate是JavaScript包管理器中发现的六个零日漏洞,可以绕过安全控制措施,跳过包安装时的脚本执行检查。这使得攻击者能够绕过"--ignore-scripts"等防御机制,对软件供应链安全构成威胁。
热门跟贴