はじめに
Recorded Future Collective Insights は新しいタイプの分析であり、組織にとって重要な脅威の全体像をクライアントに提供します。Collective Insights 、すべてのクライアント統合にわたる監視を集約して、すべての監視にわたる傾向を表示することができます。これにより、 Threat IntelligenceおよびSecOps Intelligenceユーザーは、ネットワーク全体でどの監視とTTPs最も一般的であるかに基づいてアクションを優先順位を付けて、クライアント ネットワークをより適切に防止および保護できるようになります。 この記事では、Microsoft 365 DefenderのCollective Insightsを設定する方法について説明します。 Recorded Future Collective Insights API
このページでは、 Recorded Future Collective Insights for Microsoft 365 Defender を展開して、検知 をRecorded Futureに送信し、企業全体の傾向、パターン、分析情報を特定するためのインストール手順について説明します。
概要
Recorded Future 、Defender 365 からインシデントに関する情報をCollective Insightsに収集し、プラットフォーム全体でインシデントからのインジケーターとTTPs追跡できます。 具体的には、Recorded Future は次の Defender Security ツールから収集できます。
- Microsoft Defender エンドポイント
- Microsoft Defender Identity保護
- Microsoft Defender クラウドアプリ
- Office365 向け Microsoft Defender
- Microsoft 365ディフェンダー
- AzureAd Identity保護
- Microsoft アプリガバナンス
- クラウド向け Microsoft Defender
Recorded Future によって各インシデントから以下のフィールドが収集されます。
- createdDateTime - インシデントが作成された時刻
- title - インシデントのタイトル
- Id - インシデントの一意のID
- serviceSource - インシデントの発生元であるDefenderツール(上記のリストから)
- 検出ソース - 注目すべきコンポーネントまたはアクティビティを識別した検知技術またはセンサー
- mitreTechniques - インシデントに関連するTTPs
Defender Collective Insights の統合を実装する方法は 2 つあります。Azureロジックアプリを使用するか、Pythonスクリプトをデプロイして実行することができます
認証
Graph API への接続を認証するには、Azure Active Directory でアプリ登録を作成する必要があります。アプリの登録には、アプリケーションの (委任されていない) 権限SecurityAlert.Read.All が必要です。グローバル管理者がこれらの権限を付与する必要があります。アプリのクライアント ID を記録し、シークレットを生成してそれも記録します。統合にはクライアントIDとクライアントシークレットが必要です
ロジック アプリ (Python スクリプトではない) の場合、アプリ登録ではなくマネージド ID を介して Graph API へのアクセスを承認することもできます。マネージド ID にSecurityAlert.Read.All権限を追加する必要があります。これは Azure UI からは実行できないことに注意してください。このアクセスを許可するには、 PowershellまたはMicrosoft Graph API を使用する必要があります。
Recorded Future API に認証するには、API トークンが必要です。詳細については、 「API トークンのリクエスト」を参照してください。
インストール
Pythonスクリプト
このスクリプトを実行する前に、次の操作を行う必要があります。
- Python3.8を使用しているインストール済み
- Pythonモジュールrequestsをインストールします(pip install requests)
シークレットは、環境変数またはコマンドライン引数としてスクリプトに渡すことができます。
環境変数:
- RF_API_KEY : Recorded Future APIキー
- MS_CLIENT_ID : Azure AD クライアント ID
- MS_CLIENT_SECRET : Azure AD クライアントシークレット
- MS_TENANT : Azure テナント ID
あるいは、コマンドライン引数として:
- -k : Recorded Future APIキー
- -cid : Azure AD クライアント ID
- -cs: Azure AD クライアント シークレット
- -t: Azure テナント ID
このスクリプトは、統合を構成するための追加のコマンドライン引数もサポートしています。
- -l : インシデントを取得するために遡る日数。毎日実行する場合は1に設定する必要があります
- -fs : フィルター文字列。Collective Insights に取り込まれるインシデントをフィルタリングするためのカスタムODATA フィルター文字列を追加します。
- -ll:統合のログレベル
使用例: python3 365_collective_insights.py -k=<Recorded Future API Token> -cid=< Client ID> -cs=<Client Secret> -t=<tenant ID> -lb 1 -fs="serviceSource eq 'microsoftDefenderForEndpoint'"
ロジックアプリ
ここに記載されている手順に従って、添付の ARM テンプレートを使用してロジック アプリをインストールできます。