Azure Sentinel に Azure AD と Identity Protection のログを取り込んで可視化してみる

#はじめに
Azure Sentinel は 2019 年 9 月にリリースされた新しい Azure のサービスで、クラウトネイティブの SIEM (Security Information and Event Management ) ソリューションです。

セキュリティ に関するログは、ファイアウォールや WAF やコンピューター単位など、様々なサービス、機器単位で出力されています。

それらのログを製品カットで監視、運用していくのは非常にコストのかかる作業なので、ログを集約、可視化して一括管理しましょう、というのが Azure Sentinel の主な役割の一つです。

また、SIEM の物理製品は高価で、既存のシステムに NW 的に組み込むのも大変、というイメージをお持ちの方もいるかと思いますが、Azure Sentinel はログを収集する Log Analytics ワークスペース に取り込まれた***データ量で課金される従量課金制***なので、スモール スタートできるという意味でもメリットがあります。

-参考情報
Azure Sentinel の価格
URL:https://azure.microsoft.com/ja-jp/pricing/details/azure-sentinel/

構成方法は、Azure AD のサインインログなど、エージェントレスで数回のクリックで構成できる方法と、API を利用して構成する方法、もう1つは下記画面ショットのように Syslog エージェントをインストールして、各 Syslog ソースを取り込む方法があります。

Syslog エージェントを Azure VM 上にインストールするパターン
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/373423/bd5583bb-0f9e-8ce3-b0a0-27548150cbc8.png)

Syslog エージェントをオンプレミスのコンピューターにインストールするパターン
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/373423/ea5fffc2-4ad9-f35c-1374-450a4632605b.png)

-参考情報
データ ソースの接続
URL:https://docs.microsoft.com/ja-jp/azure/sentinel/connect-data-sources

今回は Azure AD 上のサインインログと監査ログ、Azure AD Identity Protection のリスクイベントを Azure Sentinel に取り込んで可視化してみたいと思います。

#やってみる
作業概要は以下のとおりです。

1. Azure Sentinel を有効にする
2. データソース (Azure AD と Azure AD Identity Protection) に接続する
3. Azure AD Identity Protection でリスクを疑似的に発生させる
4. Azure Sentinel のオンボードで確認する

※今回は ¥22,500 分を 30 日間使える無料サブスクリプションで検証をしています。

-参考情報
Azure の無料アカウントを今すぐ作成しましょう
URL:https://azure.microsoft.com/ja-jp/free/

#####1. Azure Sentinel を有効にする

Azure ポータルで Azure Sentinel と入力し、表示されたサービスをクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/373423/afabbbc1-9af5-980f-44ed-33dab23a9448.png)

Azure Sentinel ワークスペースで「＋追加」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/373423/9289a614-b8be-3087-9c5b-539fad88d02c.png)

まだ Log Analytics のワークスペースが作成されていない状態なので、「＋新しいワークスペースの作成」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/373423/cecdb5d6-d1ba-8879-590d-b0e835e3e572.png)

必須項目を選択、入力して、「価格レベル」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/373423/7e3cc538-cd53-99ed-3c06-71e004ee0624.png)

価格レベルが従量課金制であることを確認し、「次：タグ」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/373423/6ecd230f-315d-6e34-745f-aa5cb580bbbf.png)

リソースにタグ付けしたい場合はここで設定します、今回はそのまま「次：確認および作成」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/373423/161e73c1-0613-f03c-4afc-f243abb77a36.png)

検証に成功することを確認し、「作成」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/373423/9da8c1e2-3f10-da96-2ec9-54accce6576b.png)

ワークスペースが作成されたことを確認します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/373423/9f861098-7f51-41f9-b1a4-af33db0405ac.png)

最後に、このワークスペースを Azure Sentinel が使えるようにするために、画面左下の「Azure Sentinel の追加」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/373423/a3e4d1f9-79aa-b7de-6cd0-37915a9beca7.png)

Azure Sentinel  が利用できるようになりました。
概要画面を見ると、ログをまだ何も取り込んでいないので、当然ですが、脅威はなにも検出されていません。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/373423/3e0a7d5b-f089-871d-6cb3-b3fd671fcea0.png)

次は Azure AD のログと Identity Protection のリスクを取り込みます。

#####2. データソース (Azure AD と Azure AD Identity Protection) に接続する

Azure Sentinel 左ペインより、構成欄の「データ コネクタ」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/373423/0df2790d-d933-c1df-204a-ea6fefec39ee.png)

こちらがデータ コネクタの画面です、コネクタ数が「39」あることから、39 種類のサービスおよびアプライアンスのログを取り込めるということが分かります。この中で一番上の「Azure Active Directory」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/373423/a1270d61-c623-69e9-52f9-faedae6f7767.png)

画面右の「コネクタ ページを開く」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/373423/16acb93b-a17a-7e25-b874-af0569bb4b77.png)

画面真ん中下にある、Azure Active Directory Sign-in logs の「接続」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/373423/0285cc4b-15bc-63a3-454d-3ca6ce774972.png)

Sign-in logs が enabled になったことを確認します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/373423/d9816e02-9b1c-fa38-c350-81d2aa07ecd5.png)

同じように Azure Active Directory の監査ログの「接続」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/373423/826bd544-ea18-ccd0-6227-3a2bf3f62cbf.png)

