新聞

去年10月揭露的蠕蟲程式GlassWorm,駭客最初於Open VSX與Visual Studio Code(VS Code)延伸套件市集從事活動,後續將範圍延伸到GitHub、NPM,甚至是Chrome延伸套件市集,如今傳出駭客轉移目標,針對受害開發環境的各種整合開發環境(IDE)工具。

資安公司Aikido在Open VSX看到惡意套件code-wakatime-activity-tracker,駭客模仿熱門的時間追蹤工具WakaTime,並在套件挾帶以程式語言Zig編譯而成的二進位檔案。與之前攻擊行動相同的是,此二進位檔案並非GlassWorm的實際有效酬載,而是駭客用來傳遞該蠕蟲的工具,這次GlassWorm感染的目標,是受害電腦安裝的所有IDE工具。

這次駭客上傳的惡意套件,看起來與正牌的WakaTime幾乎相同,具備相同的註冊指令、API金鑰的提示、狀態列圖示,但不同的地方在於其功能函式。惡意套件在執行WakaTime的邏輯之前,會根據受害電腦的作業系統載入對應的二進位檔案,在Windows電腦執行的是PE32+的DLL檔;而在macOS環境裡,則為可在x86或Arm晶片執行的通用Mach-O檔案。無論是DLL還是Mach-O檔,都是Node.js原生的附加元件(Add-on),駭客使用Zig編寫,並透過特定的共享程式庫編譯而成,並直接在Node.js的執行環境(Runtime)載入,更可怕的是,這種應用程式不僅能突破JavaScript沙箱限制而執行,還具備完整的作業系統層級存取權限。

一旦二進位檔案於受害電腦成功載入,就會試圖找出開發人員使用的IDE工具,這些工具的共通點,在於都能安裝VS Code延伸套件。這些IDE包含VS Code、VS Code Insiders、Cursor、Windsurf、VSCodium,以及Positron。接著,二進位檔案才會從GitHub擷取惡意的VSIX檔案。