セキュリティチームの97%は、自組織のエクスポージャーが実際に悪用可能かどうかを判断できていません。あなたのチームは大丈夫ですか?レポートを読む
Filigran
敵対的エクスポージャー検証脅威インテリジェンス

OpenCTI + OpenAEV + Splunk ESCUによる脅威ハンティング

21 分で読めます
Threat Hunting with OpenCTI + OpenAEV + Splunk ESCU

脅威ハンティングのスコープを定義することは困難です。チームはリソースを優先順位付けしながら、潜在的な脅威の振る舞いと影響を理解し、スコープクリープを回避する必要があります。

MITRE脅威インフォームドディフェンスの原則に従い、効果的な脅威ハンティングはサイバー脅威インテリジェンスによって推進され、防御措置に対して検証されます。本記事では以下の方法を紹介します:

  • OpenCTIで優先インテリジェンス要件(PIR)を使用してハンティングに焦点を当てる
  • ATT&CKテクニックにマッピングされた関連Splunk ESCU検知を特定する
  • OpenAEVを活用して脅威をシミュレートし、検知を検証してギャップを埋める

要約

  • PIRでCTIを優先順位付けし、仮説ベースのハンティングを推進
  • OpenCTIでAPT38/Sapphire Sleetのダッシュボードを構築し、ハンティングをスコープ化
  • Splunk ESCU検知を取り込み、ATT&CKパターンにマッピング
  • 最近のキャンペーンとClickFix振る舞いによってスコープを絞り込む
  • SPLでハンティングを実行し、OpenAEVシナリオを通じて検知を検証
  • 結果を人材、プロセス、技術全体の改善に変換

脅威インフォームドハンティング:MITRE脅威インフォームドディフェンスによる脅威ハンティング

脅威ハンティングは単なる異常の検索ではなく、侵入が完全に展開する前に、意図的かつ積極的に敵対者の振る舞いを追跡することです。そして、規律ある調査と同様に、ハンティングの質はそれを導くフレームワークの質に依存します。焦点を絞り、反復可能で、敵対者の戦術に整合させるために、Splunk SURGEのPEAK脅威ハンティングフレームワークなどの構造化モデルを活用します。

この5幕構成のウォークスルーでは、検証可能な仮説の定義から、MITRE ATT&CKを通じたインテリジェンスのマッピング、OpenAEVによる露出検証まで、インテリジェンス駆動型ハンティングをエンドツーエンドで再現します。

第1幕:ハンティングの構築:検証可能な仮説、MITRE、PEAK

検証可能な仮説

脅威ハンティングには複数のハントタイプがあります:仮説駆動型、ベースライン駆動型、モデル支援型です。本ユースケースでは、脅威インフォームドディフェンスに最も整合する仮説駆動型ハンティングに焦点を当て、検証可能なステートメントから開始します。

「検証可能」なステートメントとは、検証または反証できる、敵対者の振る舞いに関する明確で具体的かつ証拠に基づいた主張を意味します。例えば:

  • 「Lazarusは私のデータを盗もうとしている。」検証不可能
  • 「Lazarusは接続プロキシを使用して内部ホストとC2間のトラフィックをルーティングする。」検証可能

この2番目のステートメントは検証可能であるため、ハンティングのスコープを設定できます。ここでMIRE脅威インフォームドディフェンスが構造を提供します:

MITRE脅威インフォームドディフェンス

脅威インフォームドディフェンスは、防御者と敵対者が常に学習し進化する継続的なプロセスです。

どの仮説を優先するかを決定する際、MITRE脅威インフォームドディフェンスはCTIをテストと評価に接続し、それを防御措置に使用できるようにします。

OpenAEV agents and security tool integrations

脅威インフォームドディフェンストライアングル

上記のように、脅威インフォームドディフェンスは3段階のサイクルを強調します:関連するCTIを特定し、環境内で振る舞いをテストおよび評価し、防御のギャップに対処し、繰り返します。

脅威ハンティングでは、これは以下のように変換されます:

  • セクター、地域、資産に関連するCTIを特定し優先順位付け
  • 攻撃パターン、インディケーター、マルウェアなどの詳細を抽出して仮説をスコープ化
  • データと環境内で振る舞いをテストし、必要に応じてシミュレーションを含める
  • 検知、防止、プロセスのギャップをレビュー

