Expression Builder のユースケース
このドキュメントでは、Google Security Operations プラットフォーム全体で、ハンドブック アクション内に動的式を構築して実装する方法について詳しく説明するユースケースを紹介します。この機能は、式ビルダーを使用して、以前のアクションの結果(リストデータ、エンティティの詳細、スキャン レポートなど)から特定のデータを解析、フィルタリング、抽出して、後続のプレイブック ステップで複雑な自動化ロジックを駆動することに重点を置いています。
始める前に
始める前に、次の提案に従ってください。
- Qualys - List Scans を使用して、Qualys から最新のスキャンをすべて取得します(30 日間はハードコードされています)。
- 式ビルダーを使用して、最新のスキャンの ID(REF)をプレースホルダとして抽出し、VM スキャン結果をダウンロードします。VM スキャン結果で関連するレポートをダウンロードします。
- リスト オペレーションを使用して、レポートからネットワークの共通脆弱性識別子(CVE)で検出された脆弱性の識別子のリストを抽出し、ケースの CVE と比較します。
- IPS アラートを使用して、ハンドブックをトリガーします。
ユースケース: 侵入防止システム IPS
このユースケースでは、ネットワーク内の悪意のあるフローを検出したプレイブックを構築することを想定しています。
Qualys などの脆弱性管理ツールで、毎日のスキャンがスケジュールされているとします。
プレースホルダを作成する
プレースホルダを作成する手順は次のとおりです。
Active Directory_Enrich Entities
アクションから開始して、影響を受ける可能性のあるすべてのエンティティを拡充します。- Qualys VM – List Scans を使用して、ネットワーク マシンの最新のスキャン結果を取得します。
- 検出されたフローに対して脆弱性がある結果があるかどうかを判断します。
QualysVM_Download VM Scan Results_1
をご覧ください。プレースホルダと追加された式ビルダーが表示されます。
プレースホルダを追加する
プレースホルダを追加する手順は次のとおりです。
- [ ] プレースホルダ] をクリックします。[プレースホルダを挿入] ダイアログが表示されます。
- [Playbook] > [QualysVM_list_Scans_1_JSONResult] を選択します。
- [式ビルダー] アイコンをクリックします。式ビルダー ページが表示されます。
-
[式] フィールドに、次を追加します。式では、MAX を使用して日付
LAUNCH_DATETIME
で最新の結果を取得し、REF がスキャン ID である関連スキャンの特定のスキャン ID を抽出します。
例:| max(LAUNCH_DATETIME) | REF
- [実行] をクリックします。期待される結果が表示されます。
- [挿入] をクリックして、式ビルダーをプレースホルダの一部として含めます。
- ケースの CVE を使用して [アクション> リスト操作] をクリックします。
-
プレイブックがリアルタイムでトリガーされると、スキャン結果がサイド ドロワーに表示されます。PDF ファイルとして特定のスキャンも表示されます。
ユースケース: ログイン試行の失敗回数が多すぎる
このユースケースでは、エンティティ データを拡充してアラートの重大度を判断することで、ログイン試行の失敗に対処します。ユーザーの部署とパスワードの最終変更日をすばやく確認することが目的です。
- まず、
ActiveDirectory_Enrich
エンティティ アクションを使用して、アラートに関連付けられているすべての内部エンティティに関する詳細情報を収集します。 - 後続の分析情報メッセージで、式ビルダーを使用してターゲット ユーザーとその最終ログイン時刻を抽出します。
プレースホルダを追加する
これらのプレースホルダを追加するには:
- [メッセージ] フィールドで、[[ ] プレースホルダ] をクリックします。
-
[プレースホルダの挿入] ページで、
ActiveDirectory_Enrich entities_JSONResult
の横にある式ビルダー アイコンをクリックします。 -
式フィールドに次を追加します。これにより、エンティティ ID が選択されます。複数のエンティティが結果を返した場合は、カンマ区切りのリストとして取得します。
| Entity
-
[実行] をクリックすると、サンプル結果が表示されます。この場合は、
user@domain.com
です。 - [挿入] をクリックして、プレースホルダ メッセージの一部として使用します。関連するフリーテキストをメッセージに追加します。
-
[[ ] Placeholder] をクリックし、
ActiveDirectory_Enrich entities_JSONResult
の横にある式ビルダー アイコンをクリックします。 - 次の式を追加します。これは、指定されたユーザーの最終ログイン時刻を取得します。| EntityResult.lastLogon
- [挿入]、[保存] の順にクリックします。
-
プレイブックがリアルタイムでトリガーされると、[分析情報] ペインにメッセージが表示され、ユーザー名と最終ログイン時刻が表示されます。
ユースケース: VirusTotal ハッシュ分析
このユースケースでは、Kaspersky などの特定のスキャン エンジンからファイルハッシュの評判を抽出し、ファイルが有害かどうかを判断して、対応するエンティティを作成する方法を示します。
- VirusTotal_Scan Hash アクションを使用して、ファイル レポートを取得します。
後続のアクション Siemplify_Create または Update Entity Properties は、スキャン結果に基づいて Detected by Kaspersky
などのエンティティ プロパティを作成または変更します。
このプレースホルダを追加するには:
- [Field Value] フィールドで、[[] Placeholder] をクリックします。
-
[プレースホルダの挿入] ページで、
VirusTotal_ScanHash_JSONResult
の横にある式ビルダー アイコンをクリックします。
-
次の式を追加します。
| filter(EntityResult.scans.Kaspersky.detected, "=", "true") | Entity
複数のハッシュをスキャンした場合は、Kaspersky が悪意のあるものとしてマークしたすべてのエンティティ オブジェクトで結果をフィルタし、エンティティ名のみを返します。
- [挿入] > [保存] をクリックします。結果は実行時に表示されます。
さらにサポートが必要な場合 コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。