原因 CVE-2018-0886 的 CredSSP 更新 將默認設置從“易受攻擊”更改為“緩解”的更新。
摘要
憑據安全支持提供程序協議 (CredSSP) 是處理其他應用程序的身份驗證請求的身份驗證提供程序。
CredSSP 的未修補版本中存在遠程代碼執行漏洞。 成功利用此漏洞的攻擊者可以在目標系統上中繼用戶憑據以執行代碼。 任何依賴 CredSSP 進行身份驗證的應用程序都可能容易受到此類攻擊。
此安全更新通過更正 CredSSP 在身份驗證過程中驗證請求的方式來修復此漏洞。
若要了解有關此漏洞的更多信息,請參閱 CVE-2018-0886。
更新
2018 年 3 月 13 日
2018 年 3 月 13 日的初始版本更新了所有受影響平台的 CredSSP 身份驗證協議和遠程桌面客戶端。
緩解措施包括在所有符合條件的客戶端和服務器操作系統上安裝更新,然后使用包含的“組策略”設置或基於注冊表的等效項管理客戶端和服務器計算機上的設置選項。 我們建議管理員應用該策略,並盡快在客戶端和服務器計算機上將其設置為“強制更新的客戶端”或“緩解”。這些更改將需要重啟受影響的系統。
請密切關注導致本文后面的兼容性表中的客戶端和服務器之間的“阻止”交互的組策略或注冊表設置對。
2018 年 4 月 17 日
KB 4093120 中的遠程桌面客戶端 (RDP) 更新將增強更新的客戶端無法連接到尚未更新的服務器時出現的錯誤消息。
2018 年 5 月 8 日
將默認設置從“易受攻擊”更改為“緩解”的更新。
相關的 Microsoft 知識庫編號已在 CVE-2018-0886 中列出。
組策略
| 策略路徑和設置名稱 | 說明 |
|---|---|
| 策略路徑:“計算機配置”->“管理模板”->“系統”->“憑據分配” | 加密 oracle 修正 設置可應用於使用 CredSSP 組件(例如,遠程桌面連接)的應用程序。 CredSSP 協議的某些版本容易受到針對客戶端的加密 oracle 攻擊。 此策略控制與易受攻擊的客戶端和服務器的兼容性。 此策略允許你設置針對加密 oracle 漏洞的防護級別。 如果啟用此策略設置,將會基於以下選項選擇 CredSSP 版本支持: 強制更新的客戶端– 使用 CredSSP 的客戶端應用程序將無法回退到不安全的版本,且使用 CredSSP 的服務將不接受未修補的客戶端。 緩解– 使用 CredSSP 的客戶端應用程序將無法回退到不安全的版本,但使用 CredSSP 的服務將接受未修補的客戶端。 易受攻擊– 使用 CredSSP 的客戶端應用程序將通過支持回退到不安全的版本使遠程服務器遭受攻擊,但使用 CredSSP 的服務將接受未修補的客戶端。 |
“加密 Oracle 修正組策略”支持以下三個選項,應將這些選項應用於客戶端和服務器:
| 策略設置 | 注冊表值 | 客戶端行為 | 服務器行為 |
|---|---|---|---|
| 強制更新的客戶端 | 0 | 使用 CredSSP 的客戶端應用程序將無法回退到不安全的版本。 | 使用 CredSSP 的服務將不接受未修補的客戶端。注意 在所有 Windows 和第三方 CredSSP 客戶端支持最新的 CredSSP 版本之前,不應部署此設置。 |
| 緩解 | 1 | 使用 CredSSP 的客戶端應用程序將無法回退到不安全的版本。 | 使用 CredSSP 的服務將接受未修補的客戶端。 |
| 易受攻擊 | 2 | 使用 CredSSP 的客戶端應用程序將通過支持回退到不安全的版本使遠程服務器遭受攻擊。 | 使用 CredSSP 的服務將接受未修補的客戶端。 |
第二次更新(於 2018 年 5 月 8 日發布)會將默認行為更改為“緩解”選項。
注意 對加密 Oracle 修正的任何更改都需要重啟。
注冊表值
警告 如果使用注冊表編輯器或其他方法修改注冊表不當,可能會出現嚴重問題。 這些問題可能需要您重新安裝操作系統。 Microsoft 不能保證可解決這些問題。 請自行承擔修改注冊表的風險。
此更新引入了以下注冊表設置:
| 注冊表路徑 | HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP\Parameters |
|---|---|
| 值 | AllowEncryptionOracle |
| 數據類型 | DWORD |
| 是否需要重啟? | 是 |
互操作性矩陣
客戶端和服務器都需要更新,否則,Windows 和第三方 CredSSP 客戶端可能無法連接到 Windows 或第三方主機。 有關易受攻擊或導致操作失敗的情況,請參閱以下互操作性矩陣。
| 服務器 | |||||
|---|---|---|---|---|---|
| 未修補 | 強制更新的客戶端 | 緩解 | 易受攻擊 | ||
| 客戶端 | 未修補 | 允許 | 阻止 | 允許 | 允許 |
| 強制更新的客戶端 | 阻止 | 允許 | 允許 | 允許 | |
| 緩解 | 阻止 | 允許 | 允許 | 允許 | |
| 易受攻擊 | 允許 | 允許 | 允許 | 允許 |
| 客戶端設置 | CVE-2018-0886 修補程序狀態 |
|---|---|
| 未修補 | 易受攻擊 |
| 強制更新的客戶端 | 安全 |
| 緩解 | 安全 |
| 易受攻擊 | 易受攻擊 |
Windows 事件日志錯誤
如果在阻止的配置中配置客戶端和遠程主機,將在已修補的 Windows 客戶端上記錄事件 ID 6041。
| 事件日志 | 系統 |
|---|---|
| 事件源 | LSA (LsaSrv) |
| 事件 ID | 6041 |
| 事件消息文本 | 對 <主機名> 的 CredSSP 身份驗證無法協商通用協議版本。 遠程主機提供了加密 Oracle 修正不允許的版本 <協議版本>。 |
由未修補的 Windows RDP 客戶端通過 CredSSP 阻止的配置對生成的錯誤
由沒有 2018 年 4 月 17 日修補程序 (KB 4093120) 的遠程桌面客戶端提供的錯誤
| 與配置了“強制更新的客戶端”的服務器配對的未修補的 Windows 8.1 之前的客戶端和 Windows Server 2012 R2 客戶端 | 由未修補的 Windows 8.1/Windows Server 2012 R2 和更高版本的 RDP 客戶端通過 CredSSP 阻止的配置對生成的錯誤 |
|---|---|
| 發生了身份驗證錯誤。提供給函數的令牌無效 | 發生了身份驗證錯誤。不支持請求的函數。 |
由具有 2018 年 4 月 17 日修補程序 (KB 4093120) 的遠程桌面客戶端提供的錯誤
| 與配置了“強制更新的客戶端”的服務器配對的未修補的 Windows 8.1 之前的客戶端和 Windows Server 2012 R2 客戶端 | 這些錯誤是由未修補的 Windows 8.1/Windows Server 2012 R2 和更高版本的 RDP 客戶端通過 CredSSP 阻止的配置對生成的。 |
|---|---|
| 發生了身份驗證錯誤。提供給函數的令牌無效。 | 發生了身份驗證錯誤。不支持請求的函數。遠程計算機: <主機名>這可能由 CredSSP 加密 oracle 修正引起的。有關更多信息,請參閱 https://go.microsoft.com/fwlink/?linkid=866660 |
第三方遠程桌面客戶端和服務器
所有第三方客戶端或服務器必須使用最新版本的 CredSSP 協議。 請聯系供應商以確定其軟件是否與最新的 CredSSP 協議兼容。
可在 Windows 協議文檔網站中找到協議更新。
解決方案
- win + R
- 輸入 gpedit.msc
- 打開本地組策略編輯器
- 點擊計算機配置
- 管理模板
- 系統
- 憑據分配
- 選擇 加密 Oracle修正
- 編輯 加密 Oracle修正
- 將保護級別從 已緩解 修改為 易受攻擊
