
一、攻擊活動細節
2017年9月,在針對烏克蘭的攻擊活動中FireEye發現了FELIXROOT后門這款惡意載荷,并將其反饋給我們的情報感知客戶。該攻擊活動使用了一些惡意的烏克蘭銀行文檔,其中包含一個宏,用來下載FELIXROOT載荷并將其投遞給攻擊目標。
最近FireEye觀察到有新的攻擊活動中用到了同樣的FELIXROOT后門。在這次攻擊活動中,武器化的誘騙文檔涉及到與環境保護研討會相關的話題,利用了兩個已知的Microsoft Office漏洞(CVE-2017-0199以及CVE-2017-11882)來將后門程序釋放到受害者主機上并加以執行,攻擊活動流程圖如圖1所示。

圖1. 攻擊流程圖
惡意軟件借助俄語文檔(如圖2所示)進行傳播,文檔用到了已知的Microsoft Office漏洞利用技術。在此次攻擊活動中,我們觀察到攻擊者利用CVE-2017-0199以及CVE-2017-11882漏洞來傳播惡意軟件。所使用的惡意文檔名為“Seminar.rtf”,文檔利用CVE-2017-0199漏洞從193.23.181.151這個地址處(如圖3所示)下載第二階段所使用的攻擊載荷,所下載的文檔包含了CVE-2017-11882漏洞利用技術。

圖2. 誘餌文檔

圖3. Seminar.rtf文檔中的URL信息(十六進制數據)
圖4表明第一個載荷正嘗試下載攻擊第二階段所使用的Seminar.rtf。

圖4. 下載第二階段所使用的Seminar.rtf
下載的Seminar.rtf文檔中包含一個二進制文件,通過公式編輯器將可執行文件釋放到%temp%目錄中。該文件將可執行文件釋放到%temp%目錄(MD5:78734CD268E5C9AB4184E1BBE21A6EB9),后者用來下載并執行FELIXROOT釋放器組件(MD5:92F63B1227A6B37335495F9BCB939EA2)。
釋放出來的可執行文件(MD5:78734CD268E5C9AB4184E1BBE21A6EB9)在PE(Portable Executable)覆蓋區中包含經過壓縮處理的FELIXROOT釋放器組件。當該文件被執行時會創建兩個文件:指向%system32%\rundll32.exe路徑的一個LNK文件以及FELIXROOT加載器組件。LNK文件會被移動到啟動目錄中。LNK文件中包含用來執行FELIXROOT加載器組件的命令,如圖5所示:

圖5. LNK文件中包含的命令
內置的后門組件使用了自定義加密算法進行加密。該文件會直接在內存中解密并執行,不涉及到落盤操作。
二、技術細節
成功利用漏洞后,釋放器組件會執行并釋放加載器組件。加載器組件借助RUNDLL32.EXE來執行。后門組件會被加載到內存中,只包含一個導出函數。
后門中包含的字符串經過自定義的加密算法進行加密處理,加密算法為XOR(異或)算法,采用了4字節的密鑰。ASCII字符串對應的解密邏輯如圖6所示。

圖6. ASCII解密過程
Unicode字符串的解密邏輯如圖7所示。

圖7. Unicode解密過程
執行起來后,后門會創建一個新的線程,然后休眠10分鐘,接著確認自身是否由RUNDLL32.EXE使用#1參數啟動,如果條件滿足,則后門會在執行命令與控制(C2)網絡通信操作之前先進行初始的系統信息收集。為了收集系統信息,后門通過ROOTCIMV2命名空間連接到Windows Management Instrumentation(WMI)。
整個操作過程如圖8所示:

圖8. 后門組件初始執行流程
從ROOTCIMV2及RootSecurityCenter2命名空間中引用的類如表1所示:
WMI命名空間
Win32_OperatingSystem
Win32_ComputerSystem
AntiSpywareProduct
AntiVirusProduct
FirewallProduct
Win32_UserAccount
Win32_NetworkAdapter
Win32_Process
表1. 引用的類
WMI及注冊表
用到的WMI查詢語句如下所示:
SELECT Caption FROM Win32_TimeZone
SELECT CSNAME, Caption, CSDVersion, Locale, RegisteredUser FROM Win32_OperatingSystem
SELECT Manufacturer, Model, SystemType, DomainRole, Domain, UserName FROM Win32_ComputerSystem
后門會讀取注冊表相關鍵值信息,收集管理員權限提升信息及代理信息。
1、查詢SOFTWAREMicrosoftWindowsCurrentVersionPoliciesSystem路徑中的ConsentPromptBehaviorAdmin及PromptOnSecureDesktop表項值;
2、查詢SoftwareMicrosoftWindowsCurrentVersionInternet Settings路徑中的ProxyEnable、Proxy:(NO)、Proxy及ProxyServer表項值。
FELIXROOT后門的功能如表2所示。每條命令都會在獨立的線程中執行。命令
描述
0x31
通過WMI及注冊表收集系統指紋信息
0x32
釋放文件并加以執行
0x33
遠程Shell
0x34
終止與C2服務器的連接
0x35
下載并運行批處理腳本
0x36
下載文件到本地
0x37
上傳文件
表2. FELIXROOT后門命令
使用圖6及圖7的解密方法后,我們從內存中提取出了每條命令執行后的日志信息,如圖9所示。

