.NET下載器木馬利用系統編譯器動態編譯躲避主動防御 查殺建議
背景:.NET惡意代碼崛起
- XP 時代 .NET 運行時非預裝,病毒作者鮮用
- Win7 普及內置 .NET Framework,限制消失
- .NET 中間語言(IL)非 x86 機器碼,傳統啟發式/虛擬機引擎難以通用檢測
樣本技術剖析: Trojan-Downloader .NET 動態編譯變種
- 原始 .NET IL 經加密保護,運行時
Assembly.Load 載入內存執行
- 釋放 VB.NET 源碼文件 → 調用系統自帶
vbc.exe (Framework\v2.0.50727) 編譯為 WLIDSCV.exe 並設置自啟動
- 核心繞過邏輯: 因在用戶機器本地編譯,部分主動防御判定為「開發測試行為」而放行
- 每次編譯產生差異化可執行文件,進一步對抗雲端特征查殺
- 守護進程邏輯:每3秒檢查母體是否運行,不在則拉起
第二階段載荷投遞
- 下載新 .NET 惡意程序 (同樣加密)
- 釋放 C# 源碼 → 調用
csc.exe 編譯為 DLL
- 加載 DLL,調用其將解密出的 非 .NET 原生惡意代碼 注入
svchost.exe (經典 NtUnmapViewOfSection 進程空心化)
- 為何不直接調用?繞過啟發式引擎對 .NET 程序引用 Win32 API 的靜態識別
趨勢研判與防護
- .NET 跨平台、開發門檻低,隨 WP7/WinRT/.NET Core/MAUI 普及,惡意代碼將持續增長
- 防護建議:
— 更新病毒庫,啟用行為/雲引擎
— 不輕易運行來源不明 .NET 程序 (含安裝包)
— 企業部署應用控制:簽名信任列表、禁止非簽名 .NET 組件執行
— 監控 vbc.exe/csc.exe/VSBuild 等編譯器異常被非開發進程調用
copyright ©
萬盛學電腦網 all rights reserved