1. はじめに
Microsoft Sentinel を用いて、インシデント検知時に Zendesk への自動通知を設定したのでメモ。
自動通知については、シリーズ化していますので、他の通知設定例については以下をご参照下さい。
- Microsoft Sentinel を用いて、インシデントを Slack に自動通知させる
- Microsoft Sentinel を用いて、インシデントを Microsoft Teams に自動通知させる
- Microsoft Sentinel を用いて、インシデントをメール通知させる(O365コネクタ)
2. 構成図
本構成のシステム構成図を紹介します。
目的は Microsoft Sentinel を運用監視する際に、高インシデントが発生したタイミングで Zendesk にインシデントをチケットとして登録することが目的になります。
Microsoft Defender for Cloud は Microsoft Sentinel に対する脅威アラート生成として、今回はサンプルアラート機能を用いて検証を行っています。
[補足] Zendesk とは
Zendesk はクラウドサービスで提供するカスタマーサポート・サービス管理ツールです。
日本のお客様も事例で挙がっており、お客様の相談もあり Azure の Logic Apps を用いて検証を行いました。
- https://www.zendesk.co.jp/
Microsoft Azure では、Logic Apps コネクタで Zendesk との接続をサポートしています。(2022.2現在プレビュー機能)
詳細は以下公式ドキュメントをご参照下さい。
Logic Apps の Zendesk コネクタは以下の Action に対応しており、新規作成や削除、更新などが出来るようです。
今回は Create Item
を用いて、Zendesk にチケット登録するまでを設定してみます。
Action | Detail |
---|---|
Create Item | Creates a Zendesk item |
Delete item | Deletes a Zendesk item |
Get item | Retrieves a Zendesk item |
Get items | Retrieves Zendesk items of a certain Zendesk type (example: 'Ticket') |
Get tables | Retrieves Zendesk tables from a site |
Update item | Updates an existing Zendesk item |
3. 設定方法
- Microsoft Sentinel より、新たにプレイブックを作成します。
- Logics Apps で Zendesk コネクタを用いて接続します。
- Logic Apps のコネクタ内容を更新し、Zendesk 側の起票内容にマッピングします。
- Zendeskの Ticket テーブルに対して、Subject、Description、Priority を反映させました。
-
- API の仕様に拠るものなのか、Zendesk 側のTicket に起票できるフィールドは以下に限られていました。
-
エラーログから抜粋したところ、Zendesk 側の Ticket として起票できるフィールドが以下であることが分かります。
-
Zendesk 側でサポートされているフィールドはZendesk Developer サイトの公式ドキュメントを参照する必要があります。
- Logic Apps のコネクタより送信できるフィールドは全ての Ticket フィールドが対応している訳ではないため、注意が必要です。
- フィールドの Type も注意が必要です。
- Stringであれば、Microsoft Sentinel のフィールドとマッピングしても問題無いなど
-
- API の仕様に拠るものなのか、Zendesk 側のTicket に起票できるフィールドは以下に限られていました。
Valid fields are: 'id', 'url', 'external_id', 'type', 'subject', 'raw_subject', 'description', 'priority', 'status', 'recipient', 'requester_id', 'submitter_id', 'assignee_id', 'organization_id', 'group_id', 'collaborator_ids', 'forum_topic_id', 'problem_id', 'has_incidents', 'due_at', 'tags', 'via', 'custom_fields', 'satisfaction_rating', 'sharing_agreement_ids', 'followup_ids', 'ticket_form_id', 'brand_id', 'created_at', 'updated_at'
- Zendesk側の結果表示など試行錯誤した結果、マッピングする情報として以下を行いました。
-
subject
に対してはインシデントのタイトルを反映させる -
description
部分は単純にチケットのBODYとして用いられているようなので、複数のフィールドを入れる(今回はインシデントの説明、インシデントURL) -
priority
にはインシデントの重要度をマッピングする
-
Zendesk Field | Microsoft Sentinel Field |
---|---|
Subject | "インシデントのタイトル" |
description | "インシデントの説明" / "インシデントのURL" |
priority | "インシデントの重大度" |
4. 試してみる ~ 動作確認
今回は Microsoft Sentinel のアラート通知のため、Microsoft Defender for Cloud のサンプルアラート機能を用いました。
Microsoft Defender for Cloud では、IaaS/PaaS 環境に対する保護として Microsoft Defender シリーズの構成、導入を行える機能(CWPP - Cloud Workload Protection Platform)があり、サンプルアラートを生成する機能があります。
- Microsoft Defender for Cloud によるアラートを Microsoft Sentinel 経由で Automation 機能を経由して、Zendesk 側に通知した結果、無事 Zendesk 側でインシデントが作成されることを確認しました。
5. 注意事項など
Logic Apps コネクタ側の仕様にはスロットル制限や、サポートする対象フィールドなどの制約が記載されています。
コネクタの動作チェックやエラーなどを確認しながら、テスト頂くことをお勧めします。
6. まとめ
以上、Microsoft Sentinel のセキュリティインシデントを Zendesk に通知する設定例でした。
どなたかの参考になれば幸いです。
*本稿は、個人の見解に基づいた内容であり、所属する会社の公式見解ではありません。また、いかなる保証を与えるものでもありません。正式な情報は、各製品の販売元にご確認ください。