減少 Active Directory 的攻擊面

適用於:Windows Server 2022、Windows Server 2019、Windows Server 2016、Windows Server 2012 R2、Windows Server 2012

本節主要說明用來減少 Active Directory 安裝受攻擊面的技術控制方法。 本節包含下列資訊:

  • 實作最低權管理模型主要說明如何識別使用高特殊權限帳戶進行日常管理所帶來的風險,並提供相關實作建議來降低該特殊權限帳戶伴隨的風險。

  • 實作安全的管理主機說明部署專用安全管理系統的原則,以及部署安全管理主機的一些範例方法。

  • 保護網域控制站不受攻擊討論的原則和設定雖然與實作安全管理主機的建議類似,但包含某些網域控制站特有的建議,以利確保網域控制站及其管理系統能受到妥善保護。

Active Directory 中具特殊權限的帳戶和群組

本節提供 Active Directory 中的特殊權限帳戶與群組的相關背景資訊,旨在說明 Active Directory 中的特殊權限帳戶與群組之間的共同點和差異。 了解這些區別後,無論您是完全按照實作最低權限管理模型中的建議實作,還是選擇為您的組織加以自訂,您都有適當保護每個群組和帳戶所需的工具。

內建特殊權限帳戶和群組

Active Directory 有助於委派系統管理,並支援指派權利和權限的最低權限原則。 在網域中擁有帳戶的「一般」使用者依預設能夠讀取儲存在目錄中的大部分內容,但只能變更目錄中非常有限的資料集。 需要額外權限的使用者可被授與目錄中內建之各種「特殊權限」群組的成員資格,而得以執行與其角色相關的特定工作,但無法執行與其職責無關的工作。 組織也可以建立專為特定工作職責自訂的群組,並為其授與精細的權利和權限讓 IT 人員執行日常系統管理功能,而不授與超出這些功能所需的權利和權限。

在 Active Directory 中,三個內建群組是目錄中的最高權限群組:Enterprise Admins、Domain Admins 和 Administrators。 以下幾節將說明這些群組的預設設定和功能:

Active Directory 中的最高權限群組

Enterprise Admins

Enterprise Admins (EA) 是僅存在於樹系根網域中的群組,且依預設是樹系中所有網域內的 Administrators 群組成員。 樹系根網域中的內建 Administrator 帳戶是 EA 群組的唯一預設成員。 EA 獲得的權利和權限可讓他們實作全樹系變更 (也就是對樹系中的所有網域都有影響的變更),例如新增或移除網域、建立樹系信任,或提高樹系功能層級。 在正確設計及實作的委派模型中,只有在第一次建構樹系或進行某些全樹系變更 (例如建立輸出樹系信任) 時,才需要 EA 成員資格。 為 EA 群組授與的權利和權限大多可以委派給較不具特殊權限的使用者和群組。

Domain Admins

樹系中的每個網域都有其本身的 Domain Admins (DA) 群組,這是該網域的 Administrators 群組成員,也是加入網域的每部電腦上本機 Administrators 群組的成員。 該網域的內建 Administrator 帳戶是網域 EA 群組的唯一預設成員。 DA 在其網域內是「全能」的,而 EA 則具有全樹系權限。 在正確設計及實作的委派模型中,只有在「緊急」情況下才需要 Domain Admins 成員資格 (例如,網域中的每部電腦都需要具有高層級權限的帳戶時)。 雖然原生 Active Directory 委派機制確實允許委派,但只有在緊急情況下才能使用 DA 帳戶,而建構有效的委派模型可能會曠日費時,因此許多組織會使用第三方工具來加速程序。

管理員

第三個群組是內建網域本機 Administrators (BA) 群組,其中內嵌了 DA 和 EA。 此群組會被授與目錄中和網域控制站上的許多直接權利和權限。 不過,網域的 Administrators 群組在成員伺服器或工作站上沒有任何權限。 本機權限是透過本機 Administrator 群組的成員資格授與的。

注意

雖然這些是這些特殊權限群組的預設設定,但三個群組中的任何成員都可以操作目錄,以取得任何其他群組中的成員資格。 在某些情況下,要取得其他群組中的成員資格並不難,但在其他情況下則會比較困難,但從潛在權限的角度來看,這三個群組應被視為等效。

Schema Admins

第四個特殊權限群組 Schema Admins (SA) 僅存在於樹系根網域中,且只有該網域的內建 Administrator 帳戶作為預設成員,類似於 Enterprise Admins 群組。 Schema Admins 群組僅在需要修改 AD DS 結構描述時填入,屬於暫時性的偶發行為。

雖然 SA 群組是唯一可修改 Active Directory 結構描述的群組 (即目錄的基礎資料結構,例如物件和屬性),但 SA 群組的權利和權限範圍會比先前說明的群組更有限。 我們也常會看到,組織為了管理 SA 群組的成員資格而擬定了適當的實務做法,因為群組中的成員資格通常很少會用到,有也只是短時間內的使用。 在技術上,Active Directory 中的 EA、DA 和 BA 群組也是如此,但相較之下,組織很少會比照 SA 群組為這些群組實作類似的實務做法。

Active Directory 中受保護的帳戶和群組

在 Active Directory 中,一組預設的特殊權限帳戶和群組 (名為「受保護的」帳戶和群組) 會以不同於目錄中其他物件的方式受到保護。 在受保護的群組中具有直接或轉移成員資格的任何帳戶 (無論成員資格是否衍生自安全性群組還是通訊群組),都會繼承這種有限的安全性。

