一、背景
近日阿裡雲安全團隊發現了一起利用多個流行漏洞傳播的蠕蟲事件。黑客首先利用ThinkPHP遠端指令執行等多個熱門漏洞控制大量主機,并将其中一台“殭屍電腦”作為蠕蟲腳本的下載下傳源。其餘受控主機下載下傳并運作此蠕蟲腳本後,繼續進行大規模漏洞掃描和弱密碼爆破攻擊,進而實作橫向傳播。涉及的漏洞除了ThinkPHP遠端指令執行漏洞,還有JBoss、Weblogic、Redis等産品的漏洞。
因為該蠕蟲最初植入的惡意腳本名為ibus,是以命名為ibus蠕蟲。本篇文章主要介紹了阿裡雲安全對此類蠕蟲入侵的各個階段的檢測、防禦和隔離,保障阿裡雲使用者的資産安全。希望讀者通過本篇文章,可以意識到目前網絡安全的風險與日俱增,安全漏洞無處不在,黑客通過簡單、自動化的手段就可以對使用者利益造成極大的損害。
目前阿裡雲安全團隊對網絡進行了實時監控,并幫助雲上使用者修複潛在風險,如果漏洞依然存在,建議請盡快對自身進行檢查,或者參考文末的安全建議。
二、蠕蟲主要特點及結構
基于阿裡雲态勢感覺的大資料平台,我們對該黑客組織進行了追蹤和詳細分析,該黑客通過ThinkPHP漏洞和蠕蟲腳本擷取了大量的殭屍電腦進行牟利。阿裡雲安全團隊詳細分析了此蠕蟲的主要特點,包括:
使用多種漏洞進行傳播,以web代碼執行漏洞為主;
- 惡意腳本的名字及路徑具有迷惑性,且多份拷貝存放于不同的目錄下;
- 主要代碼perl實作,具備功能完備的C&C通信子產品;
- C&C通信使用http協定,通信内容加密;
- 通過挖掘門羅币進行獲利。
蠕蟲的功能結構由惡意腳本、傳播子產品、C&C子產品、挖礦子產品等組成。
黑客首先利用ThinkPHP v5 遠端指令執行漏洞攻擊了大量主機,并将ip為67.209.177.163的伺服器作為蠕蟲腳本的下載下傳源。
之後攻擊者控制其他被入侵主機從67.209.177.163下載下傳ibus腳本并執行。該腳本用perl語言寫成,主要功能是解碼、寫入并執行C&C (Command and Control)子產品。
攻擊者進而通過向C&C子產品發送指令,下載下傳包含多種攻擊payload的傳播子產品,以及由下載下傳器、配置檔案和挖礦程式組成的挖礦子產品,挖礦進而擷取利潤。傳播子產品則繼續攻擊未被入侵主機,橫向傳播。
黑客入侵的各個階段如下圖所示:
三、蠕蟲子產品分析
1.攻擊及惡意腳本植入
對大多數被入侵主機,攻擊者最初是利用ThinkPHP v5 遠端代碼執行漏洞,通過如下payload植入惡意腳本
可以看到這裡從
http://67.209.177.163/ibus下載下傳并運作了ibus。分析後發現ibus是一個perl腳本,該腳本會從Linux根目錄開始周遊所有目錄(最大深度為6),找出目前賬号有寫權限的所有檔案夾,存入清單。
之後對清單中的目錄進行打分,取分數最高的三個目錄。打分标準例如完整路徑以"/bin"開頭的目錄分數最高,"/usr/bin"其次,以此類推。
在最後挑選出來的三個目錄中,寫入同樣的C&C子產品腳本(腳本分析見後文),并分别命名為nmi, nbus和.dbus。這三個都是系統程式的名字,定時執行時還會列印出“These are for bus-kernl-daemon service”,非常具有迷惑性。
ibus腳本最後進行定時任務添加和腳本自删除操作。
2.傳播子產品
下圖為攻擊函數清單,可以看出此蠕蟲代碼利用了多種漏洞進行橫向傳播,包括java反序列化漏洞、Weblogic WLS元件RCE漏洞(CVE-2017-10271)、WebLogic 任意檔案上傳漏洞(CVE-2018-2894)、redis 未授權通路漏洞等。
以下是部分攻擊代碼:
1)對JBoss使用者名、密碼暴力破解
涉及的部分使用者名和弱密碼清單:
2)使用weblogic漏洞上傳Webshell
3)redis 未授權通路漏洞
3.C&C子產品
該部分的内容是由ibus中的$encnde解碼後得到,相同内容被寫入三個不同的檔案夾,難以被徹底清理。
C&C子產品也是一個perl腳本,它實作了完整的控制功能:
腳本包含的核心函數/子產品:
- newsocketto:實作socket通信
- GetCommand、PostCommand:實作基本的http get/post功能
- SendBackResult、SendBackState:傳回c&c指令的執行結果和執行狀态
- register:c&c上線注冊
- check_relay:檢測主c&c是否可用
- Knock_Knock:擷取C&C指令,會傳回needregr、newtask、notasks、newreconfig四種指令
- Update_Config_File、Load_Config_File:更新和加載配置檔案
- DownLoadExec、DownLoadExecPar:下載下傳檔案并執行,DownLoadExecPar可帶參數執行
- Updateme:更新
- scanme:掃描目錄
- getrelfromblog、getrelfromblog1、srel:備用c&c
- crntabvalidator:修改crontabs屬性,後面會循環執行,防止定時任務被删除
- UUID Management :為每個殭屍電腦生成uuid
- MAIN Function:cc子產品主函數
C&C子產品的功能:
MAIN Function通過Knock_Knock擷取c&c指令,實作如下功能
- Command Execution :指令執行(實際并未實作執行功能)
- Download Execute:下載下傳檔案執行
- Download Execute W Params:下載下傳檔案帶參數執行
- Uninstall:解除安裝自身
- killcycle:終止運作
- Update Me:更新
C&C伺服器是speakupomaha.com:
下圖為控制主機執行GetCommand的部分代碼:
四、影響範圍
由配置檔案可知,ibus蠕蟲對應的錢包位址為4An3Radh69LgcTHJf1U3awa9ffej4b6DcUmEv8wirsDm8zRMSjifrwybH2AzHdEsW8eew3rFtk4QbGJMxqitfxmZJhABxpT。其影響範圍從攻擊者收益和挖礦規模的角度來看,由于該錢包位址在
http://minexmr.com/#worker_stats對應的挖礦速率(HashRate)約為167KH/s,據此粗略估計,全網約有1萬台的主機被這種蠕蟲感染,黑客是以每天能牟利30.86美元(925.74美元 每月)。
而從攻擊時間上看,1月4号和12号是黑客攻擊的高峰,且蠕蟲攻擊仍在蔓延。
五、安全建議
針對此次ibus蠕蟲攻擊,阿裡雲安全向使用者提供以下安全建議:
- 網際網路上掃描和攻擊無處不在,web漏洞、弱密碼、伺服器存在未授權通路,都可能導緻主機被挖礦,應盡量避免使用弱密碼,此外可以選擇購買阿裡雲的雲防火牆和态勢感覺實作威脅檢測、主機防禦和安全隔離。
- 對于已感染的客戶,可以通過購買阿裡雲安全管家服務,在安全專家的指導下進行病毒清理和安全加強。
IOC
從virustotal查詢發現,9b6c1672fc9d5721af5ae6ac9d053b34 這個惡意腳本IoC,目前市面上大多數引擎檢測不出來。
而阿裡雲态勢感覺基于深度學習和規則引擎的模型可以對大部分的惡意腳本進行識别。态勢感覺告警如下圖所示,
錢包位址:4An3Radh69LgcTHJf1U3awa9ffej4b6DcUmEv8wirsDm8zRMSjifrwybH2AzHdEsW8eew3rFtk4QbGJMxqitfxmZJhABxpT
惡意Host:
67.209.177.163
190.2.147.11
C&C 伺服器:
http://speakupomaha.com備用C&C伺服器:
linuxservers.000webhostapp.com
linuxsrv134.xp3.biz
5.196.70.86
礦池位址:
http://minexmr.com作者:悟泛、踢歪、桑铎;緻謝:劉洪亮、千霄、淡陌