通過MSXSL方式進行魚叉式網路釣魚
在2018年中旬發現了針對各種實體進行的魚叉式網路釣魚活動,其中被傳播的惡意的RTF(Rich Text Format)檔案中利用了三種不同的漏洞:CVE-2017-8570,CVE-2017-11882和CVE-2018-0802,並且此次攻擊同時也利用了二進位制檔案msxsl(微軟的xml語言解析器,用來解釋xml語言的)來執行JScript後門程式。此次攻擊與Cobalt組織之前的活動有許多相似之處。
攻擊方式
魚叉式網路釣魚活動使用惡意RTF文件:

如果漏洞利用成功,則會開啟一個誘餌文件:

通過檢視文件中的OLE物件,可以看到一些有趣的屬性(下個部分詳細分析)。

開啟文件後會進行一系列行為,主要歸納為:
- 惡意RTF文件對三個漏洞進行利用(CVE-2017-8570,CVE-2017-11882或CVE-2018-0802)
- 執行eqnedt32.exe(Microsoft公式編輯器)並在鏈中執行兩個cmd.exe例項
- cmd.exe例項使用DLL(dll.txt)啟動regsrv32.exe,然後刪除誘餌文件
- 載入的DLL執行以下操作:
建立一個XML檔案
建立一個XSL檔案
從磁碟中刪除自身
建立JScript檔案(用於永續性存在)
刪除合法的MSXSL.exe副本
執行MSXSL,從新建立的XML和XSL檔案中獲取最後一個後門
第一階段
漏洞被利用後,cmd.exe執行Task.bat:
ECHO OFF set tp=”%temp%block.txt” IF EXIST %tp% (exit) ELSE (set tp=”%temp%block.txt” & copy NUL %tp% & start /b %temp%2nd.bat) del “%~f0” exit

設定環境變數後,將啟動第二個批處理檔案,其任務是啟動regsrv32.exe以載入dll.txt,清除臨時目錄、重新啟動顯示誘餌文件的winword。

為後門執行且可永續性執行設定正確環境,dll.txt會執行以下操作:
建立c:usersuserappdataroamingmicrosoftf4b3a452b6ea052d286.txt 建立c:usersuserappdataroamingmicrosoft7009b05a8c4dc1b.txt 建立c:usersuserappdataroamingmicrosoft12a0c3af5a631493445f1d42.js 刪除c:usersuserappdataroamingmicrosoftmsxsl.exe executable, a Microsoft legitimate executable
在HKCUEnvironment中建立一個登錄檔項值,其值為“UserInitMprLogonScript”,資料為Cmd.Exe /C “%Appdata%Microsoft12A0C3AF5A631493445F1D42.Js(用於登入永續性指令碼. ATT&CK TID: T1037)
DLL活動:

DLL的檔案系統和登錄檔活動:

在生成cmd.exe例項後立即刪除dll.txt並啟動msxsl.exe,將刪除的XML檔案和XSL檔案(包含後門程式碼)作為引數。

用於保持永續性存在的指令碼:

值得注意的是這裡使用了msxsl.exe,它是用於使用Microsoft的XSL處理器執行可擴充套件樣式表語言(XSL)轉換的命令列程式。可以使用此可執行檔案來執行JScript程式碼:
C:UsersUserAppDataRoamingMicrosoftmsxsl.exe “C:UsersUserAppDataRoamingMicrosoftF4B3A452B6EA052D286.txt” “C:UsersUserAppDataRoamingMicrosoft7009B05A8C4DC1B.txt”
後門
後門是用JScript編寫的,它能夠執行以下操作:
通過wmi和其他Windows工具進行檢測
使用cmd.exe執行可執行檔案
使用regsvr32.exe載入DLL檔案
下載並執行新指令碼
刪除自身
檢查AntiVirus軟體
使用RC4的js實現進行c2通訊

任何型別的指令碼都可以由此後門執行,因此它所可以造成的惡意後果是不可估量的。樣本會檢查不同的防病毒軟體,並且將使用者資訊傳送回C2伺服器,以便向惡意控制者傳遞訊息以避免觸發殺軟警報。
我們在廣告中找到的C2地址是: ofollow,noindex" target="_blank">https://mail[.]hotmail[.]org[.]kz/owalanding/ajax[.]php
它似乎是在1994年註冊在哈薩克的主機名,這個古老的伺服器可能被惡意者攻擊並被用做了遠控C2。

攻擊鏈的第二階段似乎與2017年11月份確定的一項活動相同,可能均來自於Cobalt組織,但他們攻擊的第一階段完全不同,有可能是一個新的漏洞利用工具包Threadkit。而後門的程式碼與TrendMicro在2017年8月分析的程式碼看起來非常相似。2018年3月版和2017年8月版共有的命令如下:
more_eggs: 用於下載新指令碼
d&exec: 用於執行可執行檔案
gtfo: 用於終止例項並執行清理
more_onion: 用於執行新指令碼
已經更新過的系統無需在意此次攻擊,但未更新的系統應監視下面釋出的IOC以及異常行為,例如從臨時資料夾執行的msxsl或載入未知模組的regsvr32.exe。
• malicious RTF (DOC00201875891.doc): db5a46b9d8419079ea8431c9d6f6f55e4f7d36f22eee409bd62d72ea79fb8e72
• msxsl.exe (legitimate, dropped): 35ba7624f586086f32a01459fcc0ab755b01b49d571618af456aa49e593734c7
• JS persistence: 710eb7d7d94aa5e0932fab1805d5b74add158999e5d90a7b09e8bd7187bf4957
• XSL JS backdoor: 6a3f5bc5885fea8b63b80cd6ca5a7990a49818eda5de59eeebc0a9b228b5d277
• XML: dbe0081d0c56e0b0d7dbf7318a4e296776bdd76ca7955db93e1a188ab78de66c
• task.bat: 731abba49e150da730d1b94879ce42b7f89f2a16c2b3d6f1e8d4c7d31546d35d
• 2nd.bat: 33c362351554193afd6267c067b8aa78b12b7a8a8c72c4c47f2c62c5073afdce
• decoy document: 1ab201c1e95fc205f5445acfae6016679387bffa79903b07194270e9191837d8
• regsvr32 DLL: 0adc165e274540c69985ea2f8ba41908d9e69c14ba7a795c9f548f90f79b7574
• inteldriverupd1.sct: 002394c515bc0df787f99f565b6c032bef239a5e40a33ac710395bf264520df7
• C2: mail[.]hotmail[.]org[.]kz/owalanding/ajax.php
• IP (at the time of writing): 185.45.192.167