例如,如果使用者是通訊群組的成員,而該通訊群組又是 Active Directory 中受保護的群組成員,該使用者物件就會標示為受保護的帳戶。 當帳戶標示為受保護的帳戶時,物件上的 adminCount 屬性值會設定為 1。

注意

雖然受保護群組中的轉移成員資格包含巢狀通訊群組和巢狀安全性群組,但屬於巢狀通訊群組成員的帳戶將不會在其存取權杖中接收到受保護群組的 SID。 不過,通訊群組可以轉換為 Active Directory 中的安全性群組,正因如此,通訊群組才會包含在受保護的群組成員列舉中。 如果受保護的巢狀通訊群組曾轉換為安全性群組,則屬於先前通訊群組成員的帳戶在下次登入時,將會在其存取權杖中接收到父受保護群組的 SID。

下表依作業系統版本和 Service Pack 層級列出 Active Directory 中預設的受保護帳戶和群組。

Active Directory 中預設的受保護帳戶和群組 (依作業系統和 Service Pack (SP) 版本)

Windows 2000 <SP4 Windows 2000 SP4 - Windows Server 2003 Windows Server 2003 SP1+ Windows Server 2008 - Windows Server 2012
管理員 Account Operators Account Operators Account Operators
系統管理員 系統管理員 系統管理員
管理員 管理員 管理員
Domain Admins Backup Operators Backup Operators Backup Operators
Cert Publishers
Domain Admins Domain Admins Domain Admins
Enterprise Admins 網域控制站 網域控制站 網域控制站
Enterprise Admins Enterprise Admins Enterprise Admins
Krbtgt Krbtgt Krbtgt
Print Operators Print Operators Print Operators
Read-only Domain Controllers
Replicator Replicator Replicator
Schema Admins Schema Admins Schema Admins
AdminSDHolder 和 SDProp

在每個 Active Directory 網域的系統容器中,都會自動建立名為 AdminSDHolder 的物件。 AdminSDHolder 物件的用途是要確保無論受保護的群組和帳戶位於網域中的何處,受保護帳戶和群組的權限會一致地強制執行。

每隔 60 分鐘 (預設值),名為「安全性描述元傳播程式」(SDProp) 的程序就會在保存網域 PDC 模擬器角色的網域控制站上執行一次。 SDProp 會將網域 AdminSDHolder 物件的權限與網域中受保護帳戶和群組的權限進行比較。 如果任何受保護帳戶和群組的權限不符合 AdminSDHolder 物件的權限,則會重設受保護帳戶和群組的權限,以符合網域的 AdminSDHolder 物件的權限。

在受保護的群組和帳戶上停用權限繼承,這表示即使帳戶或群組移至目錄中的不同位置,也不會繼承新父物件的權限。 AdminSDHolder 物件上也已停用繼承,因此父物件的權限變更不會變更 AdminSDHolder 的權限。

注意

帳戶從受保護的群組中移除後,即不再被視為受保護的帳戶,但其 adminCount 屬性若未手動變更,仍會設定為 1。 此設定的結果是,SDProp 不會再更新物件的 ACL,但物件仍不會從其父物件繼承權限。 因此,物件可能位於已被委派權限的組織單位 (OU) 中,但先前受保護的物件將不會繼承這些委派的權限。 您可以在 Microsoft 支援服務文章 817433 中找到相關指令碼,用以在網域中尋找及重設先前受保護的物件。

AdminSDHolder 擁有權

Active Directory 中的大部分物件都是由網域的 BA 群組所擁有。 但根據預設,AdminSDHolder 物件是由網域的 DA 群組所擁有。 (在此情況下,DA 並不會透過網域的 Administrators 群組成員資格來衍生其權利和權限。)

在 Windows Server 2008 之前的 Windows 版本中,物件的擁有者可變更物件的權限,包括為自身授與原本沒有的權限。 因此,網域 AdminSDHolder 物件的預設權限可防止屬於 BA 或 EA 群組的使用者變更網域 AdminSDHolder 物件的權限。 不過,網域的 Administrators 群組成員可取得物件的擁有權,並為自身授與額外的權限,這表示這只是基本保護,且只能保護物件不受特定使用者意外修改;使用者若是網域中的 DA 群組成員,則無法防範。 此外,BA 和 EA (如果適用) 群組有權變更本機網域 (EA 的根網域) 中 AdminSDHolder 物件的屬性。

注意

AdminSDHolder 物件的屬性 dSHeuristics 允許有限度地自訂 (移除) 被視為受保護的群組、且受到 AdminSDHolder 和 SDProp 影響的群組。 實作此自訂時應謹慎考量,但在某些情況下,修改 AdminSDHolder 的 dSHeuristics 確實有其效用。 若要進一步了解如何修改 AdminSDHolder 物件的 dSHeuristics 屬性,請參閱 Microsoft 支援服務文章 817433附錄 C:Active Directory 中受保護的帳戶和群組

雖然此處說明了 Active Directory 中最高特殊權限的群組,但有許多其他群組會被授與較高層級的權限。 若要進一步了解 Active Directory 中所有的預設和內建群組,以及指派給每個群組的使用者權限,請參閱附錄 B:Active Directory 中的特殊權限帳戶和群組