PuppyIP 资源中心
开发环境教程 6 分钟 发布于 2026-10-05

VS Code 主题扩展怎么查风险?GlassWorm 关联 ID 与停用步骤

先核对已安装扩展的发布者 ID、版本和所在 Profile,再决定处理范围。把检查对象、采取的动作和尚待调查的问题写在同一份记录中,便于自己或团队继续核对。

VS Code GlassWorm 主题扩展 扩展管理 开发环境

服务对象与地域限制

PuppyIP 仅面向海外合规企业及其授权人员提供服务,不面向中国大陆地区开放或提供代理服务。本服务仅限用于中国大陆境外的合法业务活动,严禁在中国大陆境内使用本服务。

代理 IP 或服务器位于境外,不改变上述限制。不得通过中转、转接、共享或转售向中国大陆境内的最终使用者提供本服务。使用前请阅读用户服务协议。

本文要点

  • 从实际安装环境开始检查,先留下可复核记录。
  • 精确记录 publisher.extension 格式的 ID,避免把相近名称当成同一扩展。
  • 已安装列表和处理动作须对应正确的编辑器、Profile 与运行环境。
  • 处理后保存前后记录,以及尚未检查的范围。

先分清调查范围,再看自己装了什么

Socket 于 2026 年 10 月 2 日发布主题扩展调查,将 microsoftvs.microsoftvs 和 cosmic-themes.theme-cosmic-nebula 的所分析 Marketplace 构建列为确认恶意。本文在北京时间 10 月 5 日核对原文,不把后来出现的社交帖当成首次披露日期。

调查还列出五个关联 ID:holiday-themes.theme-coca-cola-christmas、lohsebhipolg2s.theme-aurora-borealis、aurora-them-creator.theme-aurora-nocturne、solidity-syntax.deep-focus、charcoal-mint-studio.theme-charcoal-mint。关联身份不等于每个构建都已确认带有恶意载荷;其中 Aurora Nocturne 关联 ID 也与 microsoftvs.microsoftvs 不同。

原文说明,所分析的 Coca-Cola Christmas 与 Aurora Borealis 版本没有观察到活跃载荷。本轮没有逐包验证当前商店可用性,也不能从这些结论推导所有历史版本都安全或都受影响。自查的第一步是确认身份,不能只凭主题名字、图标或安装量下结论。

第一步:在已安装列表中记录 ID 与版本

打开实际使用的 VS Code,在 Extensions 视图输入 @installed,或从命令面板运行 Extensions: Focus on Installed View。先看已安装内容,不要把搜索商店的结果当成本机清单。

点开待检查扩展,在详情页的 Marketplace Info 中核对 publisher.extension 格式的标识;记录显示名、ID 和版本。需要定位某一 ID 时,可以使用 @id:publisher.extension 精确搜索,再确认它是否已安装。名称相似而发布者不同,应分别记录,不能直接合并。

若已配置 VS Code 命令行入口,也可用下面这条只读命令列出安装 ID 和版本;它不安装扩展,也不运行调查样本。

code --list-extensions --show-versions

如果终端提示找不到 code,先按官方 CLI 文档检查命令行入口,或直接使用图形界面。不要为了查看列表去下载可疑 VSIX,也不要运行来源不明的修复脚本。保留检查时间与原始列表,便于之后对照处理前后的状态。

第二步:确认 Profile 和环境,避免漏查

VS Code 的 Profile 可以保存不同的扩展集合。先核对当前窗口使用哪个 Profile,再检查其他确实用于工作的 Profile;只查一个窗口,不能证明其他配置也没有相关扩展。

官方 CLI 支持用 --profile 指定清单范围。示例中的名称要替换为你确认存在的 Profile,不要直接照抄一个不存在的名称。

code --list-extensions --show-versions --profile "实际 Profile 名称"

如果团队还使用另一台电脑、远端开发窗口或不同编辑器客户端,应分别确认各自的安装列表和扩展来源。本机这一条清单不能覆盖所有环境。本文核对的是 VS Code 的管理操作;使用 Open VSX 的其他客户端,需要按该客户端自己的管理入口检查,不能机械套用 code 命令。

第三步:停用或卸载后,按提示更新扩展状态

已记录相关安装身份后,在 Extensions 视图打开对应扩展的管理菜单。需要先停止使用时选择 Disable;要移除安装包时选择 Uninstall。两者结果不同:禁用后扩展仍可能出现在已安装列表,卸载后才核对该 Profile 中是否已移除。

当前官方文档说明,这些动作之后可能提示 Restart Extensions,用于更新扩展宿主状态。按实际界面提示完成,再回到同一 Profile 的列表核对;不要把点击按钮本身当成处理已经生效。

CLI 也支持按精确 ID 卸载。下面是参数格式示意,执行前必须将 publisher.extension 换成已经确认的目标 ID,并核对 Profile。

code --uninstall-extension publisher.extension --profile "实际 Profile 名称"

如果结果与预期不符,先检查是否操作了另一份 VS Code、不同 Profile 或另一运行环境,再确认界面提示是否已完成。不要改用删除整个扩展目录来扩大处理范围;存在依赖或团队管理要求时,保留清单交给负责维护的人核对。

最后验收:扩展状态与既有影响分别确认

再次读取同一范围的已安装列表,对照 ID 和版本核对卸载结果;禁用状态要在扩展界面确认,列表命令不提供这一状态。记录尚未检查的设备、Profile 和客户端,当前清单不能还原全部安装历史。

Socket 指出,卸载不能撤销已执行载荷的影响。装过明确恶意构建时,保留安装记录,并由安全负责人核查后续执行及开发凭据。

最终记录应能回答三件事:检查了哪个安装环境,发现的是哪个完整 ID,扩展状态及后续调查分别完成到哪一步。这样既能避免误处理同名主题,也能让团队继续核查未覆盖的部分。

资料来源

常见问题

只看主题名称,能判断是不是调查里的包吗?

不能。应在详情中核对发布者和完整扩展 ID,并记录版本、来源与 Profile;相近显示名可能对应不同安装包。

处理后还在已安装列表,是操作失败了吗?

请回到扩展详情核对实际状态,并对照第四节记录处理结果;仅凭仍在清单里不能判断失败。

一条 code 列表命令能检查所有电脑和客户端吗?

不能。列表有当前安装与 Profile 范围;其他设备、远端环境及使用 Open VSX 的不同客户端须分别检查。

卸载成功后,还需要保留检查记录吗?

需要。保留 ID、版本、安装来源、检查范围和处理时间;扩展状态的验收与此前是否产生影响的调查应分别记录。