Google 在6月發表 64 位元 Chrome 瀏覽器時提到,升級至 64 位元版本的主要動機就是絕大多數的 Windows 使用者現在都已使用 64 位元作業系統。儘管 64 位元 Windows 作業系統的普及率比 Microsoft 原先預期的稍慢一點,但卻一直有穩定成長,而且軟體開發廠商的支援度也有顯著提升。但不幸的是,駭客也同樣跟進,推出 64 位元惡意程式。
趨勢科技已記錄了多個擁有 64 位元版本的惡意程式,包括 64 位元版本的 ZeuS 在內,而同樣的情況也出現在鎖定APT 攻擊/目標攻擊上。事實上,根據我們的「2013 年下半年鎖定APT 攻擊/目標攻擊趨勢」報告指出,在所有鎖定目標相關惡意程式當中,有 10% 僅能在 64 位元平台執行。
KIVARS:早期版本
趨勢科技所發現的64 位元惡意程式其中之一就是 KIVARS。根據我們的發現,該惡意程式的早期版本僅會影響 32 位元系統,並且是透過 TROJ_FAKEWORD.A (SHA1 218be0da023e7798d323e19e950174f53860da15) 這個惡意程式來植入系統。不過請注意,所有版本的 KIVAR 都會利用這個下載程式來安裝載入程式和後門程式。
當 TROJ_FAKEWORD.A 執行時,它會在系統植入 2 個執行檔以及一個密碼保護的 MS Word 文件,此文件的作用只是當成誘餌:
- %windows system%\iprips.dll – TROJ_KIVARSLDR
- %windows system%\winbs2.dll – BKDR_KIVARS
- C:\Documents and Settings\Administrator\Local Settings\Temp\NO9907HFEXE.doc – 誘餌文件
圖 1:TROJ_KIVARSLDR 會安裝成名為「iprip」的服務。
TROJ_KIVARSLDR 會將 BKDR_KIVARS 載入記憶體中執行。BKDR_KIVARS 具備下列能力:
- 下載\上傳檔案
- 操控\執行檔案
- 列出所有磁碟機
- 解除安裝惡意程式服務
- 擷取螢幕畫面
- 啟動\關閉鍵盤側錄程式
- 操控前景視窗 (顯示、隱藏)
- 觸發滑鼠左鍵、右鍵點選以及點兩下
- 觸發鍵盤輸入
TROJ_FAKEWORD.A 會利用「強制由左至右書寫」(RTLO) 技巧並結合 MS Word 文件圖示來讓使用者誤以為它只是個一般的文件檔案,這兩項技巧之前就曾經出現在 PLEAD。
BKDR_KIVARS 使用了一個小幅修改的 RC4 來將其字串和組態設定加密。它增加了一個位元組的參數,並且會檢查這個位元組的數值是否等於或大於 80h (十六進位)。若條件滿足,就會將該位元組加上 RC4 經過 XOR 運算後的輸出值。此外,它也利用這個功能來解開 10h (十六進位) 位元組金鑰。
圖 2:惡意程式碼字串解密過程。
植入系統的檔案一開始會使用一個經過 XOR 運算的「55h」(十六進位) 金鑰加密。鍵盤側錄記錄檔也是同樣作法,該檔的名稱為:klog.dat。
圖 3:解密後的 klog.dat 檔案。
BKDR_KIVARS 最初傳送的封包是使用 RC4 來加密。封包內含下列資訊:
- 受害者的 IP 位址
- 可能的行動 ID
- 作業系統版本
- 主機名稱
- 使用者名稱
- KIVARS 版本
- 最近開啟的檔案\桌面資料夾
- 鍵盤配置
圖 4:BKDR_KIVARS 所傳送的封包解密之後的樣子。
64 位元支援
較新的 KIVARS 版本 (可支援 32 位元和 64 位元) 安裝在受害者電腦之後的樣子稍有不同。例如,載入程式和植入的後門程式採用隨機的檔案名稱。
- %Windows%system32%\{隨機}.dll
- %Windows%system32%\{隨機}.{tlb|dat} – 副檔名為 tlb 或 dat
此版本的載入程式依然是安裝成服務,並使用下列其中一個服務名稱:
- Iprip
- Irmon
- ias
此 BKDR_KIVARS 程式的稍早版本只會將後門程式的「MZ」位元組加密。但到了新的版本,後門程式現在則使用修改過的 RC4 來加密。
https://blog.trendmicro.com/trendlabs-security-intelligence/files/2014/07/kivars5.png
圖 5:這段程式碼顯示 64 位元載入程式會使用修改過的 RC4 來解開金鑰。與此惡意程式早期版本的程序相同。
幕後操縱 (C&C) 通訊
新版的惡意程式會發送一個隨機產生的封包。然後再根據此封包產生一個金鑰來檢查幕後操縱伺服器的回覆。當回覆驗證通過之後,就會發送同樣經過 RC4 加密的資訊,但不同的是,前 4 個位元代表的是資訊的大小。
圖 6:新版本的封包解開之後的樣子。
以下是 KIVARS 的一些相關資訊:
偵測名稱 |
SHA1 |
幕後操縱伺服器 |
IP |
BKDR64_KIVARS.ZTAL-BA |
f3703e4b11b1389fbda1fbb3ba7ff3124f2b5406 |
herace.https443.org |
210.61.134.56 |
BKDR_KIVARS.ZTAL-BA |
f797243bd709d01513897f26ce1f5517ab005194 |
herace.https443.org |
210.61.134.56 |
TROJ_FAKEWORD.A |
218be0da023e7798d323e19e950174f53860da15 |
||
TROJ_KIVARSENC.ZTAL-A |
709312b048b3462883b0bbebb820ef1bc317b311 |
gsndomain.ddns.us |
211.21.209.76 |
TROJ_KIVARSLDR.ZTAL-A |
6df5adeaea3f16c9c64be5da727472339fa905cb |
||
BKDR_KIVARS.ZTAL-A |
9991955db2623f7b34477ef9e116d18d6a89bc3e |
||
TROJ_KIVARSDRP.ZTAL-A |
b9543a848d3dfbc04adf7939ebd9cfd758a24e88 |
||
TROJ_KIVARSENC.ZTAL-A |
8112760bf2191d25cbb540a5e56be4b3eb5902fe |
||
TROJ_KIVARSLDR.ZTAL-A |
17ab432d076cc6cb41fcff814b86baf16703e27c |
||
BKDR_KIVARS.ZTAL-A |
63d4447168f3d629ec867e83f4ad2e8f107bd3b2 |
zyxel.blogsite.org |
|
TROJ_KIVARSDRP.ZTAL-A |
c738d64fdc6fcf65410ab989f19a2c12f5ef22ab |
||
TROJ_KIVARS.A |
d35c2d5f9c9067702348a220f79904246fa4024f |
gsndomain.ddns.us |
211.21.209.76 |
與 POISON 的關聯
我們發現 KIVARS 的幕後歹徒也會在攻擊行動中使用 POISON 這個遠端存取工具 (RAT)。以下是 KIVARS 所用到的某個幕後操縱伺服器相關的雜湊值:
偵測名稱 |
SHA1 |
幕後操縱伺服器 |
IP |
BKDR_POISON.VTG |
6b6ef37904e1a40e33f3fc85da9ba142863867a2 |
adobeupdate.ServeUsers.com |
210.61.134.56 |
TROJ_POISON.BHV |
defeb241b5504c56603c0fd604aea6a79975b31d |
butterfly.xxuz.com |
210.61.134.56 |
BKDR_POISON.TUET |
ad935580a5d93314f5d22f2089b8e6efeca06e18 |
truecoco.REBATESRULE.NET |
210.61.134.56 |
◎原文來源:KIVARS With Venom: Targeted Attacks Upgrade with 64-bit “Support” 作者:Kervin Alintanahin (威脅分析師)