1. はじめに
この度、Microsoft Sentinel の SOAR 機能(ロジックアプリ)を活用して、Azure OpenAI に RESTAPI で接続して、セキュリティインシデント情報を分析・活用することを学習できる実践ワークショップを作成しました。
本ワークショップを通じて、Azure OpenAI との接続方法(認証方式、RESTAPI フォーマットなど)、Microsoft Sentinel インシデント情報を活用するためのアイデア、ChatGPT 3.5/GPT-4
モデルに対する ChatCompletion API を学習することが出来るようになっています。
Azure 環境であれば、そのまま Azure OpenAI サービスを申請 & デプロイいただき Microsoft Sentinel と連携が出来るようになりますので、ご興味がある方は是非試していただければと思います。
2. コンテンツ
ワークショップのコンテンツはこちらです。
以下 GitHub レポジトリにて公開していますのでご確認下さい。
3. 体験できること
以下の順番で演習を進めることで、接続方法や ARM テンプレートを用いて Azure OpenAI との連携がテスト出来るコンテンツになっています。
- 事前準備 Azure OpenAI サービスの作成
- 演習1. Azure OpenAI ロジックアプリを用いて、メールによる応答を実践する
- 演習2. Microsoft Sentinel のインシデントトリガーを用いて、ロジックアプリを用いて Azure OpenAI に分析ルールの翻訳を実行させる
- 振り返り Azure OpenAI の prompt 活用を考える
- 演習3. [応用] Microsoft Sentinel のインシデント情報から Azure OpenAI への問い合わせをカスタマイズする
- FAQ
4. SOAR 機能によって様々なことが出来る Azure OpenAI 連携
演習の中で ARM テンプレートを配布しています。
このテンプレートを活用いただくことで、以下のようなセキュリティオペレーターの支援を行います。
4. 応用パッケージ
幾つかのフィードバックから、Microsoft Sentinel のスケジュール分析ルールで設定されている KQL (Kusto Query) が何をやっているのか、Azure OpenAI で解説させるパッケージも作成いたしました。
Sentinel のテンプレートルールを導入頂くお客様は多いと思いますが、実際にこのルールがどのような目的で検知されたのかルール原文を確認したい方は多いと思いますが、KQL の知識が必要になります。このテンプレートを導入いただくことで、検知したインシデントで使われた分析ルールの KQL を解説してくれます。
5. 裏技あります
Chat Completion API の Re内容をカスタマイズすることで、「~風」な日本語で返す裏技があります。いつも大変なセキュリティオペレーションですが、こういった遊びも宜しければ楽しんで下さい。
6. というわけで
以前、Microsoft Sentinel と本家 OpenAI の連携は実践したのですが、テンプレート化も含めて Azure OpenAI 版を作成いたしました。メリットとして、Azure サブスクリプションでの一括請求になることや、セキュリティ的な恩恵を受けること(API キー接続では無くAAD 認証など)、また様々な応用が利きますし Microsoft Sentinel のインシデント発生件数を考えると Azure OpenAI の活用はコスト的にも安価なので、色々と試して頂ければと思います。
もしご意見などありましたら、GitHub レポジトリの方でコメントなど頂ければ幸いです。
それでは皆様楽しい Microsoft Sentinel ライフを!
本記事がどなたかの参考になれば幸いです。
*本稿は、個人の見解に基づいた内容であり、所属する会社の公式見解ではありません。また、いかなる保証を与えるものでもありません。正式な情報は、各製品の販売元にご確認ください。