
锁定开发者的恶意组件攻击,大部分是通过NPM组件与PyPI组件进行,近期更出现通过NPM组件传播的蠕虫程序,然而,这样的威胁,现在也锁定集成式开发环境(IDE)工具Visual Studio Code(VS Code)的用户而来。
最近安全企业Koi Security披露名为GlassWorm的恶意程序,并指出这是第一个出现在OpenVSX市场的蠕虫。该恶意程序的可怕之处,并非只是因具备蠕虫的特质能够自我感染及蔓延,黑客还采用无法肉眼识别的Unicode字符,导致恶意程序代码无法通过IDE工具看到。再者,攻击者通过Solana区块链架设C2的基础设施,并滥用Google行程表服务充当备援C2,而且,GlassWorm还具备远程访问木马(RAT)的完整功能,能将开发人员遭黑入的计算机,变成网络犯罪的代理服务器节点。
除此之外,GlassWorm还会搜括受害计算机的NPM、GitHub,以及Git凭证,破坏其他组件或延伸组件,以便更广泛地发动供应链攻击,以及传播蠕虫;同时,它也能对49个加密货币钱包的浏览器延伸组件下手,榨干开发人员的资产;再者,该恶意程序会在受害计算机植入SOCKS代理服务器与VNC服务器,目的是将计算机当作犯罪基础设施,并让攻击者能完整的远程访问。
这波攻击是怎么发生的?10月17日Koi Security看到有7个OpenVSX市场的VS Code延伸组件被感染,当时这些组件一共被下载约35,800次。
但该公司隔天发布博客的时候,指出有10个OpenVSX的延伸组件在传播GlassWorm,而且当时攻击者的C2基础设施已经全面运行,遭窃的凭证已被用于感染其他的组件。
到了10月19日,GlassWorm灾情扩大,已出现在微软经营的Visual Studio Code Marketpalce。
Koi Security最初通过自家的分析引擎侦测到第一个有问题的延伸组件CodeJoy,起因是该组件出现可疑的网络连接行为与凭证访问机制,而且,这些与开发者宣称的功能没有关系。
于是该公司的研究人员查看其源码,他们在第2行与第7行中间看到一大片空白,但实际上这些其实是无法看见或打印的Unicode特殊字符组成。Koi Security强调,攻击者并未进行混淆处理,但相关异常不仅不会在IDE出现,对于检查程序代码的开发人员来说,就像是空行及空格,而且,静态分析工具也难以发现有问题,不过,对于JavaScript解译工具,它们却是可以执行的程序代码。而这样的特性,也是Koi Security将其命名为GlassWorm的由来。

经过拆解、分析黑客的程序代码之后,他们总共看到黑客使用3种C2通信渠道,分别是:Solana区块链、Google行程表活动,以及固定IP地址。其中的行程表活动,还会对受害计算机部署另一个恶意酬载Zombi,此为一系列的网络渗透工具,除前述SOCKS代理服务器与VNC服务器(HVNC),还会植入WebRTC P2P、BitTorrent DHT等模块,使得黑客能绕过防火墙的管制,并下达无法被拦截的命令。
回顾近期安全攻击手法,黑客通过开源组件对开发人员传播蠕虫程序的情况,似乎日渐升温。例如,上个月震憾IT界的软件供应链攻击活动Shai-Hulud其中,攻击者通过蠕虫的方式,两天内感染超过500个NPM组件,此事因安全企业CrowdStrike受害,引起高度关注。











