
Active Directory管理、ホストおよびネットワーク検出、CVE-2021-34527に対する多層的な緩和策を実演する、サニタイズ済みのWindowsセキュリティラボ。
管理された仮想環境で CVE-2021-34527 (PrintNightmare) を調査しながら、Windows ドメインラボがどのように設計・監視・堅牢化されたかを示す、サニタイズ済みの学術ケーススタディです。
安全上の注意: このリポジトリは、システム管理、防御的監視、証拠分析、緩和テストに焦点を当てています。実動用のエクスプロイトコード、ペイロード、認証情報、生のパケットキャプチャ、仮想マシンイメージ、および大学への元の提出物は意図的に含まれていません。
このプロジェクトは、脆弱性の提案、検出・緩和の設計、ライブデモによる実装という 3 つの学術的フェーズに従いました。最終ラボでは、隔離されたネットワークで脆弱性を再現し、ホストとネットワークのテレメトリを相関させ、複数の制御策をテストし、成功した緩和策と失敗した緩和策の両方を文書化しました。
隔離されたトポロジは、テスト用ワークステーションをドメインコントローラーおよびドメイン参加済みエンドポイントから分離しつつ、チームが認証、SMB/RPC 通信、サービスアクティビティ、エンドポイントの変更を監視できるようにしました。
この調査では、単一のセキュリティ製品に依存するのではなく、複数の証拠ソースを相関させました:
検出分析 と 防御用 TShark チェックリスト を参照してください。
主な結論は、多層的な制御策はビジネス要件に応じて選択する必要があるということでした。技術的に効果的な制御策であっても、必要なサービスを中断する場合は不適切であり得ます。
緩和結果 を参照してください。
これは 2 人組の大学プロジェクトとして完了しました。文書化された私の貢献は以下に焦点を当てています:
.
├── README.md
├── NOTICE.md
├── assets/
│ └── lab-architecture.svg
├── data/
│ ├── detection-indicators.csv
│ └── mitigation-results.csv
├── docs/
│ ├── architecture-and-administration.md
│ ├── detection-analysis.md
│ ├── mitigation-results.md
│ ├── project-lifecycle.md
│ └── lessons-learned.md
├── queries/
│ ├── tshark-defensive-checklist.md
│ └── windows-event-checklist.md
└── scripts/
├── README.md
└── cleanup_lab_artifacts.sh
このリポジトリは、評価のコピーではなく簡潔なケーススタディです。生の PCAP データ、デモ録画、ハードコードされたラボ認証情報、ペイロード生成コマンド、第三者製のエクスプロイトコード、著作権で保護された参考書、元のレポート、VM イメージは意図的に除外されています。
| ソース | レビューした証拠 | 防御的価値 |
|---|
| PrintService ログ | イベント ID 316 とプリンタードライバーアクティビティ | 不審なドライバーインストールと関連ファイルを特定 |
| Sysmon | イベント ID 7、11、13 | イメージロード、ファイル作成、レジストリ変更を追跡 |
| Security ログ | イベント ID 4624、4720、4722、4724、4732、4738 | 特権および永続化アクティビティに関連するログオンとアカウント・グループ変更を明らかに |
| System ログ | イベント ID 7031 | 予期しない Print Spooler 終了をフラグ付け |
| Wireshark/TShark | TCP エンドポイント、会話、NTLM、SMB2、転送オブジェクト | ホストイベントをネットワーク通信およびファイル転送の証拠と関連付け |
| Process Monitor | プロセス、ファイル、レジストリのアクティビティ | アクティビティシーケンスの再構築を支援 |
| テストした制御策 | 結果 | 運用上の考慮事項 |
|---|
| 受信リモート印刷を無効化 | リモート攻撃経路を防止 | リモートプリントサーバー機能に影響 |
| ドライバーディレクトリへの書き込みを拒否 | 不正なファイル配置をブロック | 正当な印刷キューやドライバーの変更を妨げる可能性 |
| ファイアウォールで RPC/SMB ポートをブロック | テストに必要なリモート通信を防止 | それらのポートに依存するサービスを中断する可能性 |
| グループポリシーで Print Spooler を無効化 | 脆弱なサービス経路を除外 | ローカルおよびリモート印刷を無効化 |
| Point and Print を制限 / 署名付きドライバーを要求 | このラボではテストした経路を阻止できず | 単一の制御策に単独で信頼を置くべきではないことを実証 |