次の方法で共有


Jupyter ノートブックと Microsoft Sentinel ハンティング機能

Jupyter Notebook を使用すると、高度なプログラミング性と膨大なライブラリ コレクションを組み合わせて、機械学習、視覚化、データ解析を行えます。 こうした特性から、Jupyter は、セキュリティの調査や検出にうってつけのツールとなっています。

Microsoft Sentinel の基盤となるのは、ハイ パフォーマンス クエリと動的スキーマを併用して大規模なデータ ボリュームまでスケーリングするデータ ストアです。 Azure portal とすべての Microsoft Sentinel ツールでは、このデータ ストアにアクセスする際に、共通の API が使用されます。 Jupyter Notebook や Python などの外部ツールでも、同じ API を使用できます。

重要

Microsoft Sentinel は、Microsoft Defender XDR または E5 ライセンスを持たないお客様を含め、Microsoft Defender ポータルで一般提供されています。 詳細については、 Microsoft Defender ポータルの Microsoft Sentinel を参照してください。

Jupyter Notebook を使用するタイミング

ポータルでは多くの一般的なタスクを実行できますが、Jupyter では、データに対して、より幅広い処理が可能です。

たとえば、次の目的にノートブックを使用します。

  • 一部の Python 機械学習機能など、Microsoft Sentinel ですぐに使用できない分析を実行する
  • カスタム タイムラインやプロセス ツリーなど、Microsoft Sentinel ですぐに使用できないデータ視覚化を作成する
  • オンプレミスのデータ セットなど、Microsoft Sentinel の外部のデータ ソースを統合します。

Jupyter のエクスペリエンスが Azure portal に統合されているため、簡単にノートブックを作成して実行し、データを解析できます。 Kqlmagic ライブラリには、Microsoft Sentinel から Kusto クエリ言語 (KQL) クエリを取得し、ノートブック内で直接実行できる接着剤が用意されています。

Microsoft Sentinel には、Microsoft のセキュリティ アナリストが開発した複数のノートブックがパッケージされています。

  • これらのノートブックの中には、特定のシナリオ向けに作成され、そのまま使用できるようになっているものがあります。
  • 一方、技術や機能を説明するサンプルとして作成されたものもあります。これをコピーまたは改造して、独自のノートブック内で使用することができます。

Microsoft Sentinel GitHub リポジトリから他のノートブックをインポートします。

Jupyter Notebook のしくみ

ノートブックは、次の 2 つのコンポーネントから構成されています。

  • クエリとコードを入力して実行し、実行の結果が表示されるブラウザー ベースのインターフェイス
  • コード自体の解析と実行を担当するカーネル

Microsoft Sentinel ノートブックのカーネルは、Azure 仮想マシン (VM) で実行されます。 VM インスタンスは、一度に多数のノートブックを実行することをサポートします。 ノートブックに複雑な機械学習モデルが含まれている場合は、より強力な仮想マシンを使用するためのライセンス オプションがいくつか存在します。

Python パッケージについて

Microsoft Sentinel ノートブックでは、 pandasmatplotlibbokeh などの多くの一般的な Python ライブラリが使用されています。 次の分野に対応したその他の多数の Python パッケージから選択することもできます。

  • 視覚化とグラフィックス
  • データ処理と解析
  • 統計と数値計算
  • 機械学習とディープ ラーニング

複雑で反復的なコードをノートブックセルに入力または貼り付ける必要を回避するために、ほとんどの Python ノートブックは パッケージと呼ばれるサードパーティ製ライブラリに依存しています。 ノートブックでパッケージを使用するには、パッケージをインストールしてインポートする必要があります。 Azure Machine Learning コンピューティングには、一般的なパッケージのほとんどがプレインストールされています。 パッケージ、またはパッケージの関連部分 (モジュール、ファイル、関数、クラスなど) をインポートしていることを確認します。

Microsoft Sentinel ノートブックでは、 MSTICPy と呼ばれる Python パッケージを使用します。これは、データの取得、分析、エンリッチメント、視覚化のためのサイバーセキュリティ ツールのコレクションです。