監査ログが enabled になったことを確認します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/373423/7188c1ed-f552-ec27-9166-dc7909ee55b5.png)

これで Log Alanytics のワークスペースにサインイン ログと監査ログが取り込まれます。
しばらく待つと下記画面ショットのように Azure Active Directory のデータ コネクタの状態が「接続済み」となります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/373423/55888726-feed-d583-45fe-a7a9e70d85f8.png)

Azure Sentinel の概要画面に戻ると、下記画面ショットのようにログが取り込まれていることが確認できました。
次に Identity Protection のリスクを取り込んでみます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/373423/42397fba-e358-ce2c-bd51-e7c0b1b88afa.png)

概要画面の左ペインより、「データ コネクタ」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/373423/98e65442-977c-cf11-a1f3-80589834328d.png)

データ コネクタの画面より、「Azure Active Directory Identity Protection」を選択し、画面右下の「コネクタ ページを開く」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/373423/798ea097-804f-04c6-b9b0-5df7d2df9992.png)

画面中央にある、「接続」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/373423/a6329cdb-b0f8-c0a7-0a95-6d14dbb87286.png)

正常に接続されました、と表示されることを確認します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/373423/bdd3a2c2-faed-ae89-779f-ab5ab766f2f1.png)

同じ画面上で、Create incidents の項目にある、「Enable」をクリックします。
これにより、リスクを検知した際に、自動的にインシデントが作成されます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/373423/a712b129-52de-3d7e-bc67-2b1955ac3992.png)

インシデント ルールが作成されたことを確認します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/373423/f50cfaa7-f62f-eacc-ed5f-fd61df2fec20.png)

この状態ではリスクを Azure Sentinel 上で表示できるようになりましたが、Identity Protection がリスクを検知していないので、画面上にはインシデントとして検知していません。
次は疑似的にリスクを発生させます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/373423/aad85deb-717a-092a-19ab-7b79ac4a97ba.png)

#####3. Azure AD Identity Protection でリスクを疑似的に発生させる

Identity Protection で疑似的にリスクを検知させる方法として、Tor Browser というブラウザを利用します。
Tor Browser を利用することで、Office 365 アプリケーションにアクセスした際に「匿名 IP アドレス」からアクセスしたと判定されます。

Tor Browser のリンクと作業手順は以下 Microsoft の公開情報に記載されていますので、参考にしてみてください。

-参考情報
匿名 IP アドレス
URL:https://docs.microsoft.com/ja-jp/azure/active-directory/identity-protection/howto-identity-protection-simulate-risk#anonymous-ip-address

作業としては実にシンプルで、Tor Browser を開いて、下記画面ショットのように Azure AD ユーザーで Office 365 ポータルにサインインするだけです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/373423/07a74be5-c994-0bd9-5bd3-04db2083cb51.png)

しばらくすると、サインイン ログに記録されるとともに、下記画面ショットのように Identity Protection の「危険なユーザー」に「匿名 IP アドレス」としてリスクが検知されたことが確認できます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/373423/c8b6b804-b49c-5424-682c-9fa8db99434b.png)

リスクが検知された状態で、Azure Sentinel 上ではどのように表示されているのか確認してみます。

#####4. Azure Sentinel のオンボードで確認する

Azure Sentinel の概要画面を見ると、インシデントの数字がカウントアップされていることが確認できました。
画面右の最新のインシデントより、「Anonymous IP address」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/373423/49ae95c8-b4b3-56b0-2ef1-2716dfbd73ad.png)

インシデントの詳細が確認できます。画面左下の「調査」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/373423/34f7e6b4-ccc6-98e9-37be-53c071d26bb3.png)

すると、このインシデントに関連するイベントも含め、関連図がマップされます。一つアラートを選択してみます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/373423/a28198ad-421c-16e7-7196-fc2038e2574b.png)

本来東日本リージョン上の VM なので、日本からアクセスするのが「既知の場所」なのですが、Tor Browser 経由でアクセスしたことにより、「New York」からアクセスされたと判定されていますね。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/373423/691e5bff-c6d0-4266-c304-c5136d9b0e16.png)

そのほかにも画面右の「タイムライン」をクリックすることで、時系列ごとにイベントを確認できます。
このように、一人のリスクのあるユーザーに紐づいたアクションを時系列で可視化できるので調査にかかる時間的コストを削減できます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/373423/253888cf-f39e-8299-8fd8-5babd6574938.png)

インシデントの調査方法は Microsoft の公開情報にもまとめられているので、参考にしてみてください。

-参考情報
チュートリアル:Azure Sentinel でインシデントを調査する
URL:https://docs.microsoft.com/ja-jp/azure/sentinel/tutorial-investigate-cases

#おわりに
今回は、Azure が提供しているクラウドネイティブの SIEM ソリューションである Azure Sentinel を触ってみました。
ほんの一部の機能を紹介しましたが、Log Analytics ワークスペースにログを取り込める環境でれば、比較的簡単に Azure Sentinel と連携することができます。

Azure の無料試用版のサブスクリプションですら Azure Sentinel の利用を開始できるので、従量課金制になることで、値段が高いイメージのある SIEM へのハードルが下がったのではないかと思います。

少しでも今回の記事が Azure Sentinel ご利用の参考になれば幸いです。