mcpField
C
correlating-threat-campaigns

correlating-threat-campaigns

github.com/mukul975セキュリティ35.2k71 回インストール8 週間前に更新
リポジトリ

correlating-threat-campaigns について

別々のインシデントが同一キャンペーンに属するかを評価する、脅威インテリジェンス分析者向けのセキュリティスキルです。インフラ、能力、時間、標的特性を比較し、根拠と信頼度を用いて安易な帰属を避けます。

主な機能

  1. 01イベントデータの収集と正規化
  2. 024つの観点から相関点を特定
  3. 03キャンペーン帰属の信頼度を算出
  4. 04キャンペーン関係グラフの作成
  5. 05キャンペーン情報レポートの作成

活用シーン

  1. 01IOCを共有する複数のインシデントを関連付け
  2. 02共有された指標と過去のイベントとの関係を評価
  3. 03数週間から数か月に及ぶ活動のレポートを作成

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/mukul975/anthropic-cybersecurity-skills --skill correlating-threat-campaigns

インストール後、Claude Code で/correlating-threat-campaignsを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

LICENSE
references/
api-reference.md
scripts/
agent.py

詳細

脅威キャンペーンの相関分析

使用するタイミング

次の場合にこのスキルを使用します。

  • 関連がなさそうに見える複数のインシデントで、同じ IOC(同じ C2 IP、同じマルウェアのハッシュ、類似した TTP)が共有されている
  • ISAC パートナーが共有したインシデントの指標が、自組織の過去のイベントと一致する
  • 数週間または数か月にわたる敵対者の活動を単一の作戦に関連付けるキャンペーンレポートを作成する

弱いシグナルに基づいて無理に相関させるために、このスキルを使用しないでください。キャンペーンの誤った帰属は、対応者に誤解を与え、不正確な脅威モデルにリソースを浪費させます。

前提条件

  • 過去の指標データとイベントデータを備えた TIP または SIEM(90 日以上を推奨)
  • イベント共有が設定された MISP 相関エンジン
  • 関係の可視化に使用するグラフ分析ツール(Maltego、Neo4j、または OpenCTI)
  • 出力を構成するための MITRE ATT&CK の侵入セットおよびキャンペーンオブジェクトへの参照

ワークフロー

ステップ 1:イベントの収集と正規化

相関分析の候補となるすべてのイベントを、次の情報源から収集します。

  • 内部 SIEM(生イベント、アラート履歴)
  • TIP(過去の指標とイベント)
  • ISAC 共有(MISP または TAXII でパートナーから送信されたイベント)
  • 商用インテリジェンス(Recorded Future、Mandiant、CrowdStrike のレポート)

すべてのイベントを、一貫したタイムスタンプ(UTC)、指標タイプ、信頼度スコアを含む STIX 2.1 スキーマに正規化します。すべての指標に情報源と収集日が記載されていることを確認します。

ステップ 2:相関のピボットポイントを特定

次の 4 つの側面から、体系的なピボット分析を実施します。

インフラストラクチャのピボット:

  • イベント間で同じ IP アドレスまたは /24 サブネットが使われている
  • 同じドメイン登録者のメールアドレスまたは WHOIS 組織
  • 同じアカウントフィンガープリントを持つ同じ ASN またはホスティングプロバイダー
  • C2 ドメイン間で同じ SSL 証明書のフィンガープリントまたはシリアル番号が使われている

能力のピボット:

  • 同じマルウェアハッシュ、または YARA シグネチャの一致
  • 同じ C2 通信プロトコル(Cobalt Strike のビーコン設定、Sliver インプラントのパラメーター)
  • 同じエクスプロイトコード、または兵器化されたドキュメントテンプレート
  • 同じ難読化手法またはパッカーのフィンガープリント

時間のピボット:

  • 同じ時間帯に発生するイベント(同じタイムゾーンを示唆する活動時間)
  • 論理的なキルチェーンの進行に沿った連続するイベント
  • 同じ日付範囲に集中するマルウェアのコンパイル時刻

被害者に関するピボット:

  • 同じ標的セクター(医療、エネルギー、金融)
  • 同じ標的地域
  • 同じ標的技術(特定の ERP ベンダー、VPN アプライアンスのブランド)
ステップ 3:相関の信頼度を算出

キャンペーンの帰属に重み付けスコアリングを適用します。

