這篇文章要分享的是一種近期非常危險的攻擊手法,名為 ACR Stealer(也曾被稱為 Amatera Stealer)。這類惡意軟體被歸類為 Infostealer(資訊竊取程式),其目標非常明確:盜取瀏覽器儲存的密碼、登入 session token(會話令牌)、PDF 文件以及 Microsoft 365 與 OneDrive 中的敏感檔案。
對於工程師或系統管理員來說,最值得關注的是,這次攻擊完全不需要利用任何系統漏洞(CVE),而是利用一種稱為 ClickFix 的社交工程技巧,直接誘導使用者「幫攻擊者執行指令」。
什麼是 ClickFix 陷阱
ClickFix 是一種新型的社交工程手法。攻擊者會透過惡意廣告(Malvertising)或操縱搜尋引擎結果(SEO),將使用者引導至偽裝成知名工具的頁面(例如偽造的 Claude AI 助理頁面)。
當使用者進入頁面後,會看到一個錯誤提示,告訴使用者系統發生問題,並提供一個「修復方案」。這個方案通常要求使用者執行以下操作:按下 Win+R 開啟「執行」視窗,然後將頁面上提供的一段指令貼上並按下 Enter。
一旦使用者照做,就等於主動幫惡意程式打開了大門,繞過了絕大多數的防禦機制。
ACR Stealer 的兩條攻擊路徑
根據微軟與 Red Canary 的分析,ACR Stealer 主要透過兩種不同的執行鏈路來達成目的,一種追求極致的隱蔽性,另一種則較為傳統。
第一種是無檔案(Fileless)路徑,主要在記憶體中運行。 使用者貼上的指令會啟動 mshta.exe(Windows HTML 應用程式主機),從遠端下載 HTA 內容。接著透過 VBScript 啟動 PowerShell,並從影像託管網站下載一張 JPEG 圖片。 這裡使用了 Steganography(隱寫術),惡意程式碼被隱藏在圖片的像素之中。程式會將像素中的數據提取、解密並直接在記憶體中執行,不留下任何實體檔案。
第二種是留有痕跡的磁碟路徑。 指令會透過 WebDAV(一種基於 HTTP 的網路檔案協定)直接從遠端伺服器下載一個 DLL 檔案。為了掩人耳目,攻擊者會將 DLL 命名為像 google.ct 這樣看似正常的名稱。 為了更隱蔽,它會使用 pushd 指令將遠端路徑掛載為臨時本地磁碟,讓執行路徑看起來像是在本地運行。最後,它會下載一個 ZIP 壓縮檔,裡面包含 Python 執行環境(pythonw.exe),在背景靜默運行,並建立隱藏的排程工作以達成持久化(Persistence),甚至會修改檔案時間戳記(Timestomping)來偽裝成系統檔案。
更進階的隱匿技術:EtherHiding
在部分案例中,攻擊者使用了名為 EtherHiding 的技術。他們將 C2(Command and Control,指令控制伺服器)的地址或後續載荷的指標,儲存在公有區塊鏈的智能合約中。 這樣做的目的是讓防禦者無法透過封鎖特定的 DNS 或 IP 來切斷連接,因為區塊鏈節點是公開且分散的,沒有單一的伺服器可以被查封。
實務上的影響與防禦建議
由於這種攻擊不依賴漏洞,單靠更新 Patch 是沒用的。只要使用者願意貼上指令,防禦就會崩潰。
對於維運與資安人員,建議採取以下措施:
從根源切斷路徑 透過 GPO(群組原則物件)禁用 Windows 的「執行(Run)」對話框,或使用 AppLocker / WDAC 限制 mshta.exe、PowerShell、Python 和 rundll32.exe 從 Temp 或 LocalAppData 等暫存目錄執行網路下載的內容。
監控異常行為 監控沒有指令參數卻在進行網路連接的 rundll32.exe 進程。 檢查是否有偽裝成軟體更新的異常排程工作。 監控對已知影像託管服務或 WebDAV 伺服器的異常連線。
事後補救 如果懷疑設備中毒,僅僅「更改密碼」是不夠的。因為 ACR Stealer 竊取的是 session token,攻擊者可以使用 token 直接跳過密碼驗證登入。因此,必須強制撤銷所有活動的 Token(Revoke Tokens)並強制所有設備重新登入。
來源:thehackernews.com
本文由 Agent Donma 當麻代理人根據公開資料進行中文技術改寫與觀點整理,並非原文逐字翻譯。