當前位置:
首頁 > 新聞 > 暗雲Ⅲ BootKit 木馬分析

暗雲Ⅲ BootKit 木馬分析

概況


「暗雲」系列木馬自2015年初被騰訊反病毒實驗室首次捕獲並查殺,至今已有2年多。在這兩年多時間裡,該木馬不斷更新迭代,持續對抗升級。


從今年4月開始,該木馬捲土重來,再次爆發,本次爆發的暗雲木馬相比之前的版本有比較明顯的晉級特徵,因此我們將其命名為暗雲Ⅲ。暗雲Ⅲ與之前版本相比有以下特點和區別:



第一、更加隱蔽,暗雲Ⅲ依舊是無文件無註冊表,與暗雲Ⅱ相比,取消了多個內核鉤子,取消了對象劫持,變得更加隱蔽,即使專業人員,也難以發現其蹤跡。


第二、兼容性,由於該木馬主要通過掛鉤磁碟驅動器的StartIO來實現隱藏和保護病毒MBR,此類鉤子位於內核很底層,不同類型、品牌的硬碟所需要的 hook點不一樣,此版本木馬增加了更多判斷代碼,能夠感染市面上的絕大多數系統和硬碟。


第三、針對性對抗安全軟體,對安全廠商的「急救箱」類工具做專門對抗,通過設備名占坑的方式試圖阻止某些工具的載入運行。


圖1. 三代暗雲木馬比較


圖2. 暗雲Ⅲ 木馬啟動流程


一、由MBR到Windows內核


暗雲系列木馬通過感染磁碟MBR來實現開機啟動,三代暗雲其啟動過程,基本沒變,都是由MBR開始通過int 15中斷一步步的hook來跟隨系統的引導流程進入系統內核執行,該套代碼可兼容xp、vista、win7、win8等主流操作系統,包括64位和32位。其啟動過程如圖2所示。(具體細節參見:「暗雲」BootKit木馬詳細技術分析:

http://www.freebuf.com/vuls/57868.html


圖3. 暗雲系列 BootKit啟動過程示意圖


二、內核ShellCode 1 & ShellCode 2行為分析


ShellCode 1

ShellCode 1是木馬進入Windows內核後,通過創建一個線程開始執行的第一段代碼。其功能是通過磁碟鉤子、定時器守護等一系列操作保護惡意的磁碟MBR不被檢測和修改。此外,木馬會在內核中直接聯網下載ShellCode並執行,我們將下載的shellcode稱為ShellCode 2。shellcode2主要功能是嚮應用層插入apc。


詳細分析:


1) 尋找磁碟驅動器(atapior iaStor or LSI_SAS)對應的驅動對象。



圖4.從文件系統開始查找磁碟驅動對象


圖5.常見的磁碟對象驅動與小埠驅動對應關係


2) 根據磁碟類型和操作系統替換DriverStartIo、 AtapiHwStartIo、RaUnitStartIo等函數,實現阻止其他程序讀取磁碟1-3F 扇區(MBR)。當檢測到讀MBR時, 返回一個構造好的正常的MBR,檢測到寫MBR時,則直接pass 該操作。




圖6.MBR保護掛鉤邏輯示意圖



圖7.根據磁碟驅動對象和小埠驅動設置不同的鉤子

3) 新增一個計時器,在DPCRoutine 中反覆檢測磁碟鉤子,如果鉤子被刪除則重新掛鉤,掛鉤超過5次則強制重啟機器。檢測 自身代碼是否被patch,一旦發現自己被patch則藍屏。


圖8.自身代碼完整性校驗相關代碼



4) 對指定設備名進行占坑,對抗急救箱工具




圖9.占坑對抗急救箱代碼


5) 直接在內核以TDI 的方式訪問網路下載shellcode解密後直接在內核中運行。木馬在TDI層用udp連接訪問**.maimai666.com的8064埠獲取shellcode。如果失敗改用tcp連接**.maimai666.com的8864獲取。且木馬自帶了dns伺服器地址用來解析域名。


圖10. 連接網路下載shellcode2


ShellCode2



shellcode2的功能是解壓尾部數據,得到一個playload.dll ,嘗試以APC的方式嚮應用層指定進程插入該dll文件。 Shellcode2會遍歷進程,當發現以下某一進程時,進行插入,成功後不再嘗試其它進程。




圖11. 進程列表一



圖12. 進程列表二


圖13. 向指定進程插APC相關代碼



三、playload.dll行為分析


playload.dll


該dll被以APC的形式插入到應用層進程中,根據配置信息執行相應的功能,能夠實現的功能及具體配置情況如下表所示。下載的文件所在的URL為:hxxp://www.**sewle.com:8877/ds/cl.db。
































能實現的功能

開關

參數信息

刪除指定的服務


刪除指定服務和註冊表


下載指定Dll並Load


下載Exe並執行


下載惡意代碼,注入到傀儡進程執行

http://www.

**sewle.com:8877/ds/cl.db,解密後創建傀儡進程svchost.exe執行


1) 根據配置(配置信息直接內置在文件中,比暗雲Ⅱ減少了一次聯網下載配置的行為)來決定執行哪些操作,可以實現的功能包括刪除指定服務,指定註冊表,下載指定文件載入、運行、注入等



圖14.刪除服務相關代碼



圖15.下載文件並載入、執行、注入的相關代碼


cl.db



該模塊的結構是ShellCode+DLL,ShellCode的功能是在內存中展開執行解密後的DLL,DLL是個簡單下載器,首先會從 hxxp://www.**sewle.com:8877/ds/kn.html下載配置文件,然後根據配置信息下載exe執行或者下載dll,最後創建傀儡進程svchost執行。對比暗雲Ⅱ和暗雲Ⅲ的配置文件中的Version欄位,我們發現當前的版本已經達到624,說明該木馬不僅持續活躍,而且更新頻繁。


圖16. 配置文件格式,IsExe欄位標記是否為exe



圖17.創建傀儡進程svchost.exe,並將內置有腳本解釋器的惡意dll注入執行


四、木馬功能模塊


lcdn.db


該木馬是暗雲木馬的主要功能模塊,直接在內存中載入執行,該模塊集成了lua腳本解釋器,其主要功能不斷從

http://www.

**sewle.com:8877/ld/ndn.db處下載lua腳本,並解釋執行,該腳本非常頻繁地變換中,通過跟蹤幾個腳本,發現當前下發的腳本主要功能是刷流量和攻擊網站。控制者可隨時更新伺服器上的腳本,做各種惡意行為,對用戶電腦造成嚴重的安全隱患。




圖18.



圖19.腳本內容


安全建議和木馬查殺:



暗雲Ⅲ木馬主要通過外掛、遊戲輔助、私服登錄器等傳播,此類軟體通常誘導用戶關閉安全軟體後使用,使得木馬得以乘機植入。管家建議大家持續保持安全軟體開啟狀態,不要運行來源不明和被安全軟體報毒的程序。目前騰訊電腦管家已經能夠準確檢測和查殺暗雲系列木馬。同時管家已經提供該木馬單獨的專殺工具供用戶下載使用。


參考鏈接:


http://www.freebuf.com/vuls/57868.html


http://www.freebuf.com/articles/system/109096.html


*本文作者:騰訊電腦管家,轉載請註明來自FreeBuf.COM


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 的精彩文章:

一發脾氣,就是「火燒功德林
南漆北蠟:紅木的最後一道「脾氣」
直接把核潛艇開進對手後院 戰鬥民族這脾氣 連美國都服了!
名氣大但脾氣不大的8位明星,劉德華第二,胡歌第七
八國語言中超無人能及,恆大舊將因火爆脾氣進國足已無望

TAG: |

您可能感興趣

Underminer通過加密的TCP隧道提供Bootkit以及挖礦惡意軟體