摘要
CVE-2021-42278 解決了安全性忽略弱點,可讓潛在攻擊者使用電腦帳戶 sAMAccountName 詐騙來類比網域控制站。
本文提供 2021 年 11 月 9 日及更新版本為CVE-2021-42278所發佈的 Windows 更新所進行之 Active Directory Security Accounts Manager (SAM) 強化變更的其他詳細資料及常見問題區段。
Active Directory 驗證檢查
安裝 CVE-2021-42278之後,Active Directory 會執行下列由沒有電腦帳戶系統管理員許可權的使用者所建立或修改之電腦帳戶之 sAMAccountName 和 UserAccountControl 屬性上的驗證檢查。
-
sAMAccountType 驗證使用者和電腦帳戶
-
ObjectClass=電腦 (或電腦帳戶) 帳戶的 UserAccountControl 標UF_WORKSTATION_TRUST_ACCOUNT或UF_SERVER_TRUST_ACCOUNT
-
ObjectClass=User 必須有 UAC 標UF_NORMAL_ACCOUNT或UF_INTERDOMAIN_TRUST_ACCOUNT
-
-
電腦帳戶的 sAMAccountName 驗證
其UserAccountControl屬性包含 UF_WORKSTATION_TRUST_ACCOUNT 標號的電腦帳戶sAMAccountName必須以單一貨幣符號 ($) 。 當未符合這些條件時,Active Directory 會0x523 ERROR_INVALID_ACCOUNTNAME。 失敗的驗證會記錄在 System 事件記錄中的 Directory-Services-SAM 事件 ID 16991 中。
當未符合這些條件時,Active Directory 會ACCESS_DENIED。 失敗的驗證會記錄在 System 事件記錄中的 Directory-Services-SAM 事件 ID 16990 中。
稽核事件
物件類別和 UserAccountControl 驗證失敗
當 Object 類和 UserAccountControl 驗證失敗時,下列事件會記錄在系統記錄中:
事件記錄 |
系統 |
事件種類 |
錯誤 |
事件來源 |
Directory-Services-SAM |
事件識別碼 |
16990 |
活動文字 |
安全性帳戶管理員封鎖非系統管理員在此網域中建立 Active Directory 帳戶,其物件類別與 userAccountControl 帳戶類型標標不符。 細節: 帳戶名稱:%1%n Account objectClass:%2%n userAccountControl:%3%n 來電者位址:%4%n 來電 SID:%5%n%n |
SAM 帳戶名稱驗證失敗
當SAM 帳戶名稱驗證失敗時,下列事件會記錄在系統記錄中:
事件記錄 |
系統 |
事件種類 |
錯誤 |
事件來源 |
Directory-Services-SAM |
事件識別碼 |
16991 |
活動文字 |
安全性帳戶管理員禁止非系統管理員使用不正確 sAMAccountName 建立或重新命名電腦帳戶。 電腦帳戶上的 sAMAccountName 必須以單一結尾的 $ 符號結尾。 嘗試 sAMAccountName:%1 建議 sAMAccountName:%1$ |
成功建立電腦帳戶稽核事件
下列現有稽核事件可用於成功建立電腦帳戶:
詳細資訊,請參閱稽核 電腦帳戶管理。
常見問題集
Q1。 此更新如何影響 Active Directory 中現有的物件?
A1。 對於現有的物件,當沒有系統管理員許可權的使用者修改 sAMAccountName 或 UserAccountControl 屬性時,即會發生驗證。
Q2。 什麼是 sAMAccountName?
A2。 sAMAccountName 是 Active Directory 中所有安全性主體的唯一屬性,包括使用者、群組和電腦。 sAMAccountName的名稱限制性記錄于3.1.1.6 原始更新的屬性限制條件中。
Q3。 什麼是 sAMAccountType?
A3。 如需詳細資訊,請閱讀下列檔:
有三種可能的 sAMAccountType 值對應至四個可能的 UserAccountcontrol 標標,如下所示:
userAccountControl |
sAMAccountType |
---|---|
UF_NORMAL_ACCOUNT |
SAM_USER_OBJECT |
UF_INTERDOMAIN_TRUST_ACCOUNT |
SAM_TRUST_ACCOUNT |
UF_WORKSTATION_TRUST_ACCOUNT |
SAM_MACHINE_ACCOUNT |
UF_SERVER_TRUST_ACCOUNT |
SAM_MACHINE_ACCOUNT |
Q4。 UserAccountControl 的可能值是什麼?
A4。 如需詳細資訊,請閱讀下列檔:
Q5。 如何尋找環境中已存在的不相容物件?
A5。 系統管理員可以使用類似下列範例的 PowerShell 腳本,搜尋其目錄中現有的不相容帳戶。
若要尋找不符合 sAMAccountName的電腦帳戶:
Get-ADComputer -LDAPFilter "(samAccountName=*)" |? SamAccountName -NotLike "*$" | select DNSHostName, Name, SamAccountName |
若要尋找不符合 UserAccountControl sAMAccountType 的電腦帳戶:
Get-ADComputer -LDAPFilter "UserAccountControl:1.2.840.113556.1.4.803:=512” |