威脅數據庫 惡意軟體 PhantomRaven惡意軟體

PhantomRaven惡意軟體

網路安全研究人員發現了一種針對 npm 生態系統的活躍軟體供應鏈攻擊。他們已識別出 100 多個惡意軟體包,這些軟體包能夠直接從受感染的機器竊取敏感的開發者憑證,包括身份驗證令牌、CI/CD 金鑰和 GitHub 憑證。

該活動代號為 PhantomRaven,於 2025 年 8 月首次出現。自那時起,它已擴展到 126 個 npm 庫,並獲得了超過 86,000 次安裝,這表明這些惡意軟體包的傳播和採用速度非常快。

惡意包裹悄無聲息地逃過檢測

被標記的幾個軟體包包括:

  • op-cli-installer – 486 次下載
  • 未使用的導入 - 1,350 次下載
  • badgekit-api-client – 下載量:483
  • polyfill-corejs3 – 475 次下載
  • eslint-comments – 下載量:936

PhantomRaven 的隱藏性尤其體現在其對遠端動態依賴 (RDD) 的使用上。這些惡意軟體套件並非從官方 npm 註冊表中取得程式碼,而是指向一個自訂的 HTTP URL (packages.storeartifact.com)。這使得 npm 可以從不受信任的外部來源檢索依賴項,從而有效地繞過了 npmjs.com 的保護機制。

傳統的安全掃描器和依賴項分析工具無法偵測到這些 RDD,因為自動化系統會將這些軟體包視為「0 個依賴項」。

攻擊原理

攻擊鏈從開發者安裝看似無害的軟體包之一開始。關鍵要素包括:

安裝前鉤子執行:該軟體包包含一個安裝前生命週期腳本,該腳本會自動執行主有效載荷。

遠端有效載荷檢索:此腳本從攻擊者控制的伺服器取得惡意依賴項。

資料外洩:惡意軟體一旦執行,就會掃描開發人員的環境中的電子郵件地址,收集 CI/CD 環境詳細信息,對系統進行指紋識別(包括公共 IP),並將資料發送到遠端伺服器。

攻擊者可以隨意修改有效載荷,最初提供無害程式碼以逃避偵測,然後在軟體包被廣泛採用後推送惡意更新。

利用人類和人工智慧的盲點

軟體包名稱的選擇是經過精心設計的。攻擊者利用一種名為「網域搶註」(slopsquatting)的策略,即大型語言模型(LLM)會產生一些不存在但聽起來合理的軟體包名稱。開發者可能會因為這些軟體包名稱的逼真而信任它們,從而忽視隱藏的威脅。

正如研究人員指出的那樣,PhantomRaven 凸顯了攻擊者日益增長的複雜程度:

  • 遠端動態相依性會繞過靜態分析。
  • AI產生的軟體包名稱利用了開發者的信任。
  • 生命週期腳本無需使用者互動即可自動執行。

這次攻擊活動凸顯了惡意行為者如何找到新的方法來隱藏開源生態系統中的程式碼,並利用傳統安全工具的漏洞。

為什麼 npm 是首要目標

npm 生態系統發佈軟體套件的便利性,以及預先安裝、安裝和後安裝腳本的自動執行,使其成為主要攻擊目標。攻擊者可以將惡意行為隱藏在生命週期腳本中,而開發者往往對此毫不知情。這凸顯了現代開發環境中提高警覺和採取健全安全措施的必要性。

熱門

最受關注

加載中...