FYSBIS分析報告:SOFACY的Linux後門

wyzsk發表於2020-08-19
作者: leonnewton · 2016/02/22 10:29

本文翻譯自: http://researchcenter.paloaltonetworks.com/2016/02/a-look-into-fysbis-sofacys-linux-backdoor/
原作者:Bryan Lee 和 Rob Downs
版權歸原作者所有

0x00 簡介


Sofacy組織,也被稱為APT28或者Sednit,是一個相當知名的網路攻擊間諜組織,據信跟俄羅斯有關。他們的攻擊目標遍佈全世界,主要針對政府、防禦組織和多個東歐國家政府。已經有很多關於他們活動的報告,以至於已經有維基百科的詞條。

從這些報告裡,我們發現該組織有豐富的工具和策略,包括利用0day漏洞攻擊通用應用程式,例如JAVA或者Microsoft Office;大量使用魚叉式網路釣魚;利用合法網站進行水坑式攻擊並且目標包括各類作業系統--Windows、OSX、Linux、iOS。

Linux下的惡意軟體Fysbis是Sofacy很喜歡使用的一個工具,雖然這個工具不是特別的精巧複雜。但由於Linux安全總體上是一個不是很成熟的領域,特別是惡意軟體方面。所以,這個工具幫助了Sofacy組織進行成功攻擊是完全有可能的。

0x01 惡意軟體評估


Fysbis是一個模組化的Linux木馬/後門,將外掛和控制模組作為不同的類來實現。一些分析把這個惡意軟體歸類到Sednit組織命名名稱裡。這個惡意軟體包括32位和64位的ELF檔案。此外,Fysbis在有或者沒有root許可權的情況下都可以把自己植入目標系統。當需要選擇安裝的賬戶時,這增加了攻擊的選擇。

對3個樣本的總結資訊如下:

Table 1: Sample 1 – Late 2014 Sofacy 64-bit Fysbis

MD5 364ff454dcf00420cff13a57bcb78467
SHA-256 8bca0031f3b691421cb15f9c6e71ce193355d2d8cf2b190438b6962761d0c6bb
ssdeep 3072:n+1R4tREtGN4qyGCXdHPYK9l0H786O26BmMAwyWMn/qwwiHNl:n+1R43QcILXdF0w6IBmMAwwCwwi
Size 141.2 KB (144560 bytes)
Type ELF 64-bit (stripped)
Install as root /bin/rsyncd
Root install desc synchronize and backup service
Install as non-root ~/.config/dbus-notifier/dbus-inotifier
Non-root install desc system service d-bus notifier
C2 azureon-line[.]com (TCP/80)
Usage Timeframe Late 2014

Table 2: Sample 2 – Early 2015 Sofacy 32-bit Fysbis

MD5 075b6695ab63f36af65f7ffd45cccd39
SHA-256 02c7cf55fd5c5809ce2dce56085ba43795f2480423a4256537bfdfda0df85592
ssdeep 3072:9ZAxHANuat3WWFY9nqjwbuZf454UNqRpROIDLHaSeWb3LGmPTrIW33HxIajF:9ZAxHANJAvbuZf454UN+rv eQLZPTrV3Z
Size 175.9 KB (180148 bytes)
Type ELF 32-bit (stripped)
Install as root /bin/ksysdefd
Root install desc system kernel service defender
Install as non-root ~/.config/ksysdef/ksysdefd
Non-root install desc system kernel service defender
C2 198.105.125[.]74 (TCP/80)
Usage Timeframe Early 2015

Table 3: Sample 3 – Late 2015 Sofacy 64-bit Fysbis

MD5 e107c5c84ded6cd9391aede7f04d64c8
SHA-256 fd8b2ea9a2e8a67e4cb3904b49c789d57ed9b1ce5bebfe54fe3d98214d6a0f61
ssdeep 6144:W/D5tpLWtr91gmaVy+mdckn6BCUdc4mLc2B9:4D5Lqgkcj+
Size 314.4 KB (321902 bytes)
Type ELF 64-bit (not stripped)
Install as root /bin/ksysdefd
Root install desc system kernel service defender
Install as non-root ~/.config/ksysdef/ksysdefd
Non-root install desc system kernel service defender
C2 mozilla-plugins[.]com (TCP/80)
Usage Timeframe Late 2015

總的來說,這些樣本不是很複雜但是卻很有效。這些樣本表明了一個事實:APT攻擊者並不需要高階的手段來攻擊目標。相反,攻擊者把高階的惡意軟體和0day利用保留在手裡而只使用剛好能達到目的的資源進行攻擊。因此分析人員有理由用一些捷徑或者trick來縮短評估威脅的時間。也就是說,分析人員應該總是透過一些方法來更有效的工作而不是一味蠻幹。

0x02 利用字串充分獲取資訊


字串本身就可以體現很多資訊,提高了諸如靜態分析分類的效率(例如使用Yara)。表1和表2Fysbis樣本安裝和目標平臺資訊就是很好的例子。

p1 圖1:從字串中獲得的Fysbis安裝和目標平臺資訊

從這個例子中,我們可以發現檔案的安裝路徑和透過匹配來確定具體的Linux版本。後面跟著的是一系列延長在目標上的存活時間的Linux shell命令。

另一個例子是跟樣本功能相關的資訊。

p2 圖2:從字串中洩露的功能資訊

