概述
近期,威脅情報團隊在活躍家族監控中捕獲到了HolesWarm挖礦家族的最新變種。在本次更新中,該病毒家族新增了19種漏洞利用手法,橫向攻擊模組更是達到了31個,基本覆蓋了大多數政企單位常用的服務元件,危害極大,應及時更新對應補丁做好防護。
HolesWarm也被稱為AutoUpdate,首次披露於今年6月,是一個新型且十分活躍的挖礦家族,使用Golang編寫,攻擊目標同時覆蓋Windows和linux雙平臺,除挖礦外還會竊取主機賬戶的登陸憑證等資訊。本次更新,其新增漏洞利用模組之多,無愧於“漏洞利用王者”的稱號。
首次披露該家族分析文章:支援雙系統挖礦,警惕新型AutoUpdate挖礦病毒入侵
漏洞利用模組更新
本次更新漏洞利用模組新增19種,算上之前版本的漏洞利用模組一共31種,漏洞利用模組更新情況如下:
歷史版本漏洞
|
Docker未授權命令執行攻擊 |
Jenkins 未授權命令執行攻擊
|
Shiro 反序列化 RCE
|
Spring boot actuator RCE
|
Struts2全系列(s008-s057)漏洞
|
Tomcat 爆破攻擊
|
Weblogic RCE( CVE-2020-14882)
|
XXL-JOB
|
泛微OA E-cology Bsh 命令執行
|
用友bsh.servlet.BshServlet 命令執行
|
用友GRP-U8注入-命令執行
|
致遠OA htmlofficeservlet任意檔案寫入
|
致遠OA-ajax.do檔案上傳
|
本次新增漏洞
|
泛微OA程式碼執行漏洞 |
致遠OA未授權漏洞
|
weblogic (CVE-2017-10271)
|
mongo-express RCE漏洞(CVE-2019-10758)
|
Jupyter Notebook 未授權訪問漏洞
|
Apache Flink任意檔案讀寫(CVE-2020-17518/19)
|
Nexus Repository Manager 3遠端命令執行(CVE-2019-7238)
|
Apache ActiveMQ遠端程式碼執行漏洞 (CVE-2016-3088)
|
Apache Spark 未授權訪問漏洞
|
Hadoop Yarn REST API未授權漏洞
|
萬戶網路-ezOFFICE 漏洞
|
JBoss HttpInvoker反序列化漏洞(CVE-2017-12149)
|
Confluence注入漏洞(CVE-2021-26084)
|
YAPI介面管理平臺RCE
|
ShowDoc前臺檔案上傳漏洞
|
Fastjson 反序列化(CVE-2017-18349)
|
ThinPHP程式碼執行漏洞
|
病毒攻擊流程
攻擊活動趨勢
根據深信服安全雲腦監控資料顯示,該病毒持續處於活躍狀態,近期攻擊情況如下圖所示:
樣本詳細分析
前置Loader
Windows:
當遠端漏洞利用入侵成功後,植入名為loader.ps1/loader.bat指令碼檔案,指令碼檔案再下載主體控制模組services.exe到C:/Windows/Temp/.git/目錄下,並對該目錄進行隱藏。
Linux:
當遠端漏洞利用入侵成功後,植入名為loader.sh/loader.py指令碼檔案,指令碼檔案再下載主體控制模組kworkers到~/.git目錄下,並對該目錄進行隱藏。
主體控制模組
Service.exe和kwokers分別是windows和linux的主體控制模組,其功能是一致的都是根據配置檔案windowsupdatev1.json下載、執行或更新其他功能模組,如挖礦模組dbus/update.exe、橫向傳播模組autoupdate等。
windowsupdatev1.json配置檔案如下圖:
filename欄位為要下載的模組名稱;
handle欄位為要執行的動作(如下載、下載執行、更新等);
url欄位為下載的uri;
ver欄位為對應的版本資訊。
橫向傳播模組
Autoupdate
橫向傳播模組autoupdate,先對內網網段進行埠掃描,並識別內網的http/https對應的服務是否存在漏洞,埠掃描如圖:
掃描識別對應的服務,如圖:
然後再用對應的漏洞利用模組進行攻擊,如圖:
sshkey.sh
針對Linux平臺,除了autoupdate外,還會下載sshkey.sh,透過該指令碼遍歷目錄搜尋失陷主機曾經登陸過的主機列表、曾使用的使用者名稱以及ssh key,並嘗試使用這些使用者名稱和金鑰登陸其他主機,進一步進行橫向傳播,當登陸成功便下載執行前置loader。
程式隱藏模組
針對Windows平臺
Service.exe下載inj.exe和runtime.dll,來實現對挖礦模組updater.exe、橫向傳播模組autoupdate.exe以及主體控制模組service.exe程式進行隱藏。其中runtime.dll是開源的程式隱藏框架,透過inj.exe將runtime.dll注入到工作管理員程式,該dll再透過Hook Native API NtQuerySystemInformation,來實現程式隱藏。
針對Linux平臺
Kworkers下載hideproc.sh程式隱藏指令碼,該指令碼下載processhide.c隱藏程式原始檔,再將原始檔編譯成libc2.28.so,最後將libc2.28.so新增到系統的ld.so.preload檔案,即實現啟動程式時自動載入該連結庫實現程式隱藏。
隱藏的程式為:主體控制模組kworkers,挖礦模組dbus以及橫向傳播模組autoupdate。如圖:
登陸憑證竊取
針對windows平臺
主體控制模組service.exe會下載procdump檔案,將系統程式lsass.exe進行記憶體dump,然後將dump下來的檔案上傳至C2伺服器,伺服器最終返回使用者名稱密碼資訊,通訊流量如圖:
上傳dump記憶體檔案如圖:
返回使用者名稱密碼如圖:
針對Linux平臺
橫向傳播模組autoupdate透過遍歷檔案,查詢雲伺服器的訪問金鑰Access key和Secret key(當獲取AK後便能夠呼叫雲賬號下的所有資源和功能),當找到AK/Sk便會將資料上傳至C2伺服器,如圖:
挖礦模組
Windows端下載update.exe挖礦模組進行挖礦,Linux端下載dbus挖礦模組進行挖礦。兩檔案本質都是開源礦機XMRig,該病毒應該使用的是代理礦場,礦場地址便是其C2伺服器:m.windowsupdatesupport[.]org:443,配置資訊如圖: