驚呆了 | 破解DGA演算法 思科將能預測GozNym殭屍網路的域名

最近,思科塔羅斯(Talos)安全團隊發表了一份關於GozNym殭屍網路的細節分析報告,原因是Talos團隊的安全專家成功破解了該惡意軟體所使用的DGA演算法。

2015年4月, IBM公司X-Force團隊的安全研究人員發現了一種新型銀行木馬——GozNym,該木馬結合了Nymaim與Gozi ISFB的木馬程序。其中,Nymaim最主要的功能是勒索,並且也是一個下載木馬,可下載諸如Ursnif金融木馬等其他惡意軟體;Gozi ISFB則是一個金融木馬程序,注入瀏覽器後黑客即可監控用戶的瀏覽行為。GozNym木馬程序融合了Nymaim與Gozi ISFB的程序碼,兼具Nymaim的隱形與持久性,同時具備Gozi ISFB竊取金融信息的能力,其威脅性難以想像。

過去的這段時間裡,GozNym木馬已經針對全球的銀行機構,信用合作社以及零售銀行等發起了多起攻擊。GozNym木馬的受害者中有24家位於北美的金融機構和歐洲的一些組織,包括波蘭的webmail服務供應商,投資銀行以及17家波蘭銀行和一家葡萄牙銀行的消費者賬戶等。

現在,來自思科公司Talos團隊的安全專家通過對該木馬進行分析,已經確定了4種變體,這些變體因使用不同的域名生成演算法(DGA,domain generation algorithm)而有所區別。

域名生成演算法是一種允許惡意軟體定期生成大量域名的演算法,以此來和C&C伺服器進行通信。

攻擊者使用一個內含特製word文檔的魚叉式網路釣魚郵件作為攻擊向量,一旦受害者打開該文檔並執行macro宏定義指令,VBA代碼就會下載並運行GozNym木馬。

一旦該惡意軟體感染了系統,它就會通過google.commicrosoft.com的DNS查詢檢查網路連接。在連接的情況下,它就會與DGA生成的命令和控制(C&C)域名進行通信,通過一個簡單的gethostbyname()函數API調用或是通過一個複雜的DNS協議執行將8.8.4.4 或8.8.8.8作為其伺服器。(8.8.8.8為谷歌的公共DNS主伺服器,8.8.4.4為谷歌公共DNS備伺服器,二者都是可以進行免費DNS查詢的公共伺服器的IP。)

GozNym銀行木馬會劫持受害者的瀏覽器會話,並將其重定向到一個釣魚網頁。

Talos團隊的安全專家鑒定了一些DGA變體,以下是惡意軟體研究人員對其中一個變體的描述:

「在DGA的第一階段,一個Xorshift偽隨機序列發生器的變體被用於創建一個包含15個域名的列表。每個域名都有5-12個小寫字母的長度,後面綴上一個隨機選擇的TLD(如 .net,.com,.in或.pw)。隨後,GozNym使用谷歌DNS伺服器對每個域名進行查詢,並檢查IP反應的是否為公共地址。一旦解決了兩種不同IP的問題,就可以將其用於DGA的第二階段。」n

在第二階段,惡意軟體會使用第一階段的方法創建了一個包含128個域名的列表,但是它會使用IP地址替換第一階段中的硬編碼 DWORD(即Double Word,為4個位元組)。GozNym木馬的DGA演算法是非常複雜的,但是思科的安全研究人員已經發現了一些漏洞,可以幫助他們使用暴力手段預測域名。

Talos團隊的安全研究人員已經發現了DGA演算法的漏洞,可以幫助他們預測被GozNym惡意軟體使用的域名,對惡意軟體獵人來說最寶貴的消息是,大家可以利用 DNS sinkholes來分析該惡意軟體。

安全專家已經能夠概要性的對GozNym殭屍網路進行描述,他們使用的天坑(sinkhole)伺服器在第一個24小時內就接受了23062個beacons。這就意味著,該殭屍網路大約由23062台機器組成,因為每一台機器只會發送一個beacons,除了沙箱這種情況例外,它可以從一小組IP中發出多次beacons。

最終統計,屬於殭屍網路的特殊IP的數目為1854個。

如上圖所示,接收到的beacon分布最多的國家分別為:德國(47%),美國(37%),波蘭(11%),加拿大(1%),英國(1%)以及其他(2%)。

建議你可以查看Talos團隊發布的分析報告,其中還包含一些腳本信息,可以用來分析GozNym樣本。

註:本文參考來源於securityaffairs

推薦閱讀:

一周安全事件 | 雅虎被黑後身價下降10億美元
看完這個回答,嚇得我又運行了一遍Revoke China Cert
「我是黑客」,有證嗎?
你的隱私在裸奔 | 互聯網隱身指南
360「網站寶」和創新工場「安全寶」誰將執網站安全服務之牛耳?為什麼?

TAG:信息安全 | 网络安全 |