Applies ToWindows Server 2022 Windows Server 2019 Windows Server 2016, all editions Windows Server 2012 R2 Windows Server 2012 Windows Server 2008 R2 Windows Server 2008 Service Pack 2

更新日期 :2022 年 7 月 12 日

摘要

CVE-2021-42287 解決影響 Kerberos 權限屬性憑證 (PAC),並允許潛在攻擊者假冒網域控制站的安全性略過弱點。 若要利用此弱點,遭入侵的網域帳戶可能要使金鑰發佈中心 (KDC) 建立權限等級高於遭入侵帳戶的服務票證。 透過防止 KDC 識別出較高的權限服務票證屬於哪個帳戶,以達成此目的。

CVE-2021-42287 中改善的驗證程序會將原始要求者的新資訊新增至 Kerberos 票證授權票證 (TGT) 的 PAC。 稍後,為帳戶產生 Kerberos 服務票證時,新的驗證程式會驗證要求 TGT 的帳戶,就是服務票證中參照的相同帳戶。

安裝 2021 年 11 月 9 日或之後發行的 Windows 更新之後,PAC 將會新增至所有網域帳戶的 TGT,即使先前選擇拒絕 PAC 的帳戶也包括在內。

採取行動

若要保護您的環境並避免運作中斷,請完成下列步驟:

  1. 透過安裝 2021 年 11 月 9 日的安全更新和 2021 年 11 月 14 日的頻外 (OOB) 更新,以更新所有主控 Active Directory 網域控制站角色的裝置。 在下面找到您的特定作業系統的 OOB KB 編號。

    作業系統

    知識庫編號

    Windows Server 2016

    5008601

    Windows Server 2019

    5008602

    Windows Server 2012 R2

    5008603

    Windows Server 2012

    5008604

    Windows Server 2008 R2 SP1

    5008605

    Windows Server 2008 SP2

    5008606

  2. 在所有 Active Directory 網域控制站上完成安裝 2021 年 11 月 9 日安全更新和 2021 年 11 月14 日 OOB 更新至少 7 天之後,強烈建議您在所有 Active Directory 網域控制站上啟用強制模式。

  3. 自 (最新) 2022 年 10 月 11 日的強制階段更新開始,可以在所有 Windows 網域控制站上啟用強制模式,也必須全體啟用。

Windows 更新的時程

這些 Windows 更新會分成三階段發行:

  1. 初始部署 – 引進更新,以及 PacRequestorEnforcement 登錄機碼

  2. 二次部署 – 移除 PacRequestorEnforcement 的值 0 (能夠停用登錄機碼)

  3. 強制階段 – 已啟用強制模式。 移除 PacRequestorEnforcement 登錄機碼

2021 年 11 月 9 日:初始部署階段

初始部署階段從 2021 年 11 月 9 日發行的 Windows 更新開始。 此版本:

  • 針對 CVE-2021-42287 新增保護

  • 新增 PacRequestorEnforcement 登錄值的支援,讓您提早轉換到強制階段

風險降低措施包括在所有主控網域控制站角色和唯讀網域控制站 (RODC) 的裝置上安裝 Windows 更新。

(最新) 2022 年 7 月 12 日:第二個部署階段

第二部署階段從 2022 年 7 月 12 日發行的 Windows 更新開始。 此階段會移除 PacRequestorEnforcement 設定 0。 安裝此更新後,將 PacRequestorEnforcement 設定為 0,其和將 PacRequestorEnforcement 設定為 1 的效果相同。 網域控制站 (DC) 將處於部署模式。

附註 如果您的環境中從未將 PacRequestorEnforcement 設定為 0,則不需要此階段。 此階段可協助確保客戶能在強制階段之前,將設為 0 的 PacRequestorEnforcement 改為 1。

注意 此更新假設所有網域控制站均已更新為 2021 年 11 月 9 日或之後的 Windows 更新。

(最新) 2022 年 10 月 11 日:執行階段

2022 年 10 月 11 日發行版本會將所有 Active Directory 網域控制站轉換到強制階段。 強制階段也會完全移除 PacRequestorEnforcement 登錄機碼。 因此,已安裝 2022 年 10 月 11 日更新的 Windows 網域控制站,將不再與下列各項相容:

  • 未安裝 2021 年 11 月 9 日或之後更新的網域控制站。

  • 已安裝 2021 年 11 月 9 日或之後更新,但尚未安裝 2022 年 7 月 12 日更新,而且 PacRequestorEnforcement 登錄值為 0 的網域控制站。

不過,已安裝 2022 年 10 月 11 日更新的 Windows 網域控制站,仍會與下列各項相容:

  • 已安裝 2022 年 10 月 11 日更新或更高版本更新的 Windows 網域控制器

  • 已安裝 2021 年 11 月 9 日或之後更新,而且 PacRequestorEnforcement 值為 1 或 2 的 視Window 網域控制站

登錄機碼資訊

在 2021 年 11 月 9 日到 2022 年 6 月 14 日之間發行的 Windows 更新中,安裝 CVE-2021-42287 保護之後,將會提供下列登錄機碼:

登錄子機碼

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Kdc

PacRequestorEnforcement

資料類型

REG_DWORD

資料

1:針對使用 Active Directory 網域控制站驗證的使用者新增 PAC,該網域控制站已安裝 2021 年 11 月 9 日或之後的更新。 驗證時,如果使用者有新的 PAC,就會驗證該 PAC。 如果使用者沒有新的 PAC,則不必採取任何動作。 處於此模式的 Active Directory 網域控制站,已進入部署階段。

