漏洞概述
Windows COM 結構化儲存 (Webfldrs.msi) 在卸載過程中因權限檢查缺失,導致本地攻擊者可將 Shellcode 寫入堆對象,執行任意程式碼並獲得 SYSTEM 權限。影響範圍:Windows 2000 SP3/SP4、XP SP1/SP2、Server 2003、Windows 98 及使用 OLE 的 Office XP/2003。
漏洞原理
- 攻擊者觸發
Webfldrs.msi 卸載,因權限問題彈出錯誤視窗,主執行緒掛起。
- 新執行緒建立堆對象,該對象可寫入。
- 攻擊者將精心構造的 Shellcode 寫入該堆對象,劫持執行流程。
實戰利用條件
- 攻擊者需具備本地登入權限 (可透過遠端桌面、終端機服務、或其他本地執行向量)。
- 目標系統未安裝對應補丁 (MS06-0xx)。
影響評估
成功利用後,攻擊者可完全控制系統:安裝程式、竄改/刪除資料、建立具完全權限的新帳號。屬於本地權限提升 (LPE) 高危漏洞,CVSS 7.8 (High)。
緩解與修補措施
- 安裝官方補丁:部署微軟發布的安全更新 (MS06-XXX),修正 Webfldrs.msi 卸載邏輯。
- 限制本地登入:透過群組原則限制非必要使用者本地登入;啟用「拒絕從網路存取此電腦」給低權限群組。
- 應用程式白名單:使用 AppLocker 或 SRP 限制可執行檔,防止惡意 Shellcode 載入。
- 啟用 DEP/ASLR:確保系統層級啟用資料執行防護與位址空間佈局隨機化,增加利用難度。
- 最小權限原則:日常操作使用標準用戶帳號,管理任務透過 UAC 提權。
檢測建議
- 掃描缺失補丁:使用 WSUS、SCCM 或第三方漏洞掃描器檢測 MS06-XXX 安裝狀態。
- 監控異常進程:關注
msiexec.exe 異常啟動、子進程執行 cmd.exe/powershell.exe 等行為。
- 部署 EDR:攔截堆噴射、ROP 鏈等典型利用技術。
結語
雖此漏洞屬較早期案例,但其「卸載過程權限檢查缺失」的模式在後續漏洞 (如 PrintNightmare) 中重現。持續修補、最小權限、行為偵測為應對此類 LPE 漏洞的核心策略。