圖2 表明了互動狀態和返回的資訊,讓分析人員對樣本功能有個大概的印象。除了可以幫助靜態分析,這也可以作為後面事件響應優先順序和評估威脅的出發點。

0x03 符號資訊可以縮短分析時間


有趣地是,最新的ELF 64位檔案(表3的樣本)在使用前沒有strip,這導致在檔案中會有額外的符號資訊。對Windows PE比較熟悉的分析人員可以認為就是Debug版本和Release版本的區別。作為比較,如果我們分析下Fysbis strip過的樣本跟 "RemoteShell" 相關的字串,就只能發現下面的字串:

p3 圖3:Fysbis strip後樣本跟RemoteShell功能相關的字串

跟沒有strip的樣本比較:

p4 圖4:Fysbis 沒有strip的樣本跟RemoteShell功能相關的字串

一些像這樣的靜態分析技巧可以幫助分析人員快速分析樣本的功能,更重要的是,在後續相似樣本關聯和發現也有用處。

此外,最新的樣本表明惡意樣本進行了小的改進,最顯著的就是進行了混淆。表1和表2的樣本都很清晰地洩露了安裝資訊。這跟表3的樣本是不同的。用反彙編工具看下這個沒有strip的樣本,下面展示了在有root許可權的賬戶中解密安裝資訊的相關資訊。

p5 圖5:樣本3安裝資訊的彙編程式碼

在這個例子中,從符號資訊可以看出解密的方法,有mask,路徑,名字和byte陣列。

p6 圖6:樣本3跟root許可權安裝相關的byte陣列的彙編程式碼

這個解密的演算法是,用一個byte陣列作為mask,作用到另外的byte陣列上,使用迴圈並且有2個key的異或演算法來生成惡意樣本的安裝路徑、檔名和Linux root賬戶相關的資訊。由於INSTALLUSER byte陣列的存在,可以在非root情況下安裝惡意樣本。相同的解密方法也可以用來解密樣本配置的C2資訊,這進一步說明很少的符號進行就可以在很大程度上提高樣本分析的完整性。

如果你想知道更多關於Fysbis的資訊,樣本的分析報告可以在這裡獲得。

0x04 基礎設施分析


就像Unit 42在其他文章裡說的一樣,我們發現攻擊者好像不太願意更換他們的基礎設施。這可能是因為不想增加額外的資源,或者僅僅是因為保持對原有設施的熟悉程度來保證時效性。在Sofacy組織使用的Fysbis樣本中都發現了上述2種情況。

最老的一個樣本(表1),跟域名azureon-line[.]com進行互動,這個域名已經被廣泛證實是Sofacy組織使用的進行控制命令的域名。透過被動DNS,我們發現這個域名解析到2個初始的IP 193.169.244[.]190 and 111.90.148[.]148,也被對映到Sofacy在這段時間內使用的其他域名。

p7 圖7:樣本1的C2資訊

表2的樣本,關聯的IP也是Sofacy組織使用的198.105.125[.]74。這個IP跟一個叫CHOPSTICK的工具有關,具體可以檢視

p8 圖8:樣本2的C2資訊

最新的樣本(表3),是一個之前未知的域名 mozilla-plugins[.]com。這跟前文Sofacy組織的策略相互印證,即使用跟合法公司相似的名字來作為基礎設施的名字。這個域名和IP反查結果在之前都沒有發現過,表明表3的樣本可能跟新的團體相關。把樣本3的二進位制檔案跟另外2個比較,發現在程式碼層面和行為層面都有很大的相似性。

p9 圖9:樣本3的C2資訊

0x05 結論


Linux是在商業和家庭中常見的作業系統,並且有很多版本。資料中心、雲服務都喜歡使用Linux,在網路和應用伺服器市場也越來越受歡迎。Linux也是Android和其他幾種嵌入式系統的基礎。使用Linux的好處——特別是在商業公司——可以總結到3點:低成本的TCO、安全性和功能豐富。資料統計和比較可以清楚地評估TCO和功能,但是安全性需要深入地研究。Linux方面的知識在工業界的各個應用上都非常需要,從系統管理、大資料分析和事件響應等等。

大部分的商業活動還是在Windows環境下,這也是說核心基礎設施也使用Windows伺服器(例如Active Directory、SharePoint等等應用)。這表明,從實際的情況看,大部分情況下還是在支援和保護Windows下的設施。一部分公司的IT專家對Linux還不是很熟悉,特別是對於網路防護人員來說。識別和確認潛在的威脅,需要對什麼是正常操作有一定的熟悉程度,這樣才能發現異常情況。對於環境中的其他軟體也是一樣的,正常操作完全依賴於指定軟體在公司中扮演的角色和功能。

對非Windows平臺缺少專業知識和了解對公司的安全形勢增加了很大的危險。最近的一個例子就是,Linux上的漏洞CVE-2016-0728表明相關平臺潛在威脅的廣度。專業或者投機的攻擊者,儘管他們有不同的動機,都增加了平臺暴露的風險。儘管很多人認為Linux的特點讓它有更高的安全性(實際上並不正確),但Linux上的惡意軟體和漏洞確實存在,並且已經被攻擊者在實際中用來攻擊。

本文章來源於烏雲知識庫,此映象為了方便大家學習研究,文章版權歸烏雲知識庫!

相關文章