再談銀狐:百變木馬陰魂不散
銀狐概況
銀狐木馬是一種針對企事業單位管理人員、財務人員、銷售人員及電商賣家進行釣魚攻擊的惡意軟件。該家族木馬主要通過釣魚網頁、即時通訊軟件、下載站偽裝成常用軟件供用戶下載等方式進行傳播。它通常利用具有誘導性的文件名,如“成績單”、“轉賬通知單”等,通過QQ、微信等即時通信軟件發送釣魚文件或網站鏈接,誘導受害者點擊。
此外,銀狐木馬擅長使用白利用、內存loader等技術手段,呈現多階段的投遞方式,并使用云筆記存儲其payload數據。它能夠迅速傳播和潛伏在系統中,具備高度隱蔽性和復雜的功能。
傳播方式
搜索引擎SEO推廣
一直以來,銀狐類釣魚木馬慣用的傳播手段便是利用搜索引擎的SEO推廣機制,將流量吸引至自行構建的虛假站點,再通過虛假站點的誤導性內容進行釣魚傳播。
一旦有用戶陷入誤導,便會跟隨虛假指引下載木馬安裝包,主動安裝木馬。這類投放方式面向的是普通大眾,而虛假站點通常也是直接仿冒各類知名大站,普通用戶往往難辨真偽。
圖1. 某搜索引擎中搜索到的虛假釣魚站點
圖2. 虛假釣魚站點頁面?
工具軟件仿冒傳播
除了通常的SEO推廣外,銀狐還會仿冒成各類熱門的工具軟件,目前已知被仿冒過的工具軟件主要有:Telegram、v2ray、XShell、MobaXterm等。
例如搜索“telegram中文版下載”,便能夠找到大量釣魚站點,或是找到給釣魚站點引流的帖子、教程等。這是一類長期活躍的釣魚群,摻雜有多個木馬家族。此類傳播方式主要面向的是IT管理人員、外貿從業人員或涉及灰黑產的人士等,一般隱秘程度較高。
圖3. 偽裝為SecureCRT的銀狐木馬下載頁面?
釣魚頁面定向投放
在釣魚頁面傳播,攻擊者則更傾向于針對企業職員進行定向投遞。稅務稽查類釣魚頁面通常是此類釣魚攻擊實施中的核心一環。攻擊者一般通過聊天軟件、郵件、短信等方式發送欺詐鏈接給用戶,誘騙用戶打開進而下載木馬。比如:
圖4. 帶有木馬安裝包的釣魚頁面?
網盤/OSS掛載木馬包
這是目前主流的木馬安裝包的掛載形式。由于安全軟件對木馬的窮追猛打,使用自建站點傳播木馬容易被整站封禁,成本較高,導致很多銀狐類木馬在對抗過程中改用了網盤或云服務商提供的Object Storage Service (OSS)來掛載木馬。這樣也讓防護人員很難根據站點IP或域名進行封禁或者溯源。而在木馬下載鏈條中,只能對單個下載頁面進行相對精準的定位和封禁。
圖5. 360攔截掛載于網盤中的惡意木馬包?
微信傳播
需要特別注意的是,微信作為目前國內最主流的通訊方式也必然成為了攻擊者實施其釣魚攻擊而必然選擇的傳播渠道。而利用微信的傳播手段根據賬號類型通常又會分為兩類:一類是仿冒其他人的微信號,加群或者加個人發起釣魚攻擊。另一類則是利用已經中招電腦上登錄著的微信,控制其賬號向好友和群內發起釣魚攻擊。
而常見的利用微信的傳播方法有如下幾種:
發送虛假釣魚圖片
攻擊者會在圖片中置入下載鏈接或二維碼,之后指引用戶使用電腦打開釣魚站點進一步安裝木馬的。這種方法雖然不容易直接被安全軟件攔截,但是需要用戶手動操作。
圖6. 攻擊者通過微信發送帶有惡意二維碼的釣魚圖片
直接在群內發送釣魚文件
這類方法是最直接、最常見的一類釣魚投遞方式,但缺點也較為明顯——就是容易被封禁,也容易被安全防護軟件攔截。
圖7. 直接在微信群中發送釣魚文件?
使用Excel、PDF等方式釣魚
因為直接發送釣魚木馬容易被攔截,攻擊者便又想出了把木馬藏在文檔中進行發送的方法。
圖8. 潛藏在Excel文檔中的釣魚鏈接?
利用微信收藏筆記方法進行傳播
此類手段同樣也是為了避免直接傳文件容易被封禁和被安全軟件攔截。攻擊者又想出了利用微信筆記的方式繞過封禁進行傳播的方法。
圖9. 利用微信筆記傳播釣魚文件
以上是銀狐的一些主流傳播方式。可以看出,銀狐的傳播方式也是在和安全產品的對抗中不斷演變而來,而這個腳步顯然并不會就此停止,而是會繼續演化。
攻擊對抗
在完成釣魚的傳播后,木馬還要對抗安全軟件,實現長期駐留控制用戶電腦的目的。以當前較為流行的銀狐家族木馬為例,主要有幾種對抗方式。
利用RPC管道遠程創建計劃任務與服務
服務和計劃任務是木馬攻擊中非常常見的駐留手段。木馬可以通過命令或者API調用的方式實現服務或計劃任務的創建,例如利用“SC Create”命令或者調用CreateService API創建服務。由于這類命令或者API被大量木馬使用,因此大部分安全軟件也對這類敏感調用進行攔截。銀狐木馬為了繞過安全軟件的攔截,另辟蹊徑使用RPC管道方式創建計劃任務與服務。
RPC管道方式創建計劃任務是MS-TSCH協議注冊計劃任務的一種改進方法。傳統方式下,ITaskSchedulerService接口中導出的方法SchRpcRegisterTask可被用于創建計劃任務,調用者只需要指定計劃任務的配置XML并調用該方法即可創建計劃任務。因此木馬常使用SchRpcRegisterTask方法代替schtasks命令或ITaskService接口創建計劃任務,來繞過安全軟件檢測。
圖10. SchRpcRegisterTask方法參數介紹?
????? 而銀狐木馬對該方法進行改進,改進主要分兩部分:
構造RPC數據包
調用NdrClientCall3函數向COM Server發送數據包模擬SchRpcRegisterTask方法調用。
圖11. 銀狐調用NdrClientCall3函數模擬SchRpcRegisterTask方法調用?
構造RpcStringBindingComposeW函數調用
在RpcStringBindingComposeW函數調用中指定RPC端點為“\\pipe\\atsvc”,這使得RPC通信通過管道方式實現而非常規方式。
圖12. 銀狐RPC調用初始化部分代碼?
????? 這兩個改進有效規避了對SchRpcRegisterTask方法的調用,并且避免了出現相同的路徑參數,從而規避常規殺軟、EDR產品的監測。
????? RPC管道方式創建服務的攻擊手法最早公開于2022年,該方法通過簡單調用CreateFile函數和WriteFile函數模擬通過管道進行RPC通信,向服務管理相關的COM Server發送特定的消息實現服務的創建、執行、刪除等操作。該方法規避了對敏感API的調用,僅使用簡單的CreateFile函數和WriteFile函數就完成命令執行。
圖13. 2022年公開的CreateSvcRPC項目測試示例?
進入系統后的“大展拳腳”
銀狐木馬主要利用上述手段實現命令執行目的后,便會使出渾身解數在系統中進行各類惡意操作。
SecLogon偽造父進程
SecLogon濫用方法最早公開于2021年。起初,CreateProcessWithTokenW和CreateProcessWithLogonW函數被用于以輔助登錄的方式啟動進程,也叫SecLogon,最常用的地方就是Windows的UAC彈窗。然而,這兩個函數本質是以RPC調用的方式實現SecLogon的,需要調用者將自身的進程信息告訴COM Server,COM Server才能知道是哪個進程發起的SecLogon。
因此這兩個函數會調用GetCurrentProcessID函數獲取自身PID并發送給COM Server,COM Server會將其作為新創建進程的父進程PID。而GetCurrentProcessID函數是通過TEB結構體獲取當前進程PID的,這就存在被利用的風險——攻擊者可以修改當前進程TEB,從而讓GetCurrentProcessID函數獲取錯誤的PID并發送給COM Server。
圖14. SecLogon濫用方法介紹?
銀狐木馬正是利用這一方法,調用CreateProcessWithTokenW 和CreateProcessWithLogonW函數創建進程并給COM Server發送了錯誤的PID,從而導致新創建的進程其父進程PID是錯誤的。“銀狐”木馬通過該方式偽造父進程,構造了一個錯誤的進程鏈迷惑安全軟件,從而繞過安全軟件的攔截。
發送消息嘗試結束安全軟件
銀狐木馬在進入機器后,會遍歷窗口查找安全軟件的窗口,并嘗試對窗口發送WM_CLOSE和WM_QUIT消息關閉安全軟件。
圖15. 銀狐嘗試發送消息關閉安全軟件?
模擬點擊安全軟件攔截彈窗
銀狐木馬在運行生命周期中會創建一個輔助線程,該線程的功能就是循環查找安全軟件的攔截彈窗,一旦出現安全軟件攔截彈窗,立即通過mouse_event、InjectMouseInput、NtUserInjectKeyboard等函數,模擬用戶操作來點擊“允許”按鈕,從而規避攔截。
圖16. 模擬鼠標點擊來關閉安全軟件攔截彈窗?
PoolParty注入技術
PoolParty注入技術最早公開于2023年。該技術包含8種不同的注入變種,其主要原理是通過將惡意工作項插入目標進程的線程池中,從而使目標進程執行插入的工作項,實現另類的代碼注入。該方法能避免對CreateRemoteThread等敏感函數的調用,從而規避安全軟件的攔截。
圖17. PoolParty注入技術圖解?
銀狐木馬利用PoolParty注入技術代替常規的代碼注入方法,將代碼注入到系統進程中執行,規避安全軟件攔截。
圖18. 銀狐利用PoolParty注入技術部分代碼?
此外,木馬還會使用其它攻擊方式。這其中通常包括利用一些安全軟件、系統維護工具的驅動來關閉安全軟件。利用軟件兼容性策略,誘騙安全軟件自行關閉等方法。
可以說銀狐是一個武力值頗高的狡猾木馬。使用360終端安全產品,均能夠有效應對這些攻擊技術。
系統駐留
一般病毒木馬,即使有電腦中招,用戶通過殺毒清理或殺軟的主動掃描、推送掃描機制,也能夠很快對其滅活。所以在完成殺軟的防御對抗后,木馬還要想方設法地延長其存活時間。
常見的木馬駐留方式,主要是Run自啟動項、服務項目、計劃任務等。這些方式,在銀狐木馬中也都有體現,但銀狐木馬對其進行了一些“創新”。
利用系統程序,加參數腳本實現啟動。
利用系統中的一些程序,實現特定功能,這在木馬攻擊中非常普遍,銀狐木馬會選擇一些較少被使用到的程序實現該方法。比如,木馬使用FTP靜默執行特定腳本的方式,實現啟動。系統的FTP程序本是用來訪問FTP站點的,但通過特定的命令參數,可以使用程序的啟動,連環利用類似的策略,攻擊者就可以實現在沒有常規木馬文件落地的情況下實現木馬的駐留。
圖19. 木馬利用FTP實現系統駐留?
利用企業管控軟件、安全軟件實現長期駐留
企業管理管控軟件,本身是服務于企業對設備的管理的,具有一定的監控和控制功能。這些軟件都是屬于正規軟件,一般不會被安全軟件檢出和清理。同時這類軟件本身具有防卸載、防關閉的能力,普通用戶如果被安裝,也很難卸載清理。銀狐木馬就是看中了這一點,在木馬駐留后不久,就會迅速向用戶電腦安裝這類軟件,實現長期控制。
在我們協助用戶處理木馬時,已經多次出現同時安裝多款企業管控軟件的情況:
圖20. 木馬利用企業管控軟件實現系統駐留?
360終端安全針對系統駐留的檢出能力
目前360終端安全產品,通過全網大數據能力,已經可以支持陽途、固信、IPGuard、濟南安在等多款企業管理軟件的自動判別。如果發現是被銀狐安裝管控的,可實現一鍵卸載,一鍵滅活,攻擊者裝再多后門也沒用。
圖21. 360終端安全能夠有效檢出木馬的系統駐留?
其它的駐留方式,還包括跳板程序、利用正規軟件功能等等。但不論木馬再狡猾,360終端安全產品均會第一時間跟進處置。
盈利手段
目前,銀狐類木馬的主要危害還是集中于“信息竊取”,以及因此產生的電信詐騙。攻擊者利用其掌控的電腦,收集用戶的個人信息以及企業信息,伺機發起詐騙。
因此,銀狐木馬特別偏愛企業職工——尤其是企業財務人員。其竊取的主要信息包括:微信密鑰與聊天記錄、企業財稅文件、企業工資單等企業財務相關內容。另外木馬還會實時檢測用戶對電腦的操作過程,掌握用戶的身份與操作習慣等。
圖22. 受害者自述被木馬控制后的真實情況?
但除了用于詐騙外,竊取虛擬貨幣,以及利用被控制的“肉雞”實施挖礦,進行DDoS攻擊也在部分銀狐木馬的“菜單”中。
后臺木馬
銀狐使用的木馬眾多,免殺者、木馬作者也“不計其數”。其中使用較為廣泛的一款,是一個被稱為WinOs的Gh0st改版遠控。我們近期捕獲的一個版本是銀狐WinOs 4.0。
銀狐WinOs遠控具備完整的功能體系和控制架構,能夠管理數千個終端節點的同步連接。其架構主要由核心的上線模塊和豐富的功能模塊構成:上線模塊負責維持通信鏈路,接收指令并調度各項功能;功能模塊則提供多樣化的管理能力,涵蓋系統、網絡、安全等多個維度的操控需求。其功能簡圖如下:
圖23. 銀狐WinOs 4.0功能簡圖
銀狐木馬的功能也是模塊化構造的,其主要模塊概覽如下:
圖24. 銀狐WinOs 4.0模塊概覽圖?
為了方便攻擊者統一管控被感染的受害客戶端,木馬還“貼心”的提供了主控程序:
圖25. 銀狐木馬主控程序?
作為一款功能強大且復雜的綜合型木馬,銀狐還提供了豐富的插件庫:
圖26. 銀狐木馬主插件功能模塊?
安全提示
針對此類攻擊,安裝有360終端安全客戶端的用戶無需過度擔心,只需正常開啟360客戶端并確保其防護功能生效,其余的只要交給360即可。
圖27. 360客戶端有效攔截銀狐木馬?
對于各類釣魚攻擊,我們向廣大用戶提出以下幾點安全建議:
1. 安裝安全軟件并確保其防護功能已被完整開啟,保證安全軟件能有效保護設備免受惡意攻擊;
2. 相信安全軟件的判斷,切勿輕易將報毒程序添加至信任區或退出安全軟件;
3. 在確定安全性之前,切勿打開各類即時通信軟件或郵件中附帶的可疑附件或鏈接地址。
而針對銀狐木馬本輪攻擊的特點,我們進一步呼吁各企事業單位或政府機關:
1. 人員角度:重視對財稅人員的信息安全培訓,加強財稅人員的信息安全意識和識別能力;
2. 技術層面:通過各類軟/硬件防護體系的構建,對財稅設備與各類服務器設備、一般辦公設備、其他類型重要設備均進行安全隔離和專項防護。最大限度的保障各類設備組群的相對獨立性及安全性;
制度層面:完善財稅等重要崗位的責任制度,將信息安全的相關能力和事故影響納入到考核指標及問責體系當中。