def calculate_campaign_confidence(events: list) -> float:
    scores = []

    # Infrastructure overlap (highest weight — most discriminating)
    infra_overlap = count_shared_infra(events) / len(events)
    scores.append(infra_overlap * 40)

    # Capability overlap (high weight — TTPs are durable)
    capability_overlap = count_shared_ttps(events) / len(events)
    scores.append(capability_overlap * 35)

    # Temporal proximity (moderate weight)
    temporal_score = assess_temporal_clustering(events)
    scores.append(temporal_score * 15)

    # Victimology alignment (lower weight — many actors target same sector)
    victim_score = assess_victim_pattern(events)
    scores.append(victim_score * 10)

    total = sum(scores)
    if total >= 70: return "HIGH"
    elif total >= 45: return "MEDIUM"
    else: return "LOW"
ステップ 4:キャンペーングラフを構築

OpenCTI または Maltego でキャンペーングラフを作成します。

  • キャンペーンオブジェクト(STIX)を中心ノードとする
  • 侵入セット → 使用する → マルウェアオブジェクト
  • 侵入セット → 使用する → インフラストラクチャオブジェクト
  • 侵入セット → 標的とする → ID オブジェクト(被害組織/セクター)
  • キャンペーン → 帰属先 → 脅威アクター(帰属が判明した場合)
  • 指標 → 示す → マルウェア(技術的に観測可能な情報を能力に関連付ける)

各関係に、根拠の参照情報と信頼度を付記します。

ステップ 5:キャンペーンインテリジェンスレポートを作成

キャンペーンレポートを次の構成にします。

  1. キャンペーン名:標的のテーマまたは使用ツールに基づき、説明的なコードネームを付ける
  2. タイムライン:初回/最終観測日と活動フェーズ
  3. 帰属:疑われる脅威アクターと信頼度
  4. 標的プロファイル:業界分野、地域、組織規模
  5. TTP の概要:キャンペーン固有の手法を示す ATT&CK Navigator ヒートマップ
  6. 共有指標:複数のインシデントにまたがる IOC(ブロックにおいて最も信頼度が高いもの)
  7. 検出ガイダンス:このキャンペーンに特化した Sigma/YARA ルール

主要な概念

用語定義
キャンペーン特定の期間にわたる共通の目的を持つ敵対的行動のまとまりを表す STIX オブジェクト
侵入セット攻撃者の正体が不確かな場合でも、共通の目的を持つ関連する侵入活動をまとめた STIX オブジェクト
ピボット単一のデータポイント(IOC、インフラストラクチャ、TTP)を使用して、関連するイベントや攻撃者のアーティファクトを発見すること
クラスタリング特徴の類似性に基づいてインシデントを機械学習または手作業でグループ化し、キャンペーンの境界を特定すること
誤った相関共通のインフラストラクチャ(CDN、共有ホスティング)や共通のツールが原因で、無関係なインシデントを誤って関連付けること

ツールとシステム

  • MISP Correlation Engine:MISP インスタンスおよびフェデレーションされたインスタンス全体で、属性値が共通するイベントを自動的に相関付けます
  • OpenCTI Graph:STIX オブジェクトの種類を使用してキャンペーンのつながりを可視化する、インタラクティブな関係グラフです
  • Maltego:複数のデータソースにわたり、インフラストラクチャと能力をピボットするためのリンク分析ツールです
  • Neo4j:数百万件のイベントを対象とした大規模なキャンペーン相関のための、Cypher クエリに対応したグラフデータベースです

よくある落とし穴

  • CDN/共有ホスティングによる誤検知:Cloudflare、AWS CloudFront、弾丸ホスティング業者は、複数の脅威アクターにサービスを提供しています。IP アドレスの共有だけでは、キャンペーンとの関連性を立証できません。
  • 共通のマルウェアによる混同:複数の脅威アクターが Cobalt Strike を使用します。追加の裏付けがない限り、能力の共通性は同じ攻撃者であることを示しません。
  • 早まった帰属:証拠がしきい値に達する前にキャンペーンを攻撃者に帰属させると、誤ったインテリジェンスが生まれ、レポートに残り続けます。
  • 時間分析の欠如:異なる年のイベントで同じインフラストラクチャが使われていても、同じキャンペーンではなく、別の攻撃者によって再利用された可能性があります。

コメント