PEAKフレームワーク

仮説とプロセスが定義されたので、フレームワークで構造を確保しましょう。

サイバーセキュリティハンティングフレームワークは、適切なフェーズとステップに従って、構造化された方法でハンティングプロセスをスコープ化し洗練させるのに役立ちます。一般的なオプションにはSqrrlとTaHiTIがあります。このケースでは、Splunk SURGEのPEAKフレームワークを使用します。これは以下を意味します:

  • Prepare(準備): PIR、ダッシュボード化、仮説定義
  • Execute(実行): 明確なオブザーバブルと決定ポイントを持つスコープ化されたハント
  • Act(行動): 検知を検証し、SOPを更新し、改善を追跡
  • Knowledge(知識): APT38キャンペーンで使用されるWindowsおよびmacOSスクリプティングの知識
[PEAKの詳細については、Splunkの論文を参照してください:PEAK Threat Hunting Framework]

この時点で注目すべきは、脅威ハンティングは仮説を証明するだけでなく、検知カバレッジ、対応の明確性、チームの準備態勢などのSecOpsの成果を改善するために戦略的に活用されるべきだということです。

第2幕:ハンティングの開始:PIRを使用したCTIの優先順位付け

上記で説明した構造とプロセスを、具体的な例を通じて実現しましょう:シンガポールの教育セクターを標的とする脅威のエンドツーエンドハンティングを、OpenCTI、Splunk ESCU、OpenAEVを活用して実施します。

優先インテリジェンス要件(PIR)の定義

ハンティングを開始するには、優先インテリジェンス要件(PIR)でインテリジェンスを優先順位付けすることが重要です。

OpenCTI PIRマネージャーで以下のPIRを定義しましょう:

「過去90日間にシンガポールの教育セクターを標的とする脅威」
image 1

OpenCTIは即座にこの要件を多次元のインテリジェンスビューに展開します:脅威マップ、トレンドとなっている侵入セット、キャンペーンのタイムライン、被害者学の要約です。

これを使用して、特定の情報とビジュアルのために初期PIRを掘り下げることができます。

image 2

脅威の発見

このケースでは、「Sapphire Sleet」侵入セットが脅威マップ上で、地域的整合性、高い関連性、最近の活動に基づいて、明らかに優先度の高い脅威として際立っています。

image 3

Sapphire Sleetを焦点となる脅威アクターとして設定しましょう。

脅威ハンティングのためのPIRからのCTI特定

OpenCTIのPIRビューに戻ると、この特定の「Sapphire Sleet」脅威アクターについての詳細な情報にジャンプできます。これには以下が含まれます:

  • 脅威の別名(BlueNoroff/APT38)
  • 標的となる地域(シンガポールを含む)
  • 既知のキャンペーン
  • 関連するマルウェア
  • ATT&CKテクニック
  • 参照とレポート
image 1 1

他の様々なコンテキスト詳細とともに、Sapphire Sleetが公開レポートでAPT38/BlueNoroffと関連していることがわかります。被害者学にはシンガポールと大学のターゲットが含まれており、これは初期PIRとよく整合しています。

picture4

このハンティングをスコープ化するために、異なる攻撃パターンとマルウェアを掘り下げて振る舞いを調査できます。

222

キャンペーンとTTPビューをスクロールすると、大量の過去の活動が明らかになります。焦点の定まらないハンティングを避けるため、スコープを最近のキャンペーンのみに絞り込みます。

第3幕:CTI駆動型オペレーショナルコックピットのセットアップ

コンテキスト脅威ハンティングダッシュボード

OpenCTIは事前構築されたダッシュボードを提供し、独自のダッシュボードを構成する機能もあります。このケースでは、特定の仮説作成とスコーピングをサポートするため、Sapphire Sleet(APT38/BlueNoroff)に関するカスタムダッシュボードを構築しましょう。

ダッシュボードに、レポートと実用的な洞察の両方のための4つのセクションを設定しましょう:概要とハイレベルインディケーター、脅威概要、最近の活動、推奨される緩和策と検知です。

