谷歌在 Windows 8.1 中發現未修補的安全漏洞

閱讀時間圖標 3分鐘讀


讀者幫助支持 MSpoweruser。如果您透過我們的連結購買,我們可能會獲得佣金。 工具提示圖標

請閱讀我們的揭露頁面,了解如何幫助 MSPoweruser 維持編輯團隊的發展 阅读更多

Windows 8.1 開始菜單 新

一位 Google 研究人員發現了 Windows 8.1 中未修補的安全漏洞。 谷歌研究人員已在谷歌安全研究頁面上發布了這個漏洞,它需要 90 天的披露期限。 如果 90 天后沒有廣泛可用的補丁,那麼錯誤報告將自動對公眾可見。 沒有關於微軟是否承認這個錯誤或他們是否正在努力解決這個問題的信息。 但我認為谷歌在每天有數百萬人使用的 Windows 8 等產品上發布漏洞是不負責任的舉動。

以下信息發布了有關該錯誤的信息,

在 Windows 8.1 更新系統調用 NtApphelpCacheControl(代碼實際上在 ahcache.sys 中)允許緩存應用程序兼容性數據,以便在創建新進程時快速重用。 普通用戶可以查詢緩存,但不能添加新的緩存條目,因為該操作僅限於管理員。 這在函數 AhcVerifyAdminContext 中進行了檢查。

此函數有一個漏洞,它無法正確檢查調用者的模擬令牌以確定用戶是否為管理員。 它使用 PsReferenceImpersonationToken 讀取調用者的模擬令牌,然後在令牌中的用戶 SID 與 LocalSystem 的 SID 之間進行比較。 它不檢查令牌的模擬級別,因此可以從本地系統進程獲取線程上的識別令牌並繞過此檢查。 為此,PoC 濫用 BITS 服務和 COM 來獲取模擬令牌,但可能還有其他方法。

這只是一個找到利用該漏洞的方法的案例。 在 PoC 中,為 UAC 自動提升可執行文件(例如 ComputerDefaults.exe)創建緩存條目,並將緩存設置為指向 regsvr32 的應用程序兼容條目,這會強制 RedirectExe shim 重新加載 regsvr32.exe。 然而,可以使用任何可執行文件,訣竅是找到合適的預先存在的應用程序兼容配置來濫用。

目前還不清楚 Windows 7 是否易受攻擊,因為更新的代碼路徑上有一個 TCB 權限檢查(儘管它看起來取決於標誌,這可能是可以繞過的)。 尚未在 Windows 7 上對其進行驗證。注意:這不是 UAC 中的錯誤,它只是出於演示目的使用 UAC 自動提升。

PoC 已在 Windows 8.1 更新(包括 32 位和 64 位版本)上進行了測試。 為了確定,我建議在 32 位上運行。 要驗證執行以下步驟:

1) 將 AppCompatCache.exe 和 Testdll.dll 放到磁盤上
2) 確保 UAC 已啟用,當前用戶是拆分令牌管理員且 UAC 設置為默認設置(不提示特定可執行文件)。
3) 使用命令行“AppCompatCache.exe c:windowssystem32ComputerDefaults.exe testdll.dll”從命令提示符執行 AppCompatCache。
4)如果成功,那麼計算器應該會以管理員身份運行。 如果它第一次不起作用(並且您獲得了 ComputerDefaults 程序)從 3 重新運行漏洞利用,則有時在第一次運行時似乎存在緩存/計時問題。

資源: 谷歌 通過: Neowin網站

有關主題的更多資訊: 下載, 微軟, 安全, 更新, 窗口, 8.1窗口