圖9. 命令執行后的日志
網絡通信
FELIXROOT會通過HTTP與HTTPS POST協議與C2服務器通信。通過網絡發送的數據經過加密處理,采用自定義的數據結構。所有的數據都經過AES加密,轉換為Base64數據然后再發送給C2服務器(如圖10所示)。

圖10. 發送給C2服務器的POST請求
Request及Response數據包頭部中的其他所有字段(如User-Agents、Content-Type及Accept-Encoding)都經過XOR加密處理,可以在惡意軟件中找到。惡意軟件調用Windows API獲取計算機名、用戶名、卷序列號、Windows版本、處理器架構以及其他兩個值(分別為“1.3”以及“KdfrJKN”)。“KdfrJKN”這個值可能是個標識符,可以在文件內部的JSON對象中找到(如圖11所示)。

圖11. 每次通信中所使用的主機信息
FELIXROOT后門在C2通信中用到了3個參數,每個參數都可以提供關于目標主機的一些信息(如表3所示)。
參數
描述
‘u=’
該參數包含目標主機信息,具體格式為:, , ,
, , ,
‘&h=’
該參數包含執行的命令及具體結果
‘&p=’
該參數包含與C2服務器有關的數據信息
表3. FELIXROOT后門參數
加密算法
發送給C2服務器的所有數據都經過AES加密處理,通過IbindCtx接口使用HTTP或者HTTPS協議進行傳輸。每次通信所使用的AES密鑰都不相同,該密鑰經過兩個RSA公鑰的加密處理。FELIXROOT所使用的RSA密鑰如圖12及圖13所示,AES加密參數如圖14所示。

圖12. RSA公鑰1

圖13. RSA公鑰2

圖14. AES加密參數
加密處理后,發往C2的密文還會經過Base64編碼。發送給服務器的數據結構體如圖15所示,C2通信中對應的數據結構如圖16所示。

圖15. 用來將數據發送至服務器的結構體

圖16. 發往C2服務器數據結構樣例
后門使用CryptBinaryToStringA函數將該結構體數據轉換為Base64編碼。
FELIXROOT后門包含若干條命令,用于不同的任務。每項任務執行完畢后,惡意軟件會在執行下一項任務前睡眠1分鐘。一旦所有任務執行完畢,惡意軟件會跳出循環,刪除數據緩沖區,然后清除目標主機上的所有痕跡,包含如下清痕操作:
1、從啟動目錄中刪除LNK文件;
2、刪除HKCUSoftwareClassesApplicationsrundll32.exeshellopen注冊表項;
3、從系統中刪除釋放器組件。
三、總結
CVE-2017-0199以及CVE-2017-11882是目前我們最常見到的兩個漏洞。攻擊者通常會越來越廣泛地利用這些漏洞發動攻擊,直至漏洞再無可用之處為止,因此各個單位必須確保他們處于足夠的防護中。在本文成文時,FireEye Multi Vector Execution(MVX)引擎已經能正確識別并阻止此類安全威脅。我們建議所有行業保持警惕,因為此次攻擊活動的肇事者很有可能會擴大他們的攻擊范圍。
四、附件
IOC
MD5哈希值
樣本
11227ECA89CC053FB189FAC3EBF27497
Seminar.rtf
4DE5ADB865B5198B4F2593AD436FCEFF
Seminar.rtf
78734CD268E5C9AB4184E1BBE21A6EB9
Zam.doc
92F63B1227A6B37335495F9BCB939EA2
FELIXROOT Dropper
DE10A32129650849CEAF4009E660F72F
FELIXROOT Backdoor
表4. FELIXROOT IOC
網絡IOC
217.12.104.100/news
217.12.204.100:443/news
193.23.181.151/Seminar.rtf
Accept-Encoding: gzip, deflate
content-Type: application/x-www-form-urlencoded
Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E; InfoPath.2)
Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E; InfoPath.2)
Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E; InfoPath.2)
Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E; InfoPath.2)
配置文件
版本1:
{"1" : "https://88.198.13.116:8443/xmlservice","2" : "30","4" : "GufseGHbc","6" : "3", "7" : “http://88.198.13.116:8080/xmlservice"}
版本2:
{"1" : "https://217.12.204.100/news/","2" : "30","4" : "KdfrJKN","6" : "3", "7" : "http://217.12.204.100/news/"}
FireEye檢測結果
MD5
產品
特征
操作
11227ECA89CC053FB189FAC3EBF27497
NX/EX/AX
Malware.Binary.rtf
阻止
4DE5ADB865B5198B4F2593AD436FCEFF
NX/EX/AX
Malware.Binary.rtf
阻止
78734CD268E5C9AB4184E1BBE21A6EB9
NX/EX/AX
Malware.Binary
阻止
92F63B1227A6B37335495F9BCB939EA2
NX/EX/AX
FE_Dropper_Win32_FELIXROOT_1
阻止
DE10A32129650849CEAF4009E660F72F
NX/EX/AX
FE_Backdoor_Win32_FELIXROOT_2
組織
11227ECA89CC053FB189FAC3EBF27497
HX
IOC
警告
4DE5ADB865B5198B4F2593AD436FCEFF
HX
IOC
警告
表5. FireEye檢測結果
|