歡迎來到 黑吧安全網 聚焦網絡安全前沿資訊,精華內容,交流技術心得!

Emotet惡意軟件深入分析

來源:本站整理 作者:佚名 時間:2019-06-14 TAG: 我要投稿
內存映射如下圖所示,紅框內為三塊已分配的內存空間及解包的程序。

圖9:三塊已分配的內存空間及解包的程序
最后,程序跳轉到實際入口點0x4C9A0。(注意:此時可以在x64dbg中使用OllyDumpEx插件dump出解包的程序。獲得解包的程序后,就可以使用IDA Pro對其進行靜態分析了)

圖10:跳轉到真正的入口點
到目前為止,我已經演示了如何對Emotet惡意軟件進行解包。在解包的程序中,C2服務器列表和公鑰分別硬編碼在0x40F710和0x40FBF0處。
 
0x04 與C2服務器通信
為了研究它與C2服務器的通信,我們首先需要獲取C2服務器列表。如第3節所說到的,C2服務器列表是硬編碼在可執行文件中的。
解包后,可以看到在緩沖區中,從偏移量0x40F710開始,存儲的即為C2服務器列表,如圖11所示:

圖11.硬編碼的C2服務器列表
全局變量存儲在0x004124A0。其結構如下:
struct g_ip_port_list
{
                  DWORD *c2_list;
                  DWORD *current_c2;
                  DWORD size;
                  DWORD current_c2_index;
}
變量c2_list指向緩沖區中硬編碼的C2服務器列表。這個列表中的每一項都包含一對IP地址和端口。大小為8個字節,其中前4個字節代表IP地址,接下來2個字節代表端口;變量current_c2指向當前被選中的C2服務器;變量size是C2服務器列表的大小;變量current_c2_index是當前被選中的C2服務器的索引。
此樣本包含61個C2服務器,如下所示:
200.58.171.51:80 (即:C8 3A AB 33 :00 50)
189.196.140.187:80
222.104.222.145:443
115.132.227.247:443
190.85.206.228:80
216.98.148.136:4143
111.67.12.221:8080
185.94.252.27:443
139.59.19.157:80
159.69.211.211:8080
107.159.94.183:8080
72.47.248.48:8080
24.150.44.53:80
176.58.93.123:8080
186.139.160.193:8080
217.199.175.216:8080
181.199.151.19:80
85.132.96.242:80
51.255.50.164:8080
103.213.212.42:443
192.155.90.90:7080
66.209.69.165:443
109.104.79.48:8080
181.142.29.90:80
77.82.85.35:8080
190.171.230.41:80
144.76.117.247:8080
187.188.166.192:80
201.203.99.129:8080
200.114.142.40:8080
43.229.62.186:8080
189.213.208.168:21
181.37.126.2:80
109.73.52.242:8080
181.29.101.13:80
190.180.52.146:20
82.226.163.9:80
200.28.131.215:443
213.172.88.13:80
185.86.148.222:8080
190.117.206.153:443
192.163.199.254:8080
103.201.150.209:80
181.30.126.66:80
200.107.105.16:465
165.227.213.173:8080
81.3.6.78:7080
5.9.128.163:8080
69.163.33.82:8080
196.6.112.70:443
37.59.1.74:8080
23.254.203.51:8080
190.147.116.32:21
200.45.57.96:143
91.205.215.57:7080
189.205.185.71:465
219.94.254.93:8080
186.71.54.77:20
175.107.200.27:443
66.228.45.129:8080
62.75.143.100:7080
接下來,我們來看看發送到C2服務器的流量。在樣本中,它向C2服務器發送了HTTP POST請求。

圖12:發送到C2服務器的流量
HTTP會話如下圖所示。其中數據部分進行了URL編碼。

圖13:HTTP會話數據
進行URL解碼后,發現數據還有一層Base64編碼。再執行一次Base64解碼,最終得到了真實數據。在下一節中,我們將深入研究HTTP正文數據所用的加密算法。

圖14:經過URL解碼及Base64解碼HTTP數據
 
0x05 加密算法
Emotet惡意軟件會收集如主機名、運行進程列表等系統信息。下圖為收集的系統信息:

圖15:收集的系統信息
接下來,會使用Deflate算法對收集的信息進行壓縮。

圖16:使用Deflate算法壓縮收集的數據
接下來,惡意軟件用會話密鑰對壓縮后的數據進行加密,并將由RSA公鑰加密的會話密鑰(AES)、哈希值以及加密數據打包在一起,存放在接下來的結構中。

上一頁  [1] [2] [3]  下一頁

【聲明】:黑吧安全網(http://www.pcpbjo.tw)登載此文出于傳遞更多信息之目的,并不代表本站贊同其觀點和對其真實性負責,僅適于網絡安全技術愛好者學習研究使用,學習中請遵循國家相關法律法規。如有問題請聯系我們,聯系郵箱[email protected],我們會在最短的時間內進行處理。
  • 最新更新
    • 相關閱讀
      • 本類熱門
        • 最近下載
        云南快乐十分前三电视