概要とハイレベルインディケーター

ダッシュボードの目的に関する洞察を得て、マルウェア、レポート、キャンペーン、攻撃パターン、関連するSIEM検知(Splunk ESCU)のカウントなどのハイレベルインディケーターを表示します。

これにより、特定のマルウェア、レポート、キャンペーン、または攻撃パターンを中心にスコープ化するかどうかを決定できます。

image 2 1

脅威概要

Sapphire Sleetが使用するトップTTPとマルウェア、および標的国のマップを強調表示します。これを使用して、テクニックまたはマルウェアごとに仮説を優先順位付けし、地域でフィルタリングできます。

image 3 1

最近の活動

取り込まれたインテリジェンスからのすべてのキャンペーンとレポートをリストします。

これを使用して、全体的な侵入セットにスコープを設定するか、より豊富なコンテキストを持つ最近のキャンペーン/レポートに焦点を当てるかを決定します。

image 4

推奨される緩和策と検知

推奨される検知と緩和策は、最もATT&CKカバレッジを持つコースオブアクション(COA)オブジェクトと、攻撃パターンごとの最新のCOAを表示します。ここでは、COAはSplunk Enterprise SecurityからインポートされたSplunk ESCU検知を表します。これらを、環境内で検証する必要がある出発点として扱います。

image 5

Splunk ESCUのOpenCTIへの取り込みとATT&CKパターンへのマッピング

CTIを運用化するために、Splunk ESCU検知をCOAとしてOpenCTIに統合します。

これを実行するには、以下の前提条件が必要です:
Splunk Enterprise SecurityおよびDA-ESS-ContentUpdateアプリ(ESCU)へのアクセス
REST検索を実行する権限
OpenCTIアクセスとCSVマッパー機能

REST経由でのESCU検知のエクスポート

Splunk ESからESCUコンテンツをエクスポートし、DA-ESS-ContentUpdateアプリ(ESCU検知のみ)に焦点を当てます。重要なフィールドには、検知タイトル、説明、SPL、ATT&CKテクニックID、テクニック名が含まれます。

image 6

関連フィールドを抽出するSPLの例を以下に示します:

Copied!

1| rest /services/saved/searches splunk_server=local
2| search eai:acl.app="DA-ESS-ContentUpdate" is_visible=1 disabled=0
3| table title description search annotations.mitre_technique_id annotations.mitre_technique

次のようなサンプル出力カラムを構築することもできます:title、description、search、mitre_technique_id, mitre_technique

image 7

検知をATT&CK IDにマッピング

簡単にするため、検知をCSVとしてエクスポートし、構成されたCSVマッパーを使用してOpenCTIに取り込みました

3trgt

マッピングロジック:

  • 各検知を名前と説明+検索コンテンツを持つSTIX 2.1コースオブアクション(COA)として作成
  • mitre_technique_idとmitre_techniqueをATT&CK攻撃パターンSDOにマッピング
  • 「mitigates」タイプのCOA→攻撃パターンリレーションシップを作成
  • 簡単なフィルタリングと重複排除のため、インポートされたすべての検知に「siem-splunk-escu-detection」のラベルを付与
注意: この取り込みはテストのために手動で実行されました。Splunkコネクタを拡張することで自動化できます。(GitHubイシューまたはリポジトリ)

これでOpenCTIに戻り、結果として得られたオブジェクトを確認できます:

image 8
image 9

これによりOpenCTIはCTI駆動型検知カタログに変わり、どのESCU検知がどのATT&CKテクニックをカバーしているか、そしてそれらのテクニックが選択した脅威アクターにとって重要かどうかを明らかにします。

第4幕:ハンティングの実行

ハンティングスコープの絞り込み

広範で焦点の定まらないハンティングは、リソースの消耗と無駄な作業を生み出します。したがって、ハンティングの特定要素を強調し、焦点を当てることが非常に重要です。

ダッシュボードに戻り、最近の活動で、2つのキャンペーンが際立っています:BlueNoroffの「GhostCall」と「GhostHire」です。

picture6

これらのキャンペーン内で、重要な観察が現れます:

