針對間諜軟體InvisiMole的RC2CL模塊分析
上一篇文章,我們介紹了RC2FM模塊,今天我們來介紹一下RC2CL模塊。
對RC2CL模塊的分析
RC2CL模塊也是一個功能強大的後門,在DLL啟動後,它會與RC2FM模塊同時啟動。不過相比RC2FM模塊,它的功能更複雜,這從它可以收集更多的有關受感染計算機數據的功能就可以看出,不過,他不能用於篡改系統。
有趣的是,RC2CL模塊中的一個選項,攻擊者可以用它關閉後門功能並充當代理。如果後門功能被關閉,RC2CL模塊則會關閉Windows防火牆,並成為一個伺服器,在客戶端與C&C伺服器之間或兩個客戶端之間進行通信。
對網路通信的功能分析
RC2CL模塊通過TCP套接字與C&C伺服器進行通信,這是為了將通信內容偽裝成HTTP協議,但請注意下圖示例中的無效「HIDE」HTTP動詞。
這些通信請求包括是否要盜取受害者的PC標識符、請求類型以及加密數據,以便進行後期的攻擊。
發送到C&C伺服器的RC2CL模塊請求
其他攻擊功能
RC2CL模塊根據收到的命令,可以在受感染計算機上執行各種操作。常見的後門程序通常支持諸如文件系統操作、文件執行、註冊表鍵操作或遠程shell激活之類的命令。不過,除了支持這些常規的命令外,RC2CL模塊還包含了84條其他的命令,這些命令足以攻擊者監控並發動一切攻擊。
另外,RC2CL模塊還可以檢查被感染的計算機並收集各種數據,比如活動進程信息、運行服務信息、載入驅動程序信息或可用驅動器的信息,包括IP轉發表和上網速度的網路基本信息。
有了這些信息,RC2CL模塊可以讓InvisiMole在受感染的設備中,自動啟用受害者的無線網路,並記錄無線網路的信息,例如Wi-Fi接入點的SSID和MAC地址等。攻擊者通過將這些數據進行定位分析,就可以得出受害者的具體位置。
還有一些其他命令可以提供用戶登錄的各種帳戶和以前的會話信息。如果攻擊者對這些感興趣,他們只需要發送其中一條命令,即可了解受害者系統上的安裝應用程序列表;哪些應用程序是在系統啟動或用戶登錄時自動執行的;哪些程序被特定用戶使用等。更厲害的是攻擊者可以命令RC2CL模塊搜索受害者最近使用的文檔或其他感興趣的文檔。同時,RC2CL模塊也可以被用來監控特定目錄和可移動設備,報告任何更改的設置或者竊取攻擊者感興趣的文件。
另外,RC2CL模塊還可以啟用或禁用用戶帳戶控制(User Account Control,UAC)),甚至是繞過UAC,這樣做,是為了在沒有管理員許可權的情況下,在安全位置對盜取的文件進行處理。如果RC2CL模塊在自動升級的explorer.exe進程下運行,它可以創建一個提升的COM對象,並使用它來刪除或移動一些文件,而這些文件正常情況下是需要管理員許可權的。
除此之外,它也有著間諜功能,可以遠程激活攝像頭和麥克風,通過拍攝視頻和錄製聲音來監控受害者,另外,它還可以通過屏幕截圖來實施監控。InvisiMole的特別之處在於,不僅可以進行通常的「全屏顯示」屏幕截圖,而且將監控畫面分為許多偵,對每一幀進行截圖,這有助於攻擊者獲得更多受害者的信息。
此外,具有以下名稱的驅動程序會被其中一個後門命令使用:
·blbdrive.sys
·compbatt.sys
·secdrv.sys
不過截止目前,ESET的研究人員還沒有觀察到攻擊者實際使用過這個命令,但可以推測這樣做是為了在32位系統上實現額外的持久攻擊效果。
雖然RC2CL模塊可以對正常的系統操作進行篡改,比如註銷用戶、終止進程或關閉系統,但顯然這些會讓受害者起疑,所以一般情況下,它都會將這些功能儘可能隱藏,不露出馬腳。
除了不隨便干擾系統的進程外,該模塊還不會隨便修改文件,比如RC2CL模塊會隨時監控到新出現的文件,如果願意,它可以進行移動,複製都能操作,但很明顯,出於隱藏的目的,它不會這樣做,以免引起受害者的懷疑,因為這些活動都會留下訪問時間的痕迹。就算對文件做過手腳,RC2CL模塊總是會將文件訪問或修改最初的時間,以便受害者起疑。
除此之外,RC2CL模塊會收集大量的敏感數據,這些數據被暫時存儲在文件中,最後在成功上傳至C&C伺服器,不過這個過程也會被InvisiMole的攻擊者刪除,只要把留在磁碟上的痕迹擦除即可。最厲害的是,攻擊者還會恢復那些被用戶刪除的文件,因為即使刪除了文件,一些數據仍然存在於磁碟上。為了防止用戶刪除文件的情況發生,InvisiMole會用0或隨機位元組覆蓋文件中的數據,讓用戶以為文件真的刪除了。
內部存儲功能的分析
攻擊者通常會將後門命令和收集的數據存儲在工作目錄和工作註冊表項,具體存儲在哪一個?則由其中一部分後門命令決定,它們被專門用於決定存儲位置及其存放的內容。
工作目錄用於臨時存儲文件,其中就包含有關受感染設備的數據,這些臨時文件的命名規則是統一的、加密演算法和結構也還是一樣的。InvisiMole模塊中使用的是簡單異或加密的變種加密方式,存儲的文件類型可以從位於文件開頭的4位元組控制序列中派生出來。
除了臨時存儲文件外,工作目錄還可以存儲合法的WinRAR.exe應用程序副本,它被用來壓縮收集的數據。
工作註冊表項用於存儲配置數據,以及工作目錄中的文件列表。存儲在其中的數據會使用在InvisiMole二進位文件中實現的Zlib常式進行壓縮,並使用與內部文件相同的密碼進行加密。
後門命令
RC2CL模塊提供了80多條命令,這些命令是用來專門指示工作目錄和註冊表項工作的。
大約三分之一的命令專門用於讀取和更新存儲在註冊表項中的配置數據,下表是其餘的命令。
命令ID及相關命令說明
4:列出有關目錄中文件的信息
6:上傳文件
20:列出有關活動進程的信息
22:通過ID終止進程
24:執行一個文件
26:刪除文件
28:獲取IP轉發表
30:將數據寫入文件
31:睡眠
38:列出帳戶信息
40:列出有關係統服務的信息
42:列出關於載入的驅動程序
43:收集基本系統信息(計算機名稱、操作系統版本、內存狀態、本地時間、驅動器信息、配置的代理信息、系統和進程DEP策略……)
44:列出安裝的軟體
46:列出本地用戶和會話信息
48:列出用戶訪問的應用程序
52:創建一個目錄結構
78:創建一個遠程shell
81:通過遠程shell執行命令
91:啟用/禁用UAC
93:註銷用戶/關機/重新啟動系統
101:監視並記錄指定目錄中的更改
103:刪除目錄
109:打開/關閉顯示器到待機狀態
120:捕獲顯示/活動窗口的屏幕截圖
126:捕獲顯示/活動窗口的屏幕截圖並更新配置數據
130:列出有關未映射驅動器上資源的信息
132:重命名/移動文件,將文件的創建/訪問/寫入次數修改為給定值
134:列出有關最近打開的文件的信息
152:斷開(以前連接的)遠程驅動器
155:創建/刪除註冊表項,設置/刪除註冊表項值或枚舉註冊表值/鍵/數據
159:161禁用路由/防火牆,在指定的埠上創建代理伺服器
172:重複顯示一個對話框,要求用戶重新啟動計算機
175:繞過UAC來操作文件
177:創建並寫入文件,設置創建/訪問/修改時間
181:刪除所有系統還原點
183:放棄(合法)WinRAR組件
185:將文件添加到受密碼保護的存檔(密碼為「12KsNh92Dwd」)
187:解密,解壓縮和載入DLL,從其資源RC2CL,RC2FM載入可執行文件
189:創建系統還原點
191:提取受密碼保護的存檔(12KsNh92Dwd)
193:修改加密文件
195:主進程完成後重新啟動
197:在樣本中發送198個位元組的硬編碼數據
199:重命名/移動文件
206:解密,解壓縮並載入DLL,從其資源RC2CL,RC2FM載入可執行文件
211:上傳收集到的信息(截取屏幕截圖、錄音等)
213:列出有關活動窗口的信息
218:API用於錄製輸入音頻設備
220:API捕捉攝像頭照片
224:每個系統啟動時執行的列表文件
226:列出有關啟用的無線網路的信息(MAC地址,SSID,信標間隔)
228:刪除Zlib壓縮包
總結
InvisiMole是我見過的最強大,最隱蔽的間諜軟體,它的功能詳細到了令人瞠目結舌的地步。就憑以上的分析,InvisiMole也不是一個普通的黑客組織研發出來的,其真正的使用者也肯定有雄厚的財力。
不過目前,ESET還不清楚InvisiMole的兩個功能模塊是同時使用還是一前一後配合使用?比如,先用較小的RC2FM模塊進行偵察,再用較大的RC2CL模塊攻擊者感興趣的目標。不過,兩個模塊也可以同時使用。不過還有另外一種可能,就是這些模塊可能是由不同的開發者開發的,然後被攻擊者放在了同一個惡意軟體中。
雖然InvisiMole只使用了少數幾種技術來逃避檢測和分析,然而由於它的精細化處理卻非常高,只針對了極少數目標進行攻擊。
IoCs
你在GitHub上可以找到完整和全面的IoC,C&C伺服器列表以及註冊表項和值。
※美國政府最新技術警報:警惕朝鮮黑客組織Hidden Cobra正在使用的兩款RAT和蠕蟲病毒
※攻擊新套路:在MS Office文檔中嵌入Flash 0day漏洞
TAG:嘶吼RoarTalk |