![]()
網(wǎng)絡(luò)安全研究人員披露了一項(xiàng)名為"沙蟲模式"的活躍供應(yīng)鏈蠕蟲攻擊活動,該活動利用至少19個惡意npm包來實(shí)施憑據(jù)收集和加密貨幣密鑰竊取。
供應(yīng)鏈安全公司Socket將此次活動命名為SANDWORM_MODE。與之前的Shai-Hulud攻擊波類似,這些惡意代碼包具備竊取系統(tǒng)信息、訪問令牌、環(huán)境機(jī)密和API密鑰的能力,并能通過濫用被盜的npm和GitHub身份自動傳播以擴(kuò)大影響范圍。
Socket公司表示:"該樣本保留了Shai-Hulud的特征,并新增了GitHub API數(shù)據(jù)竊取功能(具備DNS回退機(jī)制)、基于鉤子的持久化、SSH傳播回退、MCP服務(wù)器注入(內(nèi)嵌針對AI編程助手的提示注入)以及大語言模型API密鑰收集功能。"
這些惡意包由兩個npm發(fā)布者別名official334和javaorg發(fā)布到npm平臺,具體包括:
claud-code@0.2.1、cloude-code@0.2.1、cloude@0.3.0、crypto-locale@1.0.0、crypto-reader-info@1.0.0、detect-cache@1.0.0、format-defaults@1.0.0、hardhta@1.0.0、locale-loader-pro@1.0.0、naniod@1.0.0、node-native-bridge@1.0.0、opencraw@2026.2.17、parse-compat@1.0.0、rimarf@1.0.0、scan-store@1.0.0、secp256@1.0.0、suport-color@1.0.1、veim@2.46.2、yarsg@18.0.1
此外,還發(fā)現(xiàn)了四個不包含惡意功能的休眠包:ethres、iru-caches、iruchache、uudi。
這些惡意包不僅通過npm傳播,還包含武器化的GitHub Action,能夠收集CI/CD機(jī)密并通過HTTPS(具備DNS回退)竊取數(shù)據(jù)。它們還具有破壞性功能,當(dāng)失去GitHub和npm訪問權(quán)限時,會觸發(fā)主目錄清除的終止開關(guān)。目前該清除功能默認(rèn)關(guān)閉。
惡意軟件的另一個重要組件是"McpInject"模塊,專門針對AI編程助手。該模塊部署惡意模型上下文協(xié)議服務(wù)器,并將其注入到工具配置中。MCP服務(wù)器偽裝成合法工具提供商,注冊三個看似無害的工具,每個工具都嵌入提示注入來讀取~/.ssh/id_rsa、~/.ssh/id_ed25519、~/.aws/credentials、~/.npmrc和.env文件的內(nèi)容,并將它們暫存到本地目錄以便后續(xù)竊取。
該模塊針對Claude Code、Claude Desktop、Cursor、Microsoft Visual Studio Code Continue和Windsurf等工具。它還收集九個大語言模型提供商的API密鑰:Anthropic、Cohere、Fireworks AI、Google、Grok、Mistral、OpenAI、Replicate和Together。
此外,載荷還包含一個多態(tài)引擎,配置為調(diào)用本地Ollama實(shí)例和DeepSeek Coder模型來重命名變量、重寫控制流、插入垃圾代碼并編碼字符串以規(guī)避檢測。雖然該引擎在當(dāng)前檢測到的包中處于關(guān)閉狀態(tài),但包含此功能表明攻擊者正計(jì)劃發(fā)布更多惡意軟件迭代版本。
整個攻擊鏈分為兩個階段展開:第一階段組件捕獲憑據(jù)和加密貨幣密鑰,然后加載第二階段,后者執(zhí)行更深層的密碼管理器憑據(jù)收集、蠕蟲式傳播、MCP注入和完整數(shù)據(jù)竊取。第二階段在48小時后(加上每臺機(jī)器最多48小時的隨機(jī)延遲)才會激活。
建議已安裝上述任何包的用戶立即刪除它們,輪換npm/GitHub令牌和CI機(jī)密,并檢查package.json、鎖文件和.github/workflows/中的任何意外更改。
Socket公司表示:"多個功能標(biāo)志和防護(hù)措施仍表明威脅行為者正在迭代開發(fā)功能(例如,在某些版本中禁用破壞性例程或多態(tài)重寫的開關(guān))。然而,相同的蠕蟲代碼出現(xiàn)在多個錯別字搶注包和發(fā)布者別名中,表明這是有意分發(fā)而非意外發(fā)布。"
"破壞性和傳播行為仍然真實(shí)存在且風(fēng)險(xiǎn)很高,防御者應(yīng)將這些包視為活躍的威脅風(fēng)險(xiǎn),而非良性測試工件。"
此次披露之際,Veracode和JFrog還詳細(xì)介紹了另外兩個惡意npm包"buildrunner-dev"和"eslint-verify-plugin",它們旨在傳播針對Windows、macOS和Linux系統(tǒng)的遠(yuǎn)程訪問木馬。buildrunner-dev部署的.NET惡意軟件是Pulsar RAT,這是一個通過托管在i.ibb[.]co上的PNG圖像傳遞的開源RAT。
另一方面,eslint-verify-plugin"偽裝成合法的ESLint實(shí)用工具,同時部署針對macOS和Linux環(huán)境的復(fù)雜多階段感染鏈",JFrog表示。
在Linux上,該包部署用于Mythic C2框架的Poseidon智能體。它促進(jìn)廣泛的后滲透功能,包括文件操作、憑據(jù)收集和橫向移動。macOS感染序列執(zhí)行Apfell,這是一個面向macOS的JavaScript自動化智能體,用于進(jìn)行廣泛的數(shù)據(jù)收集并創(chuàng)建具有管理員權(quán)限的新macOS用戶。
智能體竊取的部分?jǐn)?shù)據(jù)包括:系統(tǒng)信息、通過虛假密碼對話框獲取的系統(tǒng)憑據(jù)、Google Chrome瀏覽器書簽、剪貼板內(nèi)容、與iCloud鑰匙串和Chrome cookie、登錄數(shù)據(jù)和書簽相關(guān)的文件、屏幕截圖、文件元數(shù)據(jù)。
JFrog表示:"eslint-verify-plugin包是惡意npm包如何從簡單的安裝鉤子升級為完整系統(tǒng)妥協(xié)的直接例子。通過偽裝成合法實(shí)用工具,攻擊者成功隱藏了多階段感染鏈。"
這些發(fā)現(xiàn)還跟隨了Checkmarx的一份報(bào)告,該報(bào)告標(biāo)記了一個名為"solid281"的惡意VS Code擴(kuò)展,它冒充官方Solidity擴(kuò)展,但隱藏了秘密功能,在應(yīng)用啟動時自動執(zhí)行高度混淆的加載器,并在Windows上投放ScreenConnect,在macOS和Linux機(jī)器上投放Python反向shell。
Checkmarx指出:"這反映了其他團(tuán)隊(duì)報(bào)告的更廣泛模式:Solidity開發(fā)者似乎被專門針對,包括使用虛假Solidity擴(kuò)展安裝ScreenConnect然后部署后續(xù)載荷的攻擊活動。"
Q&A
Q1:SANDWORM_MODE攻擊活動有什么特點(diǎn)?
A:SANDWORM_MODE是一個活躍的供應(yīng)鏈蠕蟲攻擊活動,利用至少19個惡意npm包實(shí)施憑據(jù)收集和加密貨幣密鑰竊取。它具備竊取系統(tǒng)信息、訪問令牌、環(huán)境機(jī)密和API密鑰的能力,并能通過濫用被盜的npm和GitHub身份自動傳播擴(kuò)大影響。
Q2:McpInject模塊是如何針對AI編程助手進(jìn)行攻擊的?
A:McpInject模塊部署惡意模型上下文協(xié)議服務(wù)器并注入到AI編程助手的工具配置中。它偽裝成合法工具提供商,注冊看似無害的工具,每個工具都嵌入提示注入來讀取SSH密鑰、AWS憑據(jù)、npm配置和環(huán)境變量等敏感文件內(nèi)容。
Q3:如果發(fā)現(xiàn)安裝了這些惡意npm包應(yīng)該怎么辦?
A:用戶應(yīng)立即刪除這些惡意包,輪換npm和GitHub令牌及CI機(jī)密,并仔細(xì)檢查package.json、鎖文件和GitHub工作流目錄中的任何意外更改。由于這些包具有真實(shí)的破壞性和傳播行為,應(yīng)將其視為活躍的威脅風(fēng)險(xiǎn)。
特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺“網(wǎng)易號”用戶上傳并發(fā)布,本平臺僅提供信息存儲服務(wù)。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.