CroniX利用Apache Struts 2漏洞(CVE-2018-11776)進行加密貨幣挖礦
Apache Struts 2的遠端程式碼執行漏洞(CVE-2018-11776)才被公開,近日,F5的研究人員就發現了利用該漏洞進行加密貨幣挖礦的惡意軟體CroniX。
·CVE-2018-11776 Apache Struts 2名稱空間漏洞可以進行非認證的遠端程式碼執行;
· 在門羅幣挖礦活動中,注入點位於URL內;
· 攻擊目標:Linux系統;
· 漏洞發現兩週後的首次在野攻擊;
· F5的研究人員之前發現過該威脅單元;
· 因為使用了cron和Xhide技術,所以將攻擊活動命名為CroniX。
攻擊分析
與Apache Struts 2的其他漏洞一樣,攻擊者利用CVE-2018-11776漏洞可以進行Object-Graph Navigation Language(OGNL)表示式注入。這次攻擊的注入點是在URL中。
攻擊者傳送一個注入OGNL表示式的簡單HTTP請求,在進行求值後會執行shell命令來下載和執行惡意檔案。
圖1: URL請求中解碼的漏洞利用payload
伺服器上位於 /win/checking-test.hta處的檔案會儲存一個呼叫Windows cmd來執行Powershell命令的VB指令碼。這樣看來,威脅單元的攻擊目標是位於相同伺服器的Windows作業系統。
圖2: 伺服器上的另一個檔案,含有攻擊Windows系統的指令碼
優化惡意軟體效能
下載的update.sh檔案是一個bash指令碼,會執行許多惡意軟體實現的步驟。
攻擊者會將記憶體中huge page的數量設定為128。這是第一個攻擊者的目的為挖礦的線索,這一步的目的是為了改善挖礦活動的效能。
圖3: 設定huge pages來改善CPU的挖礦能力
駐留
為了確保惡意軟體的駐留,一共設定了三個cron任務。其中兩個cron任務會每天下載和執行新的update.sh檔案。有趣的是,檔案的下載會用到明確的伺服器IP地址或域名。在下載過程中,會使用特殊的linux使用者代理來作為訪問限制機制,而用使用者代理的IP訪問是禁止的。
另一個定時任務是開始位於~/.config/java/.conf/upd的檔案。
圖4: 設定惡意軟體駐留的cron任務
為了達到駐留的目的,惡意軟體還會下載一個名為anacrond的檔案,該檔案會被複制到/etc目錄下並命名為cron.d,同時會儲存到/etc/cron.d/anacron。檔案中的命令與檔案update.sh中有點像,他們會下載應用的bash指令碼並重啟挖礦程序。
圖5: 用於駐留的acrond檔案
殺掉競爭者程序
惡意軟體會還嘗試殺掉其他挖礦程序,並刪除之前安裝的加密貨幣挖礦機。這也是目前加密貨幣挖礦行動常用的方式。
圖6: 殺掉競爭加密貨幣挖礦機的命令
對於一些挖礦機,攻擊者會選擇一種更加小心的方法,並檢查程序名和程序的CPU利用率,然後殺掉使用CPU資源超過60%的程序。這可能是為了防止不小心殺掉與Linux合法程式相關的挖礦機的程序。
圖7: 如果CPU利用率超過60%就殺掉sshd程序
釋放可執行檔案
一旦競爭對手被除掉,攻擊者就會移除老版本的惡意軟體檔案並下載新版本的run和upd bash指令碼。
圖8: 下載額外的惡意檔案
還會下載兩個額外的二進位制可執行檔案xmrig和H,每個檔案都有x86和x64版本。
圖9: 下載的x86和x64版本的惡意可執行檔案
Xmrig檔案是一個含有嵌入配置的挖礦機,這並不是原始的XMRig挖礦機,而是XMRigCC的副本,用於CPU挖礦優化。
圖10: XMRigCC選單
H檔案是一個用假的程序名的用於載入可執行檔案的Xhide工具。
圖11: H檔案內容
Run指令碼會執行XHide來啟動xmrig加密貨幣挖礦,並將程序名變成java。相關的程序id會寫入名為pid的檔案,upd指令碼會殺掉並重啟程序。
圖12:用預配置的XMRig挖礦機來執行XHide程序隱藏器的指令碼檔案
因為使用cron和xhide作為駐留的方法,所以將惡意軟體攻擊活動命名為CroniX。
挖礦活動
攻擊者通訊的XMR池為eu.minerpool.pw,DNS請求:
圖14: DNS查詢獲取的挖礦池伺服器的IP地址
獲得挖礦池的域名後,攻擊者就會進入挖礦池:
圖15: 挖礦機嘗試登入挖礦池
與其他攻擊活動的關係
研究人員認為該攻擊活動背後的威脅單元與利用CVE-2017-1000353漏洞攻擊Jenkins伺服器的漏洞類似,因為惡意軟體的實現模型、系統的應用檔名,並使用了XHide-Process Faker。威脅單元還使用了中文git網站來儲存惡意檔案。
這次攻擊者用了專門的web伺服器來服務保存於美國的檔案,使用的帛琉(帛琉)共和國域名(太平洋島)是在俄羅斯註冊機構註冊的。
圖16: reg.ru註冊的Palau (.pw)域名