
1. 簡介
Katz Stealer 是一種以竊取認證為目標的惡意軟體即服務 (MaaS),已成為針對基於 Chromium 和 Gecko 的瀏覽器、加密貨幣錢包及通訊平台的複雜威脅。其模組化設計、規避技術以及繞過現代瀏覽器防護(如 Google Chrome 的 Application-Bound Encryption, ABE)的能力,使其成為網路安全防護的重大挑戰。本報告將剖析 Katz Stealer 的感染鏈、規避機制、payload 傳遞及資料外洩技術,並以近期分析的技術證據為基礎。

2. 感染鏈分析
Katz Stealer 採用多階段感染鏈,旨在規避偵測並傳遞最終 payload:
2.1 初始傳遞
攻擊者透過釣魚郵件、惡意廣告或偽裝的軟體下載散布惡意軟體。初始 payload 通常隱藏在 GZIP 壓縮檔案 中,包含混淆的 JavaScript。執行時,此腳本會觸發 PowerShell 指令以下載下一階段的 Base64 編碼 PowerShell 腳本。
2.2 第二階段 Payload 獲取
PowerShell 腳本從像是
archive.org
的域名中獲取看似無害的圖片檔案,該檔案在
<<base64_start>>
與
<<base64_end>>
標記間隱藏 Base64 編碼的程式碼。此 payload 透過
.NET Reflection
在記憶體中解碼並執行,避免寫入磁碟。
2.3 最終 Payload 注入
解碼後的 .NET 二進位檔案從 Cloudflare 託管的域名(例如
pub-ce02802067934e0eb072f69bf6427bf6.r2.dev
)獲取最終 payload。在執行前,它會進行反分析檢查(例如虛擬機偵測),並使用
Process Hollowing
將 payload 注入合法程序,如
MSBuild.exe
。為了提升權限,它濫用 Windows 工具
cmstp.exe
來繞過使用者帳戶控制 (UAC)。
3. 規避技術
Katz Stealer 採用多層規避技術以避免被偵測:
3.1 地理圍欄(Geofencing)
若受害者的系統符合 hardcoded 的 CIS 國家代碼 ,惡意軟體會終止執行。它會檢查:
-
地區設定與鍵盤設定
透過
GetLocaleInfoA
和GetKeyboardLayout
。 -
系統語言
使用
GetSystemDefaultLangID
。
3.2 虛擬機與沙箱偵測
-
登錄檔分析
:查詢
HKLM\HARDWARE\DESCRIPTION\System\BIOS
以尋找與虛擬化相關的字串。 - 螢幕解析度 :將解析度 ≤1024×768 的系統標記為潛在沙箱。
-
執行時期檢查
:使用
GetTickCount64()
識別執行時期少於 10 分鐘的系統。
3.3 反鑑識措施
- 記憶體清除 :清除記憶體中的惡意活動痕跡。
- 合法程序濫用 :劫持受信任的基於 Electron 的應用程式(例如 Discord、Telegram)以融入正常流量。
4. Payload 分析與注入技術
4.1 Process Hollowing 與 DLL 注入
最終 payload 與 C2 伺服器 (
185.107.74.40
)建立 TCP 連線,並將惡意 DLL(
received_dll.dll
)注入執行於
headless mode
的基於 Chromium 的瀏覽器(Chrome、Edge、Brave)。該 DLL 利用
CreateRemoteThread
API 在瀏覽器程序中執行程式碼。
4.2 繞過 Chrome 的 App-Bound Encryption
Katz Stealer 透過以下方式繞過 Chrome 的 ABE:
-
提取
Local State
檔案 :位於瀏覽器使用者資料目錄中,該檔案包含app_bound_encrypted_key
。 -
COM 介面濫用
:以單執行緒單元 (STA) 模式初始化 COM,創建
IElevator
物件,授予 SYSTEM 級別的解密金鑰存取權。 -
金鑰儲存
:將解密的金鑰以純文字檔案形式(例如
decrypted_chrome_key.txt
)儲存在受害者的AppData
資料夾中。
此技術類似於開源工具
ChromeKatz
,該工具使用記憶體刮取技術從 Chrome 的
CookieMonster
類別中提取未加密的 cookies。
5. 資料外洩機制
5.1 瀏覽器資料收集
-
Chromium 瀏覽器
:針對
Login Data
、Cookies
和Web Data
SQLite 資料庫。 -
Firefox/Gecko 瀏覽器
:收集
cookies.sqlite
、logins.json
、key4.db
和formhistory.sqlite
。
5.2 加密貨幣錢包針對性攻擊
Katz Stealer 使用關鍵字匹配掃描錢包檔案(例如 Exodus、Electrum),並複製以下目錄:
-
%AppData%\Roaming\Exodus\exodus.wallet
-
%AppData%\Local\MetaMask\Local Storage
5.3 通訊平台劫持
-
Discord
:修改
app.asar
套件中的index.js
,注入惡意的 HTTPS 請求至twist2katz.com
,在 Discord 程序中啟用遠端程式碼執行 (RCE)。 - Telegram/Signal :提取 session tokens 和設定檔案。
6. 偵測與緩解策略
6.1 行為特徵
-
Chrome ABE 繞過偵測
:監控啟動帶有
--remote-debugging-port
和--headless
參數的chrome.exe
程序。 -
可疑 DLL 載入
:偵測
AppData\LocalLow
中的異常 DLL(例如nss3.dll
、sqlite3.dll
)。
6.2 YARA 與 Sigma 規則
Nextron Systems 提供 YARA 規則以偵測 Katz Stealer 的 JavaScript 混淆和 payload 提取模式,而 Sigma 規則則針對透過
cmstp.exe
進行的 UAC 繞過。
6.3 最佳實務 (Best Practices)
- 多因素認證 (MFA) :降低認證重複使用(credential reuse)的風險。
- 網路分段 :將加密貨幣錢包與通用系統隔離。
7. 結論
Katz Stealer 展示了 MaaS 威脅日益增長的複雜性,結合規避策略、程序注入和適應性技術來繞過現代防護措施。其模組化設計與暗網上的可得性表明網路犯罪團體即將廣泛採用。防禦者必須優先進行行為監控、更新偵測規則並實施嚴格的存取控制以應對此威脅。
參考資料
- Katz Stealer Threat Analysis - Nextron Systems
- Katz Stealer Malware Hits 78+ Chromium and Gecko-Based Browsers - GBHackers
- Katz and Mouse Game: MaaS Infostealers Adapt to Patched Chrome Defenses - Elastic
- Info Stealers - Red Canary
- The Rise of the Zero-Knowledge Threat Actor - Cato Networks
- Katz Stealer Malware: How to Protect Yourself - LinkedIn