MSTICPy ツールは、特に検出や調査用のノートブックの作成に役立つように設計されており、新機能の開発や改良が鋭意進められています。 詳細については、次を参照してください。

ノートブックを検索する

Microsoft Sentinel で[ ノートブック ]を選択すると、Microsoft Sentinel によって提供されるノートブックが表示されます。 Azure Log Analytics での資格情報スキャンガイド付き調査 - プロセス アラートなどのノートブック テンプレートを調べ、脅威ハンティングと調査でノートブックを使用する方法について説明します。

Microsoft によって構築されたノートブックやコミュニティから提供されたノートブックについては、 Microsoft Sentinel GitHub リポジトリにアクセスしてください。 Microsoft Sentinel GitHub リポジトリでは、独自のノートブックを開発するときに使用できる役立つツール、図、コード サンプルとして、共有されているノートブックを使用します。

  • Sample-Notebooks ディレクトリにはデータと共に保存されるサンプル ノートブックが含まれており、目的の出力を表示するために使用できます。

  • HowTos ディレクトリには、既定の Python バージョンの設定や、ノートブックからの Microsoft Sentinel ブックマークの作成などの概念を説明するノートブックが含まれています。

Microsoft Sentinel ノートブックへのアクセスを管理する

Microsoft Sentinel で Jupyter のノートブックを使用するには、まず、ユーザーの役割に応じた適切なアクセス許可が必要です。

JupyterLab または Jupyter クラシックで Microsoft Sentinel ノートブックを実行できますが、Microsoft Sentinel では、ノートブックは Azure Machine Learning プラットフォームで実行されます。 Microsoft Sentinel でノートブックを実行するには、Microsoft Sentinel ワークスペースと Azure Machine Learning ワークスペースの両方に適切なアクセス権が必要です。

権限 説明
Microsoft Sentinel のアクセス許可 他の Microsoft Sentinel リソースと同様に、[Microsoft Sentinel Notebooks] ブレードでノートブックにアクセスするには、Microsoft Sentinel 閲覧者、Microsoft Sentinel レスポンダー、または Microsoft Sentinel 共同作成者のロールが必要です。

詳細については、「 Microsoft Sentinel のアクセス許可」を参照してください。
Azure Machine Learning のアクセス許可 Azure Machine Learning ワークスペースは Azure リソースの 1 つです。 他の Azure リソースと同様に、新しい Azure Machine Learning ワークスペースが作成されるときに、既定のロールが提供されます。 ワークスペースにユーザーを追加し、これらの組み込みロールのいずれかに割り当てることができます。 詳細については、 Azure Machine Learning の既定のロールAzure の組み込みロールに関するページを参照してください。

重要: ロール アクセスのスコープは、Azure の複数のレベルに設定できます。 たとえば、ワークスペースへの所有者アクセス権を持つユーザーであっても、そのワークスペースが含まれるリソース グループへの所有者アクセス権を持っていないことがあります。 詳細については、「 Azure RBAC のしくみ」を参照してください。

Azure ML ワークスペースの所有者である場合は、ワークスペースのロールを追加および削除し、ロールをユーザーに割り当てることができます。 詳細については、次を参照してください。
- Azure portal
- PowerShell
- Azure CLI
- REST API
- Azure Resource Manager テンプレート
- Azure Machine Learning CLI

組み込みロールが十分ではない場合は、カスタム ロールを作成することもできます。 カスタム ロールには、そのワークスペース内のリソースの読み取り、書き込み、削除、コンピューティングのアクセス許可を与えることができます。 ロールは、特定のワークスペース レベル、特定のリソース グループ レベル、または特定のサブスクリプション レベルで使用できるようにすることができます。 詳細については、「 カスタム ロールの作成」を参照してください。

ノートブックのフィードバックを送信する

フィードバック、機能の要求、バグ レポート、または既存のノートブックの改善点を送信します。 Microsoft Sentinel GitHub リポジトリに移動して問題を作成するか、投稿をフォークしてアップロードします。

ブログ、動画、その他のリソースについては、以下を参照してください。