仅用 30 分钟!开发者做“山寨版” VSCode 扩展,攻破 4830 亿美元巨头,甚至登上了官方热趋榜?

整理 | 郑丽媛
出品 | 程序人生(ID:coder_life)

Visual Studio Code(VSCode),一款由微软发布的源代码编辑器,受到了全球许多专业软件开发者的喜爱——然而近日,一组国外研究团队宣称:他们仅在 30 分钟内,开发了一个“山寨” VSCode 扩展程序,并成功黑进了多家市值数十亿美元的公司。

“明明我们正处于安全应用和环境的顶峰,但 30 分钟就能绕过最复杂的安全环境。

该研究团队不公开“受害者”的具体名称,但透露其中包括一家市值 4830 亿美元的上市公司、多家大型安全公司和某个国家司法法院。

“三个热爱安全和产品开发的人”,为解决问题而做实验

在进入正题前,有一点需要明确:该研究团队做这个实验,是为了发现并解决问题,并不是真正的黑客,也没有造成实质性伤害。

该研究团队由三个人组成,即 Amit Assaraf、Itay Kruk 和 Idan Dardikman,他们自诩是“三个热爱安全和产品开发的人”。在探索网络安全领域时,他们偶然发现了一篇在 VSCode 扩展中发现漏洞的媒体文章。据悉,这个恶意扩展伪装成了另一个被广泛使用、较为知名的扩展,即通过容易混淆的名字欺骗用户安装,以窃取开发者设备上的信息。

对此事进行研究后,该研究团队发现有许多文章都提到了在 VSCode 扩展和其他集成开发环境中均存在类似漏洞,但他们却找不到解决这个问题的相关方法。其背后理由也很好理解:

(1)对于大型安全公司来说,这个问题太小不值得关注;

(2)对于初创安全公司来说,这个市场太小,无法建立自己的业务;

(3)对于微软本身来说,这也不是一个高度优先的问题,甚至还可能有悖于其利益:他们肯定希望市场上能有尽可能多的扩展,若上传过程中与开发者摩擦太多,不利于市场的快速扩大。

“那么,谁来为这个问题提供解决方案呢?三个热爱安全和产品开发的人。”

在这样的背景下, Amit Assaraf、Itay Kruk 和 Idan Dardikman 三人决定进行一个实验:创建一个恶意 VSCode 扩展,看看用它来窃取源代码并将其发送到远程服务器有多难。

与正版 Dracula 极为相似的山寨版“Darcula”

开始构建前,这三人想到了之前看过的一篇文章,其中提到在一个山寨扩展中发现了恶意代码,而该扩展盗用了一个名为“Prettier - Code formatter”的主流 VSCode 扩展的名字。

受此启发,他们决定做一个“Dracula Official”的山寨版——“Darcula Officia”(字母 r 和 a 颠倒了位置)。

据了解,正版 Dracula 是一个广受欢迎的开源主题,专为喜欢暗色界面的开发者设计。其暗色模式具有高对比度的色调,视觉上非常吸引人,还有助于减少长时间编码过程中的眼睛疲劳,因此被大量开发人员使用,在 VSCode Marketplace(微软为 VSCode 运营的一个扩展市场)上的安装量甚至已超过 700 万。

(正版 Dracula 的安装页面)

瞄准好“山寨”目标后,该研究团队就在 30 分钟内下载了正版 Dracula 源代码、额外添加了部分代码并复制了所有资源后,得到了下面这个山寨版“Darcula Officia”——乍一看,与正版毫无区别。

(山寨版 Darcula 的安装页面)

除了下载页面高度相似,该研究团队还特别注册了一个与官方 draculatheme.com 类似的域名:darculatheme.com。令他们感到意外的是,想要成为 VSCode Marketplace 上的验证发布者,也只需验证域名。

于是不过几分钟后,这个山寨版 Darcula 就通过了 VSCode Marketplace 的验证,可信度瞬间提高。

不仅如此,他们发现在 package.json 中添加任何 Github repo 都能让微软将其列为扩展页面上的官方 repo,即使不是该 repo 作者也行。因此,该团队进一步在山寨版 Darcula 上添加了正版 Dracula 的官方 repo,使其可信度再度提升。

山寨版 Darcula 竟登上了热门趋势!

既然山寨版 Darcula 的可信度已经有了,接下来就是添加恶意代码了。

上文提到,该研究团队向这个扩展中“额外添加了部分代码”,这实际上是一个附加脚本,用于收集系统信息,还会通过 HTTPS POST 请求将其发送到远程服务器:“简而言之,每次受害者在编辑器上打开文档时,我们都能读取代码并将其发送到我们的 Retool 服务器,此外还会向我们的服务器发送一个信标,其中包含主机信息,如主机名、域名、平台、扩展数量等。”

下面是他们添加到该扩展中的部分具体代码:

可能会有人质疑,这样的恶意代码不会被端点检测和响应(EDR)工具标记吗?研究人员表示:不会的,因为 VSCode 作为开发和测试系统,因此在这方面受到了宽大处理。

