> For the complete documentation index, see [llms.txt](https://snowyowls-organization.gitbook.io/snowyowl644-hacklog/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://snowyowls-organization.gitbook.io/snowyowl644-hacklog/pjpt/2_active_directory_overview.md).

# Active Directory（AD）概要

* ADは、電話帳のようなものであり、オブジェクトによって管理される
  * ユーザーやプリンターなども「オブジェクト」
* ADは「アイデンティティ管理サービス」にすぎない
* ADの認証にはKerberosとKerberosチケットが必要
* 内部ペネトレーションテスト時に、ADに必ず直面する

## ADのコンポーネント構成

### 1. 物理的コンポーネント

* **Domain Controller（DC）**
  * 通称「ボス」
  * 電話帳（AD情報）をホスト
  * 認証・認可・管理者アクセスを提供
* **AD DS Store（DC内）**
* データベースファイルやユーザーサービス関連の情報を保持
  * **NTDS.dit**
    * パスワードハッシュも保存されており、引き出すことが可能

### 2. 論理的コンポーネント

* **AD DS Schema**
  * ADのルールブック・設計図
  * 登録可能なオブジェクトの種類を定義
  * オブジェクト作成・設定ルールを保持
  * **主なオブジェクトの種類**
    * クラスオブジェクト（例：ユーザー、コンピュータ、プリンター）
    * 属性オブジェクト（例：表示名など）
* **ドメイン**
  * オブジェクトをグループ化・管理する単位
  * セキュリティ境界としての役割
  * ポリシーや設定を適用する単位
* **ドメインフォレスト**
  * 複数ドメインの階層構造（親子構造）
  * 例：サブドメイン
  * フォレスト内でドメイン管理者の権限があっても、エンタープライズ管理者とは限らない
    * エンタープライズ管理者になれば、フォレスト全体にアクセス可能
* **Organizational Units（OUs）**
  * オブジェクト（ユーザー、コンピュータなど）を分類する「容器」
  * ポリシー適用が可能
  * 各ポリシー単位でOUを作成することで個別適用が可能
* **Trusts（信頼関係）**
  * ドメイン間でのアクセス権限を制御する仕組み
  * **方向性（Directional Trusts）**
    * **一方向（one-way）**
      * A → B の場合、AのユーザーはBにアクセス可能、逆は不可
    * **双方向（two-way）**
      * 双方のユーザーが互いのドメインリソースへアクセス可能
  * **推移性（Transitive Trusts）**
    * ドメインA ⇄ B ⇄ C のとき
      * **推移的信頼**：AのユーザーがCへアクセス可能
      * **非推移的信頼**：AのユーザーはBまで、Cにはアクセス不可