被害者は「Zoomを更新」するようにソーシャルエンジニアリングされ、ZIPベースのペイロードをダウンロードするClickFixスクリプトをトリガーします。攻撃面はmacOSとWindowsにまたがります。

これで、明確な検証可能なステートメントを導き出すことができます:

「Sapphire SleetはmacOSとWindows上でClickFixスクリプトを使用して、複数段階のアーティファクトをダウンロードおよび実行する。」

これを念頭に置いて、OpenCTIのキャンペーンATT&CKビューで特にClickFix振る舞いをテストできます。

そこで、最も近いテクニックはコマンドおよびスクリプティングインタープリタ→AppleScriptであり、スクリプトベースの実行を示しています。

image 10

即座に、関連オブジェクトがAppleScriptとClickFix間のリンクを示していることがわかります。

image 11

緩和策には2つの関連するSplunk ESCU検知(1つはWindowsフォーカス、1つはmacOSフォーカス)が表示されます。

Melinda Marks

例えば、「Windows PowerShell FakeCAPTCHA Clipboard Execution」は潜在的なFakeCAPTCHA/ClickFixクリップボードハイジャックに言及し、参照SPL検索を含んでいます。

image 1 2

この洞察が得られたので、これらの検知を出発点として使用できます。

スコープに対するハンティング

SplunkのESCUでは、検知の背後にある多くのSPLは、効率とリソース節約のためにSplunkのベストプラクティスデータモデルである共通情報モデル(Splunk CIM)に対してtstatsを実行することに基づいています。

ESCU検知SPLの背後にあるSplunk tstatsベースのSPLを出発点として使用できます。ただし、これを行うには、適切なCIMマッピングが必要であり、これはほとんどの有名なデータソースについてSplunkbaseからダウンロード可能なテクノロジーアドオン(TA)で実現できます。

image 2 2

CIMが整備されていない場合、同じロジックを維持しながら生のイベントに切り替えることができます。Windowsフォーカスのハンティング例(簡素化版):

Copied!

1index=windows EventCode=4104 OR SourceName=PowerShell
2| search (Clipboard OR Set-Clipboard OR Get-Clipboard OR FromBase64String)
3| stats count min(_time) as first_seen max(_time) as last_seen by host user ProcessName ScriptBlockText
4| where count > 0

ヒットが見つからない場合、ClickFixに関する詳細なリサーチをオンラインで見つけることができ、これを使用してSPL検索を強化できます。

今回のケースでは、一致するイベントは見つかりませんでした。これはハンティングが失敗したことを意味するのではなく、活動の不在またはログソース/検知カバレッジのギャップのいずれかを示唆しています。どちらも価値のある成果です。

これで次のフェーズに移ります。

第5幕:脅威ハンティング成果によるギャップの特定と改善

正しい質問をする

仮説が確認できない場合、発見を人材、プロセス、技術全体にわたる改善機会として扱います。例えば、以下を検討できます:

  • データソース: どのエンドポイント、EDRマネージャー、またはログが欠けているか?オンボーディングを計画する。
  • 検知: どのESCU検知がチューニングまたは新しいカスタム検知を必要とするか?検知エンジニアリングを改善する。
  • プロセス: トリアージとインシデント宣言のためのSOPは明確か?ランブックとRACIを更新する。

さらなる成果を引き出すために、重要な質問を自問することもできます:

脅威は発生せず、仮説が否定されたのか?もしそうなら、将来の試みに対してどのように準備するか?

OpenAEVによる露出管理の活用

このケースでは、実際のAPT38からの発生を待つよりも、シミュレーションを通じて積極的に検証する方がはるかに賢明であり、この脅威に対する現在の露出を評価できます。

脅威インフォームドディフェンスを使用して、BlueNoroffキャンペーンとClickFix with AppleScriptに関するインテリジェンスがあります。OpenAEVから、この脅威キャンペーンの攻撃パターンと振る舞いを環境内で安全にシミュレートする攻撃シナリオを構築できます。これにより、この脅威に対する検知、プロセス、人間の対応を検証できます。

シミュレーションシナリオの作成