“不幸的是,传统的端点安全工具(EDR)无法检测到这种恶意活动。VSCode 的构建是为了读取大量文件、执行许多命令并创建子进程,因此 EDR 无法了解 VSCode 的活动是合法的开发者活动还是恶意扩展。”

一切准备就绪,他们便把这个山寨版 Darcula 进行了发布。它在 VSCode Marketplace 刚上线不过几分钟,就迎来了第一位“受害者”:

一天之后,该研究团队并没有特别为此进行推广,但还是又多了 100 多名不同的“受害者”。另外,或许是由于发布者经过验证,在 VSCode Marketplace 搜索“Darcula”时,该扩展显示在第一页。

没想到,几天后这个“受害者”规模愈发庞大。该研究团队确认,有一家市值 4830 亿美元的上市公司落入陷阱,还有数十家市值数十亿美元的公司、全球最大的安全公司之一以及某个国家的司法法院都出现在了“受害者”名单中——为了保护各方利益,研究团队选择不透露公司名称。

更离谱的是,他们最后发现,这个山寨版 Darcula 竟还一度登上了 VSCode Marketplace 的热门趋势!

微软尚未对此进行回应

在亲身经历了创建和发布恶意扩展有多么容易之后,该研究团队自己都感到意外:“当开始这个实验时,我们从未想象过它最终会发展成这样。事后看来,这种攻击载体的风险和高影响潜力显而易见,也凸显了它对攻击者的巨大价值。”

这样的结果,让他们意识到了这个实验的意义重大,由此深入研究了一番 VSCode Marketplace 中恶意扩展的现状,并发现了以下情况:

● 1283 个带有已知恶意代码(共计 2.29 亿次安装)。

● 8161 个与硬编码 IP 地址通信。

● 1452 个运行未知可执行文件。

● 2304 个使用另一个发布者的 Github repo,说明它们是山寨版。

究其原因,是因为微软在 VSCode 市场上缺乏严格的控制和代码审查机制,使得攻击者可以肆无忌惮地滥用平台规则。可以预见的是,随着该平台的使用越来越多,未来情况将愈发糟糕。

研究人员警告称,从数字上可以看出,VSCode Marketplace 中存在大量会给企业带来风险的扩展程序:“VSCode 扩展是一种被滥用和暴露的垂直攻击,具有零可见性、高影响和高风险。这个问题对企业构成了直接威胁,值得安全界关注。”

目前,该研究团队已把检测到的所有恶意扩展都报告给微软,并详述了当前 VSCode Marketplace 存在的巨大安全设计缺陷。不过截至发稿,绝大多数扩展仍可通过 VSCode Marketplace 下载,微软方面也尚未对加强安全审查的要求作出回应。

参考链接:

https://medium.com/@amitassaraf/the-story-of-extensiontotal-how-we-hacked-the-vscode-marketplace-5c6e66a0e9d7

https://www.bleepingcomputer.com/news/security/malicious-vscode-extensions-with-millions-of-installs-discovered/amp/

推荐阅读:

27 天复刻一个类 Unix 系统!

ChatGPT “背锅”?直接复制其代码,损失 10000 美元,服务停了 5 天

中国版 LMSYS 来了!扣子模型广场带来了什么?

相关推荐

  • 逆袭!17岁学服装设计的中专女孩,以第12名成绩“杀入”阿里巴巴全球数学竞赛决赛圈
  • AI更适合前端开发者,UI不止是聊天机器人
  • 微软前员工:微软无视警告,罔顾国家利益!公司漏洞最终导致俄罗斯黑客的大规模攻击
  • Intel入局大模型,烧钱搜索130亿种网络结构,让LLaMa2瘦身30%
  • 一分钱没花!苹果与OpenAI合作没有支付任何费用,是谁赚了
  • 落魄宗门里的绝世高手!中专女生逆袭拿下数学竞赛全球第12名,比大模型还强不少
  • 我已经开始用ChatGPT搞科研了,你绝对想不到~
  • 已开源!可控视频生成新SOTA,给定参考人物图像即可定制高质量跳舞视频
  • 港大、北大等发布最新综述:一文解析生成技术在时空数据挖掘中的应用
  • 智源联合多所高校推出首个多任务长视频评测基准MLVU
  • 多样化数据源助力AI模型训练
  • AI模型训练加速沙龙来杭州啦!
  • 电商知识图谱建设及大模型应用探索
  • 号称 “颜值天花板” 的剪切板工具,长什么样?
  • 什么是熔断降级?说 4 种解决方案
  • “土猪拱白菜” 的学霸张锡峰,如今也苦于卷后端
  • 大爆冷!17岁中专生吊打一众名校生!
  • 马斯克 · 特斯拉2024年度股东大会 · 图文完整版3万字(附全程精校视频)
  • 17岁中专少女,全球第12名,闯进阿里巴巴全球数学竞赛决赛!
  • 吴恩达的新项目,我给加上了国产大模型 API