2:針對使用 Active Directory 網域控制站驗證的使用者新增 PAC,該網域控制站已安裝 2021 年 11 月 9 日或之後的更新。 驗證時,如果使用者有新的 PAC,就會驗證該 PAC。 如果使用者沒有新的 PAC,驗證會遭到拒絕。 處於此模式的 Active Directory 網域控制站,已進入強制階段。

0:停用登錄機碼。 不建議使用。處於此模式的 Active Directory 網域控制站,已進入停用階段。 在 2022 年 7 月 12 日或之後的更新發行後,此值將不存在。

重要:設定 0 與設定 2 不相容。 如果在樹系內使用這兩個設定,可能會間歇發生失敗。 如果使用設定 0,建議您將設定 0 (停用) 轉換為設定 1 (部署) 至少一週之後,再改成設定 2 (強制模式)。

預設值

1 (未設定登錄機碼時)

是否需要重新開機?

稽核事件

2021 年 11 月 9 日的 Windows 更新也增加新的事件記錄檔。

沒有屬性的 PAC

KDC 遇到沒有 PAC 屬性緩衝區的 TGT。 很可能是記錄檔中的其他 KDC 不包含更新,或處於停用模式。

事件記錄檔

系統

事件類型

警告

事件來源

Kdcsvc

事件識別碼

35

事件文字

金鑰發佈中心 (KDC) 遇到來自另一個 KDC ("<KDC Name>"),但不包含 PAC 屬性欄位的票證授與票證 (TGT)。 

沒有 PAC 的票證

KDC 遇到沒有 PAC 的 TGT 或其他辨識項票證。 這可以防止 KDC 對票證強制執行安全性檢查。

事件記錄檔

系統

事件類型

部署階段期間的警告

強制階段期間的錯誤

事件來源

Kdcsvc

事件識別碼

36

事件文字

金鑰發佈中心 (KDC) 在處理另一個票證的要求時,遇到不包含 PAC 的票證。 這可以防止執行安全性檢查,並可能形成安全性弱點。 

用戶端:<Domain Name>\<User Name>

票證:<Service Name>

沒有要求者的票證

KDC 遇到沒有 PAC 要求者緩衝區的 TGT 或其他辨識項票證。 很可能是建構 PAC 的 KDC 不包含更新,或處於停用模式。

附註 有關事件 37 的重要資訊,請參閱已知問題部分。

事件記錄檔

系統

事件類型

部署階段期間的警告

強制階段期間的錯誤

事件來源

Kdcsvc

事件識別碼

37

事件文字

金鑰發佈中心 (KDC) 在處理另一個票證的要求時,遇到的票證卻不包含有關票證要求者的帳戶資訊。 這可以防止執行安全性檢查,並可能形成安全性弱點。 

票證 PAC 建構者:<KDC Name>

 用戶端:<Domain Name>\<Client Name>

票證:<Service Name>

要求者不相符

KDC 遇到 TGT 或其他辨識項票證,但要求該 TGT 或辨識項票證的帳戶不符合為其建立服務票證的帳戶。

事件記錄檔

系統

事件類型

錯誤

事件來源

Kdcsvc

事件識別碼

38

事件文字

金鑰發佈中心 (KDC) 遇到的票證所包含有關票證要求者的帳戶資訊不一致。 這表示在票證發行之後,帳戶遭到重新命名,這可能是嘗試惡意探索的一部分。 

票證 PAC 建構者:<Kdc Name>

用戶端:<Domain Name>\<User Name>

票證:<Service Name>

向 Active Directory 要求帳戶 SID:<SID>

向票證要求帳戶 SID:<SID>

已知問題

徵狀

因應措施 

在網域控制器 (DC) 上安裝 2021 年 11 月 9 日或之後發佈的 Windows 更新後,某些客戶可能會看到在某些密碼設定或變更動作後記錄了新的審核事件 ID 37,例如:

  • 更新或修復容錯移轉叢集的 CNO 或 VCO

  • 從 Active Directory 使用者和電腦 (dsa.msc) 主控台重新設定使用者密碼

  • 從 Active Directory 使用者和電腦 (dsa.msc) 主控台建立新使用者

  • 變更第三方、已加入網域的裝置的密碼

如果您在安裝 2021 年 11 月 9 日或之後發佈的 Windows 更新一周後未看到事件 ID 37,並且 PacRequestorEnforcement 為「1」或「2」,則您的環境不受影響。

如果您設定 PacRequestorEnforcement = 1,則會將事件 ID 37 記錄為警告,但密碼變更請求將成功並且不會影響使用者。

如果設定 PacRequestorEnforcement = 2,密碼變更請求將失敗,並導致上面列出的作業也失敗。

這個問題已在下列更新中解決:

常見問題集

問 1:如果我混合使用已更新和未更新的 Active Directory 網域控制站,會發生什麼情況?

答 1: 混合使用已更新和未更新,但有預設 PacRequestorEnforcement 登錄機碼值 1 的網域控制站,可以彼此相容。 不過,Microsoft 強烈建議您,不要在環境中同時使用已更新和未更新的網域控制站。

問 2:如果我混合使用有多種不同 PacRequestorEnforcement 值的 Active Directory 網域控制站,會發生什麼情況?

答 2: 混合使用 PacRequestorEnforcement 值為 0 與 1 的網域控制站,可以彼此相容。 混合使用 PacRequestorEnforcement 值為 1 與 2 的網域控制站,可以彼此相容。 混合使用 PacRequestorEnforcement 值為 0 與 2 的網域控制站,無法彼此相容,並可能造成間歇發生失敗。 如需進一步資訊,請參閱<登錄機碼資訊>一節。

Need more help?

Want more options?

探索訂閱權益、瀏覽訓練課程、瞭解如何保護您的裝置等等。

社群可協助您詢問並回答問題、提供意見反應,以及聆聽來自具有豐富知識的專家意見。