目录导航
30 分钟。30 分钟是我们开发、发布和完善 Visual Studio Code(地球上最受欢迎的 IDE,每月用户超过 1500 万)扩展所花费的时间,该扩展会更改 IDE 的颜色,同时将所有源代码泄露到远程服务器。我们编写了代码、设计了资产、注册了域名、发布了扩展、生成了虚假评论、找到了第一个受害者,并在 VSCode 市场(每月浏览量达 450 万次的页面)上达到热门状态,并确认安装在多家市值数十亿美元的公司内部,所有这一切都在 30 分钟内完成。
我们处于安全应用程序和环境的顶峰,但只需 30 分钟即可绕过最复杂的安全环境。
这是开发人员扩展不为人知的故事。

在探索网络安全领域的想法时,Itay、Idan 和我偶然发现了一篇 Medium 文章,讨论了在 Visual Studio Code 扩展中发现的漏洞。该文章讨论了一个众所周知且广泛使用的 VSCode 扩展,该扩展正在窃取有关开发人员机器的信息,同时假装只是另一个主题。在研究此事后,我们偶然发现无数篇文章提到在 VSCode 扩展和其他 IDE 中发现的漏洞,但我们找不到这个明显问题的解决方案,所以我们构建了一个。
到目前为止没有人解决这个问题是有充分理由的,这一切都源于这样一个事实:对于大型安全公司来说,这个问题太小了,不值得关注,而对于初创公司来说,这是一个太小的机会,无法在此基础上建立业务。此外,对于微软本身来说,这并不是一个高优先级的问题(我甚至认为这不符合他们的利益,因为他们希望在他们的市场上有尽可能多的扩展,而增加上传过程的阻力并不理想)。
那么谁来解决这个问题呢?三个热爱安全并热爱打造产品的人。
入侵 VSCode应用商店
让我们回顾一下。在开始构建之前,我们决定测试创建一个恶意的 VSCode 扩展有多难,该扩展会窃取源代码并将其发送到远程服务器。首先,我们必须选择要构建的内容,我们记得偶然发现一篇文章提到在山寨扩展中发现的恶意代码,该扩展窃取了名为“Prettier — Code formatter”的流行 VSCode 扩展的资产和名称。受到启发,我们决定采用流行的德古拉主题“Dracula Official”(安装量超过 +6,000,000 次)并创建我们自己的山寨“Darcula Official”。
30 分钟后,下载源代码、添加代码并复制所有营销资源后,我们得到了以下结果:

我们甚至有一个域名darculatheme.com,类似于官方的draculatheme.com。令人惊讶的是,要成为 VSCode 市场上经过验证的发布者,你唯一需要做的事情就是验证你的域名,所以几分钟后我们的可信度就大大提高了——

我们发现的另一个有趣的怪癖是,添加任何 Github 存储库就package.json
足以让 Microsoft 将其列为扩展页面上的官方存储库,即使不拥有该存储库。因此,我们继续添加官方 Dracula 主题存储库,以进一步提高可信度。
现在我们已经可信了,我们添加了有趣的部分。这是我们添加到主题扩展的部分代码 –

简而言之,每次受害者在编辑器上打开文档时,我们都会读取代码并将其发送到我们的 Retool 服务器,另外向我们的服务器发送一个信标,其中包含有关主机的信息,例如主机名、域、平台、扩展数量等。
瞧瞧,我们发布扩展程序仅几分钟后,它就在 VSCode 市场上线了,我们有了第一个受害者。

DESKTOP-97KBB6H 先生。
仅仅一天之后,我们就已经有了 100 多个不同的受害者,而我们并没有推广该扩展,也没有采取任何特殊措施让开发人员安装它(当搜索“Darcula 主题”时,我们在第一页,并且是唯一经过验证的发布者!)。
几天后,大事发生了。我们发现一个受害者被识别为一台 Windows 机器,位于一家市值4830 亿美元的上市公司的域和网络内,后来我们确认该病毒位于数十家市值数十亿美元的知名公司内,位于世界上最大的安全公司之一内,位于某国的法院网络内(为了他们着想,我们保留这些公司的名称),这向我们证明了这种攻击媒介的巨大危险性。
最后我们醒来看到这个,我们在市场上流行起来了 –

VSCode 市场主页,这个页面每月的浏览量高达 450 万次!,如今该扩展程序在世界各地已有数千次安装。
亲身体验了创建和发布恶意扩展是多么容易之后,我们知道在评估 VSCode 扩展的风险时要寻找什么。
所以现在怎么办?
当我们开始这段旅程时,我们从未想象过它会带我们走上怎样的道路。事后看来,这种攻击媒介的风险和高影响潜力是显而易见的,凸显了它对威胁行为者的巨大价值。
意识到我们实验的重要性后,我们决定深入研究 VSCode 市场中恶意扩展的当前状态。
我们的下一篇博客文章“ 2/6 | 揭露恶意扩展:来自 VS Code 市场的令人震惊的统计数据”揭示了我们的发现,现已发布。
请务必关注我们——
阿米特·阿萨拉夫(Amit Assaraf )——https : //x.com/amitassaraf
Itay Kruk — https://x.com/ity_krk
Idan Dardikman — https://x.com/IDardikman
注意:撰写本文后,我们开始与超过 10 家价值数十亿美元的公司进行负责任的披露,以帮助减轻其组织中的这种安全风险。
转载请注明出处及链接