一、背景
五月十一日,我們的蜜罐系統捕獲到來自xxxxxxxxx@uscourtsgov.com郵箱的釣魚郵件。其中uscourtsgov就已經是一個很唬人的服務器名稱了。郵件偽裝美國法院的傳票,并會要求受害者打開郵件的附件(一個加密的word文檔)了解詳細的信息。

這個釣魚郵件很有意思,作者對文檔進行加密,可以有效的防止各個郵件服務器的攔截,并且會給受害者營造一個神秘的氛圍,讓人忍不住就想打開瞧一瞧。我們輸入文檔密碼,word提示我們是否啟用宏。

當我們啟用宏后,會看到一個提示信息。大體的意思是,“本文檔無法打開,請更換一臺計算機試試“。看到這里讀者們是不是很奇怪,我們明明打開了文檔,為什么還會出現類似兼容性的提示呢?其實這個提示信息應該是宏產生,作者的目的是想讓受害者在多個計算機中打開這個文檔。作者的小心思可見一斑啊。

點擊確定后顯示給我們的是word的文本內容,文檔模仿成一個微軟的信息提示。內容的大體意思是提示受害者這個文檔要在pc上使用MS打開,并且要允許宏運行。作者這么做的目的是為了防止此文檔在web或其他應用中打開,導致宏無法運行
我們可以看出此釣魚郵件是經過精心設計的,既然花了這么大的心思,作者對于后續的攻擊也肯定是付出了很大的努力。這次釣魚郵件的分析也將是一場有趣的旅程。
二、攻擊流程
我們在執行完word文檔后,發現系統出現了一些可疑的網絡行為,所以在進行詳細分析之前,我們先總體上對釣魚郵件的攻擊流程進行跟蹤,從宏觀上掌握此次事件的整體流程,隨后再對具體的步驟進行詳細的分析。大體的分析出了以下的攻擊步驟:
1. 受害者接收釣魚郵件,打開郵件附件的word文檔,并執行宏腳本。
2. 宏腳本下載執行一個名為background的惡意文件,并彈出系統不兼容的提示框。
3. background下載一個名為taskwgr.exe的自解壓文件,解壓生成兩個文件install.sql和svchost.exe。4. taskwgr.exe執行svchost.exe。svchost.exe文件將install.sql解密,執行。
5. install.sql會連接tor網絡,然后加密受害者計算機的文件,彈出勒索信息。
攻擊流程圖:

三、word宏分析
如果允許宏運行,很遺憾,受害者的計算機很有可能會受到后續的一系列攻擊。
那么宏到底做了什么?就讓我們一起來研究一下。我們先將word文檔密碼去掉,另存為一個新的文檔。

我們查看宏的內容,此時會發現文檔中宏及VB工程都是空的。


好吧,看來我們沒那么容易獲取到宏代碼。攻擊者還算是想的比較周密,將代碼隱藏了起來。
在word中啟用文檔宏,點擊確定時,按住SHIFT,阻止宏自動執行。再次打開VB編輯器,現在文檔中的VB工程出現了,打開時會發現工程被加了密碼。


不過VB工程的密碼可以通過破壞工程文件加密結構的方法將其破壞,我們還是可以獲取到代碼的。首先將文檔另存為docm格式,因為新版office文件是zip格式。

然后再將保存出來的docm擴展名修改為zip,解壓。

在解壓出來的目錄中,可以找到word/vbaProject.bin,該文件就是word文檔的VB工程文件。

用16進制編輯器打開,找到“CMG=”和“DPB=”,這里就是VB文檔的加密結構,因為word的處理機制問題,只需要將DPB改為DPx即可使密碼失效。

找到“DPB=”字符串,直接將DPB改為DPx,這樣密碼就失效了。


將之前解壓出來的目錄重新打包成zip格式的docm文件

現在打開保存出來的docm文件,啟用宏,word會提示DPx無效,點擊“是”的時候需要按住shift阻止代碼自動執行。


再次打開VB編輯器,就可以看到文檔的VB宏內容了。

我們成功獲取到了宏代碼,這段VB的實際操作為比較簡單,具體行為如下:
1從http://185.189.58.xxx/~filehost/ background.png下載一個PE文件
2、將文件保存為$TEMP$/svchost.exe
3、執行該文件
4、彈出消息框,大致意思為:“系統不支持該加密文檔,請嘗試在其他機器上打開”
5、關閉word文檔
四、background行為分析
word宏的目的是下載一個PE文件,那么我們接下來需要對該PE文件進行分析。我們針對樣本關鍵的內容進行討論,為了敘述方便,我們下文都將樣本稱之為background。
1.background是由NSIS制作的安裝程序。background會獲取臨時路徑,這將是background接下來的工作路徑。

