Npm 包 - 傳染性訪談

在北韓「傳染性訪談」供應鏈攻擊中,npm 包偽裝成良性 UI 庫

新發現的惡意 npm 套件偽裝成無害的前端輔助程序,但其中包含惡意混淆程式碼。

安全研究團隊 Xygeni 確定以下 npm 套件: 'react-ui-notify'、'react-tmedia'、'react-ui-animates'、'react-medias'、'react-mandes' 是……的改質衍生物 “bingo-logger”它本身就是一個惡意分支,模仿了流行的日誌包的結構和文件。 'pino' 為了使其看起來合法,這種偽裝被用來利用開發者的信任來吸引下載。實際上,程式碼庫中包含一個無關的、經過混淆處理的文件,該文件可在Node環境下運作。 

威脅行為者背景:「傳染性訪談」活動

傳染性採訪活動 與名為「威脅群集」的威脅群集相關 'UNC4034'報道稱,該組織與北韓相關勢力有聯繫 拉撒路集團 or APT38這是一個與北韓政權有關的知名國家支持組織。這次攻擊背後的威脅行為者慣於透過開源生態系統攻擊開發者,散佈偽裝成其他軟體的軟體包,這些軟體包會執行隱藏的有效載荷,最終從受感染的系統中竊取加密相關資料、原始碼和憑證。

戰術、技術和程序 這些 npm 套件中觀察到的(TTP)遵循相同的模式:

  • 模仿聽起來正規的項目名稱,以顯得值得信賴。
  • 在測試檔案和輔助腳本中嵌入混淆程式碼。
  • 運行隱藏的有效載荷,收集敏感資料並將其發送到遠端命令與控制 (C2) 伺服器。

技術發現:混淆酬載分析

有效載荷發現於/test/fixtures/eval/node_modules/test.list' 它使用混淆的 JavaScript(索引/陣列字串查找、編碼區塊)來隱藏可讀字串,並且由於安裝後腳本的存在,控制流程將在軟體包安裝完成後執行。 'npm run test || npm transpile || npm run skippackage.json。 

我們的分析顯示,這些軟體包包含一種自適應惡意軟體,能夠跨作業系統(Windows、macOS 或 Linux)和使用者環境傳播。這種能力表明,攻擊者有意針對經常在各種環境下工作的技術使用者。

一旦在系統中建立連接,惡意軟體就會掃描周圍環境,收集資訊。 詳細的系統訊息主機, 平台, 主目錄 以及 系統暫存目錄 在將其應用範圍擴展到儲存敏感資料的應用之前,例如 瀏覽器 (Chrome/Brave/Edge/Opera) 電子錢包它會遞歸搜尋瀏覽器設定檔、錢包檔案、鑰匙圈以及多種文件/文件類型的常見位置。搜尋關鍵字包括錢包、種子相關術語以及許多可能包含憑證或金鑰的檔案副檔名(*.env、*.key、*.wallet、*.json、*.txt、*.doc 等它包含常用目錄的排除列表,以避免明顯的系統檔案。

此有效載荷會寫入一個本地標記/鎖定檔案以防止多次並發運行,並將資料寫入作業系統臨時目錄以避免被偵測到。

混淆後的有效載荷還包含一個連接到遠端伺服器的通訊通道,該伺服器充當其命令與控制中心。通過該通道,它可以 提取竊取的信息 以及 接收進一步指示雖然基礎設施本身看起來有限且是專門建造的,但它的存在證實了攻擊者意圖對受感染的系統保持持續控制。

當惡意軟體發現敏感資料時,它會將這些資料打包,並嘗試使用 multipart/form-data 將它們上傳到託管在雲端伺服器上的遠端端點,以便將竊取的檔案附加到請求中。

妥協指標和緩解建議

建議各組織移除這些惡意依賴項(react-ui-notify、react-tmedia、react-ui-animates、react-medias、react-mandes、bingo-logger並刷新這些環境以確保完整性。所有可能已暴露的系統都應立即輪換所有憑證和存取令牌。

網路管理員應限制流向這些IP位址的出站流量。 23.227.202.24,131.153.22.25 並檢查近期連線是否有異常。強烈建議使用經過驗證的清潔源重建受影響的環境,以防止再次感染並確保供應鏈的完整性。

更廣泛的背景

總而言之,這些軟體包是另一個例子。 隨著基於 JavaScript 的供應鏈攻擊發展到新的成熟階段,攻擊者越來越多地創建外觀相似的軟體包,這些軟體包借鑒了受信任項目的結構和文檔,採用模組化擴展和更好的技術,使得檢測和緩解成為一項挑戰。 

這種演變增加了不知情的開發者意外安裝的可能性,並使攻擊者能夠更深入地存取建置環境。 CI/CD 系統和原始碼庫。

開源生態系統已成為此類攻擊活動的首選分發平台。攻擊者利用開發者對社群軟體包固有的信任,可以毫不費力地滲透軟體供應鏈,而且往往不會立即被發現或受到懲罰。

Xygeni 的惡意軟體預警 (MEW)

這起事件最初是透過 Xygeni 發現的。 惡意軟體預警 該系統持續監控 npm、PyPI、Maven 等開源軟體包註冊表,以發現惡意軟體包。

我們的檢測引擎由於這些軟體包結構異常、包含安裝後腳本且有效載荷經過混淆,自動將其標記為可疑軟體包。因此,這些惡意軟體(react-ui-notify、react-tmedia、react-ui-animates、react-medias 和 react-mandes)經我們的安全團隊確認為惡意程序,並在其被廣泛採用之前報告給了 npm。

Xygeni 早期預警如何保護您 pipelines

  • 實時威脅檢測掃描依賴關係圖中的每個新增或更新的軟體包,並標記可疑行為,例如作業系統系統呼叫、命令執行、混淆代碼、網域搶注等等。
  • 立即警報:一旦您的環境中出現新的威脅,立即透過 Slack、Jira 或電子郵件通知您的安全性和 DevOps 團隊。
  • 一鍵修復:生成 pull requests 移除或替換專案中存在漏洞的依賴項版本。
  • 支持的生態系: 目前支援 npm、PyPI、Maven 和 Packagist。
  • Xygeni 能協助您在供應鏈攻擊發生之前就將其攔截,從而在惡意軟體包到達您的建置之前就將其捕獲。

???? 免費試用 Xygeni Malware Early Warning 看看您能以多快的速度發現並消除自身供應鏈中的威脅。 pipelines.

sca-tools-software-composition-analysis-tools
優先處理、補救並保護您的軟體風險
註冊免費帳號。
不需要信用卡。

確保您的軟體開發和交付安全

使用 Xygeni 產品套件