NanoCore RAT是在.Net框架中開發的有名的遠控軟件,網絡環境中大量利用各種手段傳播此軟件,有時巧妙的構造有效的繞過殺軟在進一步通過服務端進行功能模塊的更新,深受黑客喜愛,從蜜罐捕獲相應的樣本做進一步分析。
客戶端上線通知,顯示主機相關信息:
插件功能豐富,鍵盤監控,實時視頻操作,語音,命令行控制等完全控制遠程主機。
客戶端一鍵生成非常非常方便,配置相關主機端口,DNS,圖標等。
利用NanoCore RAT惡意樣本分析
- 樣本信息
文件名稱 |
REGISTER |
文件大小 |
135496 bytes |
文件類型 |
Rich Text Format |
MD5 |
c55aa1af2e3cf3e782627d068104313e |
SHA1 |
9e391eefce95244a4a4079bf07036108326f6e80 |
CRC32 |
9F5B2405 |
表1.1樣本信息
分析環境及工具
環境:Windows7 x86
工具:IDA OD ProcessExplorer PCHunter 火絨劍 LordPE
Virustotal平臺行爲檢測:
Virustotal平臺行爲檢測39/54基本判定爲惡意程序。
火絨劍檢測有釋放PE文件,並完成自我複製,創建啓動項。
直接將文件夾下的C\program Files\WAN Service\wansv.exe,提取分析即可。本次將不直接分析,因爲本樣本利用傀儡進程,爲了更加深入瞭解傀儡進程原理,因此對源程序執行流程進行細緻分析。
有重新創建進程,啓動進程。
傀儡進程實現原理
1.通過CreateProcess創建進程,傳入參數CREATE_SUSPENDED使進程掛起
2.通過NtUnmapViewOfSection清空新進程的內存數據
3.通過VirtualAllocEx申請新的內存
4.通過WriteProcessMemory向內存寫入payload
5.通過SetThreadContext設置入口點
6.通過ResumeThread喚醒進程,執行payload
Dump傀儡進程
在CreateProcessW 進行下斷。
運行後 setThreadContext 進行下段,PChunter dump出來傀儡進程
Dump出來的程序UPX加殼。脫殼後在資源中有加載NanoCore客戶端程序。繼續Dump文件。
VirtualAlloc可見爲資源加載的PE文件申請的空間大小。
資源加載調用loadResource.
Dump出來的程序爲C#編寫的.NET程序。
DnSpy反編譯發現爲NanoCore 的客戶端。NanoCore生成的客戶端只需查看Socket連接的主機即可。
IP191.101.22.13,端口4110。
將IP修改爲本機。運行NanoCore服務端,創建端口4110。啓動服務端。執行遠程監控。
查殺
殺軟查殺
本惡意樣本殺軟幾乎都可以查殺。運行殺軟即可。
手工查殺。
- 刪除HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run啓動項中名稱爲WAN Service,數值數據爲C:\Program Files\WAN Service\wansv.exe的鍵值。
- 將C:\Program Files\WAN Service\wansv.exePE文件隱藏屬性去掉,刪除軟件。