每週下載數百萬次!惡意軟體包感染Linux和Windows裝置引發供應鏈攻擊

zktq2021發表於2021-10-26

開源軟體公司Sonatype的研究人員發現了多個惡意軟體包,這些軟體包將自己偽裝成 npm 登錄檔中的合法JavaScript庫,以在Windows、macOS和Linux機器上啟動加密礦工。

npm登錄檔是JavaScript包的資料庫,包括開源開發人員用來支援JavaScript程式碼共享的軟體和後設資料。

黑客劫持了流行的UA-Parser-JS NPM庫,這些庫每週下載數百萬次,在供應鏈攻擊中使用加密礦工和密碼竊取木馬感染 Linux 和 Windows 裝置。

UA-Parser-JS 庫用於解析瀏覽器的使用者代理以識別訪問者的瀏覽器、引擎、作業系統、CPU和裝置型別/型號。該庫非常受歡迎,每週下載數百萬次,本月下載量超過2400萬次。

此外,該庫還用於一千多個其他專案,包括Facebook、微軟、亞馬遜、Instagram、谷歌、Slack、Mozilla、Discord、Elastic、Intuit、Reddit 以及更多知名公司的專案。

UA-Parser-JS 專案被劫持安裝惡意軟體

10月22日,攻擊者釋出了惡意版本的UA-Parser-JS NPM庫,以在Linux和Windows裝置上安裝加密礦工和密碼竊取木馬。據開發者稱,他的NPM帳戶被劫持並用於部署該庫的三個惡意版本。

受影響的版本及其打補丁的版本是:

技術分析

報告稱,研究人員於 2021 年 10 月 15 日向 npm 報告了惡意包。報告指出,惡意軟體包被稱為okhsa - 編目為Sonatype-2021-1473 - 以及klow和klown -編目為 Sonatype-2021-1472。

研究人員稱,Okhsa 包含一個框架程式碼,可以在安裝前在 Windows 機器上啟動計算器應用程式。根據報告,這樣做的okhsa版本也包含klow或klown包作為一個依賴項。

報告稱:“Sonatype 安全研究團隊發現,klown 在被 npm 刪除後的幾個小時內就出現了。”

“Klown錯誤地宣稱自己是一個合法的JavaScript庫UA-Parser-js,以幫助開發人員從 User-Agent HTTP標頭中提取硬體細節(作業系統、CPU、瀏覽器、引擎等),”研究人員稱。

Sonatype研究員Ali ElShakankiry 分析了這些包,發現klow和klown包中包含加密貨幣礦工。

“這些軟體包在預安裝階段檢測當前作業系統,並繼續執行 .bat 或 .sh 指令碼,具體取決於使用者執行的是 Windows 還是基於 Unix 的作業系統,”ElShakankiry指出。

上述指令碼還“下載外部託管的EXE或Linux ELF,然後執行二進位制檔案,其中包含指定要使用的礦池、挖掘加密貨幣的錢包以及要使用的 CPU 執行緒數的引數”。

研究人員無法完全確定惡意行為者計劃如何針對開發人員。

研究人員指出:“沒有觀察到明顯的跡象表明存在域名搶注或依賴劫持的情況。Klow(n) 確實在表面上模仿了合法的UAParser.js庫,這使得這次攻擊看起來像是一次微弱的品牌劫持嘗試。”

攻擊破壞生態系統

Uptycs 威脅研究公司的研究人員最近發現一項活動,在該活動中,專注於雲端計算的加密劫持組織TeamTNT部署了Docker Hub上的惡意容器影像,並使用嵌入式指令碼下載用於橫幅抓取和埠掃描的測試工具。

研究人員發現,威脅行動者掃描受害者子網中的目標,並使用惡意Docker影像中的掃描工具執行惡意活動。

這些在第三方開源軟體庫中不斷出現的惡意行為表明,這些對軟體開發生態系統的成功攻擊引起惡意行為者的注意,他們非常樂意抓住任何一個機會進行犯罪活動。

Geenens指出,他們通過向線上儲存庫上傳惡意模組來破壞這些生態系統,目的是欺騙開發人員下載並在他們的系統上執行這些模組。

這些所謂的供應鏈攻擊並不侷限於包儲存庫和開源。“NotPetya和SolarWinds Orion攻擊都是商業軟體更新漏洞造成的。”軟體自身的安全漏洞為企業網路安全帶來極大風險,在開發階段採取有效的 靜態程式碼檢測有助於第一時間減少軟體中的安全漏洞,提高軟體安全性,同時減少供應鏈攻擊事件的發生,

“我們發現,最近越來越多的攻擊者將開源儲存庫作為攻擊目標,以進行具有不同目的的攻擊,從竊取敏感資料和系統檔案到加密挖掘。

4月份網路攻擊者對GitHub 進行了加密挖掘攻擊;

6月份發現了PyPI加密挖掘惡意軟體。

考慮到PyPI和npm背後生態系統的成功和規模,有很多機會利用從偵察到妥協的目標,包括資訊收集和外洩、後門、盜竊,以及在npm的情況下,加密劫持等技術。

防禦依賴攻擊

npm上的惡意輸入、品牌劫持和依賴劫持包可以做任何事情,從竊取次要資料到生成反向shell和竊取敏感檔案、進行監控活動,如鍵盤記錄和訪問網路攝像頭,以及帶有盜版內容和盜版網站連結的垃圾郵件庫。

“雖然域名搶注和品牌劫持攻擊需要開發人員進行某種形式的手動操作,但鑑於其自動化性質,惡意依賴劫持攻擊要危險得多。”

Sharma建議警惕拼寫錯誤。例如,“twilio-npm”可能與“twilio”不是同一個包。有一個 SBOM或軟體材料清單,以瞭解構成您的應用程式的依賴項和元件。”

他還建議保留一個自動化程式碼安全檢測解決方案來防禦依賴劫持攻擊,這可能就像部署一個指令碼一樣簡單,該指令碼檢查被拉入程式碼的任何公共依賴項是否與您的私有依賴項名稱衝突,或是否有異常軟體存在。


參讀連結:


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70000012/viewspace-2839286/,如需轉載,請註明出處,否則將追究法律責任。

相關文章