等微软作为太迟:主动防御 VS Code 恶意扩展

作者:Sender Su  来源:本站原创  发布日期:2024-10-18  最后修改日期:2024-10-19

笔者之前说过,自己也是 VS Code 的重度使用者。所以对于 VS Code 恶意扩展这种事情就尤其关注。具体前因在笔者这篇文章:《微软不作为:VS Code 恶意扩展层出不穷》

在写前文的同时,笔者尝试了 ExtensionTotal 这个 VS Code 恶意扩展的检测扩展(服务),还算是当前条件下防御 VS Code 恶意扩展比较有效的方法。

而且,即使微软跟得上社区呼声,对 VS Code 进行基于安全的权限设计改造(即实现了被动防御),用户也依然有必要具备 VS Code 恶意扩展的主动防御工具,防御覆盖面才足够完整。

文章题头图

笔者:国际认证信息系统审计师、软考系统分析师、软件工程硕士

ExtensionTotal 本身也是 VS Code 的扩展,可以直接搜索出来安装:

图1 ExtensionTotal 扩展介绍页

图1 ExtensionTotal 扩展介绍页

ExtensionTotal 扩展只是前端,对用户已经安装的 VS Code 扩展的扫描还需要依赖于 ExtensionTotal 的后端服务。

因此用户需要先到 ExtensionTotal 网站(https://extensiontotal.com/)简单地用电子邮箱注册,就可获取免费但有限使用的 API Key,然后输入到 VSCode 的设置:

图2 ExtensionTotal 扩展的设置

图2 ExtensionTotal 扩展的设置

从设置可见,ExtensionTotal 可以在两种情况下启动扫描:1) VS Code 启动时扫描;2)每隔特定的时间扫描。

虽然设置说明中没有明确指出,但经测试,当在使用 VS Code 期间发生了扩展的新安装或更新时,也会触发 ExtensionTotal 进行扫描。

ExtensionTotal 在完成扫描没有找到高风险扩展时会给出提示,可以点击展开其分页查看具体结果:

图3 扫描完成,结果安全

图3 扫描完成,结果安全

但免费 API Key 用量有限,仅适用于有特定工作方向、安装的扩展数量不多的 VS Code 用户。对于笔者这使用了 n 种开发语言环境,总共安装了85个 VS Code 扩展的环境,还未能完全扫描就已经达到了扫描上限。

图4 超过免费限制的提示

图4 超过免费限制的提示

除了扫描恶意扩展之外,ExtensionTotal 还会通过邮件对登记用户发送恶意扩展提醒通知:

图5 邮件提醒发现新的恶意扩展

图5 邮件提醒发现新的恶意扩展

通过提醒通知可以查看其发现的具有恶意行为特征的扩展。比如邮件中给出的第一个,扩展的名字是 Solidity (Ethereum),仅这名字就能骗到不少从事区块链合约开发的开发者。通过邮件可以查看该恶意扩展的详细情况:

图6 恶意扩展分析报告

图6 恶意扩展分析报告

邮件提及的两项恶意扩展:Solidity (Ethereum) 和 Zoom Workspace 经 ExtensionTotal 发现和报告给微软后,现已从 VS Code 扩展市场下架,扩展的页面显示 404(这也太简单直接了些,微软应该给出告警)。

值得注意的是恶意扩展的冒充行为。从恶意扩展分析报告内容(图6)可以观察到,比如扩展的ID、扩展的名称、作者信息、功能描述以及安装数量这些信息,均能对寻找可用扩展的 VS Code 用户构成有效欺骗。

所以笔者认为,无论是在VS Code 的当前阶段抑或是以后,像 Extension Total 这一类的恶意扩展主动防御工具都是 VS Code 用户必须具备的。

注:题头图用豆包生成,它现在总是会生成错误的手指,要不断修改提示出3~4次图才有可用的结果。

本栏目相关
  •  2024-10-18 等微软作为太迟:主动防御 VS Code 恶意扩展
  •  2022-05-11 CIS-CAT 配置评估工具介绍及操作实践
  •  2022-03-16 Windows 系统安全基线及软件工具介绍
  •  2022-08-28 网络攻防中的色彩象征
  •  2022-03-11 安装RHEL/CentOS时如何选择配置安全策略?
  •  2023-02-27 注意:TightVNC 2.8.75 释出,修补 zlib 漏洞 CVE-2022-37434
  •  2022-03-25 从甲方角度介绍“CIS互联网安全中心”
  •  2022-03-17 详细了解微软安全合规工具包(SCT)
  •  2022-03-28 如何应用CIS互联网安全中心发布的《CIS关键安全控制措施集》之一:总览
  • 本站微信订阅号:

    微信订阅号二维码

    本页网址二维码: