科學(xué)技術(shù)的高速發(fā)展,帶來了大量的商業(yè)發(fā)展機(jī)會,同時(shí)也為終端安全帶來巨大的挑戰(zhàn)。近日,深信服終端安全團(tuán)隊(duì)捕獲了Formbook樣本病毒。這是一款著名的商業(yè)惡意軟件,自2016以來在黑客論壇出售,因其隱蔽且易用的特點(diǎn)聞名。其主要利用釣魚郵件進(jìn)行傳播,一旦用戶不小心下載打開郵件附件,該惡意軟件將會安裝到終端上竊取機(jī)密數(shù)據(jù)和敏感信息。
Formbook竊密軟件在黑客論壇上的售價(jià)并不是非常高昂,使得竊密的犯罪成本降低,很容易對用戶的終端數(shù)據(jù)造成威脅。
FormBook主要會從受害者的設(shè)備(如鍵盤記錄器)中竊取受害者的鍵盤輸入以及某些軟件的數(shù)據(jù),例如瀏覽器,Email客戶端和FTP客戶端等個(gè)人信息,并使用C2的控制命令來操縱他們的設(shè)備或者服務(wù)器。
技術(shù)分析
該病毒上使用”傀儡“進(jìn)程進(jìn)行釋放以防止分析人員的調(diào)試:通過GetProcAddress獲取函數(shù)名并釋放動(dòng)態(tài)庫文件ek0j.dll,并調(diào)用其惡意導(dǎo)出函數(shù)Rcxlxosdkhvclf:
加密文件經(jīng)解密后為一段shellcode,將其加載到內(nèi)存并執(zhí)行:
對子進(jìn)程的dump進(jìn)行分析病毒真正的操縱,通過使用ida Lumina進(jìn)行 f12匹配分析
初始化內(nèi)存,該buffer區(qū)域在整個(gè)FormBook中進(jìn)行讀寫,包含配置選項(xiàng)
該buffer內(nèi)存區(qū)域:
具有標(biāo)記組用來檢測該病毒是否在被調(diào)試狀態(tài)下進(jìn)行,在buffer+0x29的位置上,所以flag正確的check為:00 01 01 00 00 01 00 01 00 01 00
存在該病毒的base,以及后面所運(yùn)用到的檢索API的hash值,當(dāng)前的os的位數(shù),以及許多的dll的模塊
全程使用計(jì)算以及比較hash,來獲取api的名字以及地址:
重載兩份ntdll,構(gòu)建部分ntdll從而防止殺軟在3環(huán)對原始ntdll做檢測
反調(diào)試檢查: r3與r0層的調(diào)試,查詢SystemKernelDebuggerInformation,以及ProcessDebugPort
(SYSTEM_INFORMATION_CLASS)SystemKernelDebuggerInformation
當(dāng)為0x23時(shí)為獲取系統(tǒng)是否在被調(diào)試信息存放到第2個(gè)參數(shù)指向的結(jié)構(gòu)中,該結(jié)構(gòu)是2個(gè)1字節(jié)的結(jié)構(gòu),當(dāng)處于調(diào)試時(shí)這2字節(jié)都會被寫入1從而判斷是否在r0層進(jìn)行調(diào)試
檢查黑名單進(jìn)程:
進(jìn)程也是通過hash的比對進(jìn)行,進(jìn)程列表為:
VBoxService.exe, VBoxTray.exe, VBoxService.exe,vmwareuser.exe, vmwareservice.exe, vmtoolsd.exe, vmusrvc.exe, vmsrvc.exe, sandboxiedcomlaunch.exe, procmon.exe, filemon.exe, wireshark.exe, NetMon.exe, python.exe, perl.exe
通過checkfilename ModulePath Username來判斷是否存在沙箱行為,沙箱一般會將用戶名變成特定用戶名從而該病毒進(jìn)行檢查
檢查用戶名列表: Cuckoo sandbox nmsdbox wilbert xpamast
0x19996921為explorer進(jìn)程hash,獲取線程進(jìn)行劫持
Windows 進(jìn)程名稱列表在初始化的buffer中被加密,通過索引選擇,Explorer中讀取到某32位進(jìn)程信息,explorer.exe
記錄下的進(jìn)程列表為:
explorer.exe,wininit.exe,cmmon32.exe, svchost.exe,lsass.exe,raserver.exe,netsh.exe,rundll32.exe,control.exe, services.exe,ipconfig.exe等等
FormBook 隨機(jī)獲取 explorer.exe 返回的懸掛如上進(jìn)程列表的進(jìn)程信息,將 FormBook 有效負(fù)載文件復(fù)制到這些進(jìn)程當(dāng)中中,并將其主線程的入口點(diǎn)代碼修改為注入的 FormBook 的OEP,執(zhí)行 FormBook 的惡意代碼,調(diào)用exitprocess來終止注入的formbook
該病毒使用explorer主線程來劫持以及進(jìn)行APC注入且創(chuàng)建一個(gè)掛起的進(jìn)程,在該掛起進(jìn)程中實(shí)現(xiàn)遷移從而實(shí)現(xiàn)explorer進(jìn)程中沒有創(chuàng)建新的進(jìn)程,而創(chuàng)建掛起的進(jìn)程父進(jìn)程為explorer
在C:\Program File(x86)下建立了隨機(jī)的文件夾里面有病毒程序formbook的重載
并使用這兩個(gè)文件進(jìn)行記錄獲取鍵盤等的數(shù)據(jù),并進(jìn)行通信
與c2服務(wù)器進(jìn)行通信,隨機(jī)選擇十六臺主機(jī)作為它自己的 c 2服務(wù)器,并將竊取的數(shù)據(jù)發(fā)送到這臺服務(wù)器
C2列表:
34.102.136.180:80, 45.56.79.23:80, 52.200.25.77:80, 75.126.163.75:80, 167.114.6.31:80, 52.79.124.173:80, 163.44.239.71:80, 176.104.107.18:80, 162.0.239.203:80 ........
構(gòu)造的新的控制塊
獲取樣本的路徑,設(shè)置當(dāng)前的互斥,將病毒文件重載內(nèi)存
經(jīng)過上述的惡意操作后,該病毒會刪除自身的文件: C del “C:\Users\Simp1er\Desktop\virus”
加固建議
1.日常生活工作中的重要的數(shù)據(jù)文件資料設(shè)置相應(yīng)的訪問權(quán)限,關(guān)閉不必要的文件共享功能并且定期進(jìn)行非本地備份;
2.使用高強(qiáng)度的主機(jī)密碼,并避免多臺設(shè)備使用相同密碼,不要對外網(wǎng)直接映射3389等端口,防止暴力破解;
3.避免打開來歷不明的郵件、鏈接和網(wǎng)址附件等,盡量不要在非官方渠道下載非正版的應(yīng)用軟件,發(fā)現(xiàn)文件類型與圖標(biāo)不相符時(shí)應(yīng)先使用安全軟件對文件進(jìn)行查殺;
4.定期檢測系統(tǒng)漏洞并且及時(shí)進(jìn)行補(bǔ)丁修復(fù)。