2.在臨時目錄創建一個文件夾,用于存放釋放的文件。

3.接下來background會釋放出一個用于加密解密的動態鏈接庫wpoke.dll。

4.background加載wpoke.dll,使用其中導出的DecryptSymmetric函數進行數據解密。

解密兩段加密數據,其中第一段為訪問下載的URL。

第二段為文件名稱svchost.exe 。

5.接下來釋放用于下載的INetC.dll。其中釋放代碼與wpoke.dll代碼相同。然后加載INetC.dll,調用其中的get函數進行下載。

6. 將下載文件保存為用戶的ApplicationData目錄下taskwgr.exe,啟動taskwgr.exe


至此我們已經清楚background的主要行為了。background是個下載器,主要目的是下載taskwgr.exe文件,并運行。
五、taskwgr.exe行為分析
分析taskwgr.exe可以發現taskwgr.exe并不是一個PE文件,而是個加密的winrar自解壓文件。我們通過捕獲background的CreateProcess可以截取到taskwgr.exe的解壓密碼。


使用密碼解壓taskwgr.exe文件,釋放出install.sql和svchost.exe。從擴展名上看install.sql是個數據文件。我們先分析svchost.exe,會發現svchost.exe加殼了,脫殼后的主要代碼如下圖。
svchost.exe讀取install.sql文件(解密后實際上是一個新的PE可執行文件),創建一個自身的子進程,將解密后PE內容直接寫入子進程的進程中,達到執行并隱藏該行為的目的

六、install.sql行為分析
解密的install.sql是一個勒索病毒,主要流程為:
1.檢測系統信息,獲取了系統版本、用戶名、機器名,訪問http://ip-api.com/json獲取本地 IP信息

2.下載Tor
https://archive.torproject.org/tor-package-archive/torbrowser/7.0/tor-win32-0.3.0.7.zip
下載了tor,保存在
AppData\Roaming\Microsoft\B284A9B11BD4B45CDAF4B8CF39A4B97B\System.zip

3.當下載完成后,解壓,并將tor.exe重命名為svchost.exe,然后執行。(tor原本被以隱藏方式執行,手動將其改為正常顯示)
可以發現作者在程序中設置了tor代理,之后將通過tor發送網絡請求

4.然后樣本根據系統信息,補上了連接的參數部分,連接自己的服務器
http://lzt4y6qj7azyldq2.onion/control.php?uid=B284A9B11BD4B45CDAF4B8CF39A4B97B&uname=Fate&os=Windows7&pcname=WIN-UBAA1MQALH9&total=8970&country=China&network=yes&subid=1595.


在加密完系統中的文件后,會放出勒索信息,同時向服務端發送相應的信息

勒索信息






七、后續和總結
我們將此次涉及到的惡意ip在我們自有的惡意情報平臺進行查詢。搜集到一些關于此次釣魚郵件事件的信息:
相關病毒文件
URLs
Date scanned Detections URL
2018-05-14 5/67 http://185.189.58.xxx/~filehost/scan_05_05_2018.doc?VGZbmiGdjdbrXrDCozJxbSTL
2018-05-14 5/67 http://185.189.58.xxx/~filehost/scan_05_05_2018.doc?ckeRwnnATifPUAVXIKGUg
2018-05-14 3/67 http://185.189.58.xxx/~filehost/1/scan_05_07_2018.doc?UwtmZfooHBtFn
2018-05-13 4/67 http://185.189.58.xxx/~filehost/message.gif?iLbhFrEfVgEtV
2018-05-12 12/68 http://185.189.58.xxx/~filehost/background.png
從相關病毒文件可以看出來,樣本最初出現的時間在五月份初。攻擊者通過偽造法院的傳票,發送釣魚郵件來傳播勒索病毒。郵件通常是發給目標的企業員工,攻擊其文件加密,從而進行勒索。雖說勒索病毒需要連接到tor網絡,國內的小伙伴并不需要過分擔心。但還是要提醒各位讀者,不要隨便點擊來路不明的郵件附件,請使及時對計算機中的重要資料進行備份,防止不必要的損失。
我們會對此次事件進行持續追蹤和關注。
|