Azure Sentinel の Playbook を使用したインシデント対応の自動化
2024 年 1 月 11 日
この技術的および教育的な記事は、セキュリティ アナリスト、IT 管理者、およびシステム エンジニアが Microsoft Sentinel の Playbook を使用してセキュリティ インシデント対応を自動化できるようガイドすることを目的としています。 Azure Logic Apps に基づく Playbook は、Sentinel の Security Orchestration, Automation, and Response (SOAR) 機能の中核コンポーネントであり、セキュリティ チームが反復的なタスクを自動化し、複雑なワークフローを調整し、より迅速かつ一貫して脅威に対応できるようにします [1]。
はじめに
最新のセキュリティ オペレーション センター (SOC) では、アラートとインシデントの量が膨大になる可能性があります。セキュリティ アナリストは、アラートの優先順位付け、データの充実、関係者への通知、基本的な修復アクションの実行など、手動の反復的なタスクにかなりの時間を費やしています。このオーバーヘッドにより、平均応答時間 (MTTR) が増加するだけでなく、アナリストの注意がより複雑な脅威や詳細な調査からそらされてしまいます。 Microsoft Sentinel は、SOAR 機能を備えており、Playbook [2] を通じてインシデント対応の自動化を可能にすることで、この課題に対処します。
この実践的なガイドでは、Sentinel の Playbook と自動化ルールの基本概念、Azure Logic Apps を使用した Playbook の作成プロセス、Playbook と分析および自動化ルールの統合、および通知の送信、悪意のある IP アドレスのブロック、侵害されたホストの隔離などの実践的な自動化の例について説明します。読者がインシデント対応の自動化を実装して検証し、セキュリティ運用を最適化し、組織の防御態勢を強化できるように、段階的な手順とワークフローの例が提供されます。
Sentinel の Playbook による自動化が重要なのはなぜですか?
- 応答時間の短縮 (MTTR): IP のブロックやユーザー アカウントの無効化などの即時修復アクションを自動化し、脅威がアクティブなままである時間を短縮します。
- SOC 効率の向上: セキュリティ アナリストが反復的なタスクから解放され、複雑な調査や脅威ハンティングに集中できるようになります。
- 一貫性と標準化: インシデント対応が標準化され文書化されたプロセスに従っていることを保証し、人的エラーを削減し、コンプライアンスを確保します。
- スケーラビリティ: チームを比例的に増員することなく、SOC が増加する量のアラートに対処できるようになります。
- ツール オーケストレーション: 幅広いサービスやツール (Azure、Microsoft 365、サードパーティ ソリューション) と統合して、セキュリティ エコシステム全体にわたる対応を調整します。
- データ強化: 複数のソース (脅威インテリジェンス、ユーザー情報、デバイス データなど) からのコンテキスト情報の収集を自動化し、トリアージと調査を迅速化します。
前提条件
Azure Sentinel の Playbook を使用して応答を自動化するには、次のアイテムが必要です。
- アクティブな Microsoft Sentinel ワークスペース: Microsoft Sentinel ソリューションが有効になっている Log Analytics ワークスペース。
- 管理アクセス: Azure でリソース (Logic Apps を含む) を作成および管理するアクセス許可と、Sentinel ワークスペースの「Microsoft Sentinel Contributor」または「Microsoft Sentinel Responder」のロールを持つアカウント。
- 構成されたデータ コネクタ: アラートとインシデントを生成するために Sentinel に接続されたデータ ソース (例: Azure Active Directory、Microsoft Defender for Cloud など)。
- 分析ルールが有効: 脅威を検出し、取り込まれたデータからインシデントを作成するように構成された分析ルール。
ステップバイステップ: ハンドブックを使用した応答の自動化
セキュリティ インシデントに対応するための Playbook を作成して自動化しましょう。
1. Sentinel オートメーション コンポーネントを理解する
- プレイブック: これらは、アラートまたはインシデントに応じて Microsoft Sentinel から実行できる手順のコレクションです。 Playbook は Azure Logic Apps 上に構築されており、電子メールの送信、ITSM システムでのチケットの作成、ファイアウォールでの IP のブロックなどの一連のアクションを含めることができます [4]。
- 自動化ルール: inci の自動化を管理できるようにするルールです。センチネルの歯。これらは、インシデントの割り当て、ステータスの変更、タグの追加、そして最も重要な Playbook の実行に使用できます。自動化ルールは、Playbook の一元的な「トリガー」として機能します [5]。
2. プレイブックの作成 (Azure Logic App)
Sentinel インシデントによってトリガーされたときに、インシデントの詳細を含む電子メール通知を送信する簡単な Playbook を作成してみましょう。
- ブラウザーを開き、Azure portal:
https://portal.azure.comに移動します。 - 上部の検索フィールドに「Logic Apps」と入力し、結果からそれを選択します。
- 「+追加」をクリックして、新しいロジック アプリを作成します。
-
基本:
- サブスクリプション: サブスクリプションを選択します。
- リソース グループ: リソース グループを選択します (Sentinel ワークスペースと同じものを使用することをお勧めします)。
- 論理アプリ名: プレイブックに名前を付けます (例:
NotifyIncidentSentinel)。 - 地域: 地域を選択します。
- プラン タイプ: 従量課金制モデルの場合は「消費」を選択します。これは、ほとんどの Playbook シナリオに最適です。
-
「確認と作成」をクリックし、「作成」をクリックします。
- デプロイ後、「リソースに移動」をクリックして Logic Apps デザイナーを開きます。
3. プレイブックのトリガーとアクションの構成
ロジック アプリ デザイナーが開き、テンプレート画面が表示されます。 「空のロジック アプリ」を選択します。
-
トリガーの構成: デザイナーの検索フィールドに「Microsoft Sentinel」と入力し、「Microsoft Sentinel インシデントの作成時」トリガーを選択します。
-
Sentinel に接続: 初めての場合は、Sentinel ワークスペースへの接続を作成する必要があります。必要な権限を持つアカウントで認証します。
-
アクションの追加 (電子メールの送信): 「+ 新しいステップ」をクリックします。
-
検索フィールドに「電子メールの送信」と入力し、「Office 365 Outlook」コネクタ (または選択した別の電子メール プロバイダー) から「電子メールの送信 (V2)」アクションを選択します。
-
電子メール アクションの構成: Sentinel インシデント トリガーからの動的コンテンツを使用して、電子メール フィールドにデータを入力します。
- To: 受信者の電子メール アドレスを入力します (例:
[email protected])。 - 件名: 「新しいセンチネル事件:」、動的コンテンツから「事件のタイトル」を選択します。
- 本文: インシデントの詳細を含む情報メールの本文を作成します。
タイトル:(「インシデントのタイトル」を選択)重大度:(インシデントの重大度を選択)- 「説明:」 (「インシデントの説明」を選択)
- 「インシデントへのリンク:」 (「インシデント URL」を選択)
- To: 受信者の電子メール アドレスを入力します (例:
-
[保存] をクリックして、プレイブックを保存します。
4. Playbook の権限の付与
Playbook が Sentinel やその他のリソースと対話できるようにするには、事前に権限が必要です。これを行う最も簡単な方法は、「Microsoft Sentinel Contributor」ロールを Logic Apps マネージド ID に割り当てることです。
- Azure portal で、Azure Sentinel ワークスペースに移動します。
- 左側のナビゲーション ペインで、アクセス制御 (IAM) を選択します。
- 「+追加」 > 「役割割り当ての追加」をクリックします。
- 役割: 「Microsoft Sentinel Contributor」を選択します。
- メンバー: [アクセス権の割り当て] で、[マネージド ID] を選択します。
- 「+メンバーの選択」をクリックします。
-
マネージド ID: 「Logical App」を選択し、Playbook (「NotifyIncidentSentinel」) を検索します。それを選択して「選択」をクリックします。
-
「確認と割り当て」をクリックして終了します。
5. プレイブックをトリガーする自動化ルールの作成
次に、Sentinel で自動化ルールを作成して、新しいインシデントが作成されるたびに Playbook を実行しましょう。
- Azure portal で、Azure Sentinel ワークスペースに移動します。
- 左側のナビゲーション ペインで、オートメーションを選択します。
- 「+ 作成」 > 「オートメーション ルール」をクリックします。
- 自動化ルール名: 名前を付けます (例: 「新しいインシデントの通知」)。
- トリガー: 「インシデントの作成時」を選択します。
- 条件: 特定のインシデントに対してのみルールがトリガーされるように条件を追加できます (例: 「重大度」「等しい」「高」)。この例では条件を追加しないため、ルールはすべての新しいインシデントに適用されます。
- アクション: 「アクション」で「プレイブックの実行」を選択します。
-
ドロップダウン メニューから、P を選択します。作成したレイブック (
NotifyIncidentSentinel)。 -
順序: ルールの実行順序を定義します (複数のルールがある場合)。
- ルールの有効期限: ルールをある時点で期限切れにするかどうかを定義します。
- 「適用」をクリックして自動化ルールを作成します。
検証とテスト
自動化を検証するには、Sentinel でインシデントの作成をトリガーする必要があります。
1. テスト インシデントのトリガー
- Azure portal で、Azure Sentinel ワークスペースに移動します。
- 左側のナビゲーション ウィンドウで、インシデントを選択します。
- 「+ インシデントの作成 (プレビュー)」をクリックします。
- テスト インシデントの詳細 (タイトル、説明、重大度など) を入力し、「作成」をクリックします。
2. プレイブックの実行の検証
-
電子メールを確認: Playbook で設定した受信者の受信トレイを確認します。作成したテスト インシデントの詳細が記載された電子メールを受け取るはずです。
-
プレイブックの実行履歴を確認します: Azure portal で、ロジック アプリ (
NotifyIncidentSentinel) に移動します。 - 左側のナビゲーション ペインで、[概要] を選択し、[実行履歴] タブを選択します。
- テスト インシデントに対応する実行が成功したことが表示されます。クリックすると各ステップ(トリガーとアクション)の詳細が表示されます。
高度な実践例: 悪意のある IP をブロックする
悪意のある IP アドレスを含むインシデントを受信すると、その IP を Azure ネットワーク セキュリティ グループ (NSG) のブロック ルールに追加する、より高度な Playbook を作成してみましょう。
- 新しいプレイブックの作成: セクション 2 の手順に従って、新しいロジック アプリ (例:
BloquearIPMalicioso) を作成します。 - トリガーの構成: 「Microsoft Sentinel インシデントの作成時」トリガーを使用します。
-
アクションの追加 (インシデント エンティティの取得): 新しいステップを追加し、「Microsoft Sentinel」コネクタから「エンティティ - IP の取得」アクションを探します。これにより、インシデントの IP アドレスが抽出されます。
-
アクションの追加 (IP ごとのループ): インシデントには複数の IP が含まれる可能性があるため、「For each」コントロールを追加して、前のアクションによって返された IP のリストを反復処理します。
-
アクションの追加 (NSG に IP を追加): 「For each」ループ内に、「ネットワーク セキュリティ グループの更新」という名前の「Azure NSG」コネクタ アクションを追加します。
- リソース グループ: NSG のリソース グループを選択します。
- ネットワーク セキュリティ グループ名: 更新する NSG を選択します。
- セキュリティ ルール: 次のプロパティを持つ新しいセキュリティ ルールを追加します。
- 名前:
BlockIP-(およびFor eachループから動的 IP を追加します)。 - 優先度: 高い優先度を設定します (例: 100)。
- 方向:
入力。 - アクセス:「拒否」。
- プロトコル:「任意」。
- 送信元ポート範囲:
*。 - 宛先ポート範囲:
*。 - ソース アドレス:
For eachループの動的 IP を選択します。 - 宛先アドレス:
*。
- 名前:
-
保存してアクセス許可を付与: プレイブックを保存し、ロジック アプリ マネージド ID (NSG スコープの「ネットワーク共同作成者」など) に必要なアクセス許可を付与します。
- 自動化ルールの作成: インシデントに悪意のある IP が含まれている場合 (分析ルール名やタグに基づくなど)、この Playbook をトリガーする新しい自動化ルールを Sentinel に作成します。
セキュリティのヒントとベスト プラクティス
- マネージド ID を使用する: Playbook の認証には、資格情報や API キーを保存するのではなく、常にマネージド ID を使用します。
- Playbook に対する最小権限の原則: Playbook には、アクションを実行するために厳密に必要な権限のみを付与します。たとえば、Playbook がデータの読み取りのみを必要とする場合は、書き込み権限を付与しないでください。
- 開発環境でのテスト: Playbook を運用環境にデプロイする前に、予期せぬ結果を避けるために、開発環境またはテスト環境で徹底的にテストしてください。
- Playbook の監視: Playbook の実行履歴を監視して、失敗や予期しない実行を検出します。 Playbook の失敗に対するアラートを構成します。
- ドキュメント: 各 Playbook が何を行うのか、どのような権限を持つのか、どのようにトリガーされるのかを明確に文書化します。これはメンテナンスと監査にとって重要です。
- バージョン管理: バージョン管理システムを使用します。バージョン (Git など) を使用して Logic Apps のソース コードを管理し (ARM モデルをエクスポート)、変更の追跡とコラボレーションが可能になります。
- 破壊的なアクションに対する人間による承認: 本番環境に影響を与える可能性のある修復アクション (重要なサーバーの隔離など) については、Playbook に人間による承認ステップを追加することを検討してください (アダプティブ カードを介して承認/拒否オプションを含む電子メールを送信するなど)。
一般的なトラブルシューティング
- Playbook がトリガーされません: Sentinel で自動化ルールを確認してください。インシデントがルール条件を満たしていることを確認してください。 Playbook トリガーが正しく構成されていることを確認します。
- Playbook の実行に失敗する: ロジック アプリの実行履歴を確認して、失敗したステップとエラー メッセージを特定します。一般的な原因としては、権限が不十分であること、パラメータが正しくないこと、接続の問題が挙げられます。
- アクセス許可エラー: Logic Apps マネージド ID が、アクセスしようとしているリソース (Sentinel、NSG、Azure AD など) に対して必要な RBAC アクセス許可を持っていることを確認します。
- 無限ループ: プレイブックが同じインシデントを再びトリガーして無限ループを引き起こすアクションを実行しないように注意してください。これを防ぐには、自動化ルールで条件を使用します。
- コネクタの問題: 既知の制限や問題については、使用しているロジック アプリ コネクタのドキュメントを確認してください。接続が正常かどうかを確認します。
結論
Azure Sentinel の Playbook を使用したインシデント対応の自動化は、あらゆるセキュリティ チームにとって革新的な機能です。反復的なタスクを自動化し、修復アクションを調整することで、組織は脅威への対応時間を大幅に短縮し、SOC の効率を高め、一貫した標準化されたインシデント対応を保証できます。 Azure Logic Apps の柔軟性により、単純な通知から複数のツールにわたる複雑な修復チェーンに至る自動化ワークフローを作成できます。この実践的なガイドにより、セキュリティ専門家は Microsoft Sentinel の SOAR の力を活用するための十分な準備を整え、セキュリティ運用をより機敏かつ効果的にし、進化し続ける脅威の状況の課題に対応できるようになります。
参考文献:
[1] Microsoft Learn。 Microsoft Sentinel の自動化ルールを使用して脅威への対応を自動化します。入手可能場所: https://learn.microsoft.com/pt-br/azure/sentinel/automate-incident-handling-with-automation-rules [2] Microsoft Learn。 SOAR (セキュリティ オーケストレーション、自動化、および応答) とは何ですか?。入手可能場所: https://learn.microsoft.com/pt-br/azure/sentinel/what-is-soar [3] Microsoft Learn。 Microsoft Sentinel のアクセス許可。入手可能場所: https://learn.microsoft.com/pt-br/azure/sentinel/roles [4] Microsoft Learn。 Microsoft Sentinel プレイブックを作成および管理。入手可能場所: https://learn.microsoft.com/pt-br/azure/sentinel/automation/create-playbooks [5] Microsoft Learn。 Azure Sentinel 自動化ルールを作成して使用し、応答を管理します。入手可能場所: https://learn.microsoft.com/pt-br/azure/sentinel/create-manage-use-automation-rules