以下の設計を使用して、環境内での攻撃をシミュレートするシナリオを設計する方法を見てみましょう:

  • 目的: ClickFix振る舞いの検知と対応を検証
  • テクニック: AppleScript実行
  • 資産: EDRエージェントを持つ選択されたエンドポイント
  • インジェクト: 技術的シミュレーションとプロセスドリル
  • 成功基準: 予想されるSplunk注目イベント、アナリストの承認、SOP遵守
  • データ収集: Splunk注目インデックス、EDRログ、OpenAEV発見

この設計により、AppleScript関連テクニックからシナリオを簡単に生成できます。その後、時間の経過に伴うエスカレーションを表すタイムライン上に、すべての関連インジェクトを配置できます。

image 3 2

異なるタイプのインジェクトを追加できます。このケースでは、以下を追加します:

  • ペイロード実行のための技術的インジェクト
  • 電子メール通知、内部チャレンジ、またはメディアプレッシャーをシミュレートできるプロセス/人的インジェクト

これにより、この露出に対する技術的および人的/プロセスセキュリティ制御の両方をテストできます。

技術的ペイロードについては、制御されたペイロードでAppleScript/ClickFix振る舞いをシミュレートしています:

image 4 1

次に、実行のためのターゲット資産を選択します:

image 5 1
注意:EDRマネージャーがSplunkにテレメトリを転送することを確認し、注目すべき発見がOpenAEVにフィードバックされるように、SplunkをOpenAEVのコレクターとして統合してください。

人材志向のインジェクトについては、シナリオが開始されたことをSOCと検知エンジニアリングに通知し、Splunk Enterprise Securityが予想される発見とどの検知から生成されたかを検証するよう依頼できます:

image 6 1

また、対応アクションを調整し、追加のインジェクトを通じてSOPの明確性を検証しましょう。

image 7 1

結果のレビュー

OpenAEVは、様々なEDR、コレクター、インジェクターを活用するための広範な統合ライブラリを持っています。

EDRとSplunkが統合されると、OpenAEVは防止、検知、脆弱性、人間の対応結果を報告します。

例えば、以下のスクリーンショットでは、防止制御のいずれもインジェクトされたペイロードを停止せず、検知のわずかな割合がいくつかのインジェクトを検知でき、テーブルトップ演習に関与したすべてのプレーヤーは人間の対応における期待を満たすことができませんでした。

これらは、どのインジェクトとどの攻撃パターンが成功または失敗したかを正確に掘り下げることができ、OpenCTIの元のセキュリティカバレッジと脅威レポートにフィードバックして、問題のCTI脅威レポートに対する実際のカバレッジの有効性を報告できます。

image 8 1

OpenCTIとOpenAEVの両方でこれらのメトリクスとセキュリティカバレッジを使用すると、ギャップを簡単に特定して解消できます。例として、そのようなメトリクスには、テクニック別の検知カバレッジ、アラートまでの時間、SOP遵守が含まれます。

結論

結論として、脅威ハンティングの価値は仮説を証明することを超えています — それは潜在的な露出を検知、テスト、検証、修復するための重要なプロセスです。

この脅威インフォームドハンティングプロセスを使用して、以下のワークフローを完了できました:

  • OpenCTIのPIR駆動型インテリジェンスから開始し、脅威ハント仮説とスコーピングの基礎として使用しました。
  • Splunk ESCU検知ロジックをハンティングを運用化する基礎として活用しました。
  • OpenAEVシナリオを通じて脅威ハントスコープを検証し、ハント振る舞いをシミュレートして、人材、プロセス、技術のギャップを積極的に特定しました。
  • OpenAEVからのこれらのメトリクスをセキュリティカバレッジとしてOpenCTIにフィードバックし、検知エンジニアリングとさらなる脅威ハンティングスコープの情報提供を支援しました。

脅威インフォームドハンティングにより、脅威ハントを測定可能に改善して価値のある成果を得て、全体的なセキュリティプログラムを向上させることができます。

tid

脅威ハンティングのための拡張脅威管理

このユースケースは、FiligranのXTMプラットフォームユーザーと脅威ハンターが、脅威インテリジェンスと露出検証機能を組み合わせることで達成できることの例を提供します — すべて単一のオープンソースプラットフォームから。

filigran xtm diagram 1125

詳細はこちら:

続きを読む

関連トピックとインサイトをご覧ください