mcpField
C
correlation-insights

correlation-insights

github.com/happy-technologies-llcセキュリティ4141 回インストール2 日前に更新
リポジトリ

correlation-insights について

correlation-insights は、ServiceNow のセキュリティインシデント、脆弱性、脅威インテリジェンスを関連付ける SOC アナリスト向けスキルです。共通指標や時間軸、攻撃パターンから関連キャンペーンを探ります。

主な機能

  1. 01IP・ドメイン・ハッシュでインシデントを関連付け
  2. 02脆弱性と進行中のインシデントを照合
  3. 03時間をまたぐ攻撃パターンを特定
  4. 04連携した活動の可能性があるインシデントを抽出
  5. 05脅威インテリジェンスでインシデント情報を補強

活用シーン

  1. 01インシデント間で共通指標を調査
  2. 02複数インシデントにまたがる活動を探索
  3. 03影響資産の悪用可能な脆弱性を確認
  4. 04時間軸を分析して攻撃指標を記録

MCP 対応

MCP を使って ServiceNow のセキュリティインシデント、脅威オブザーバブル、脆弱性、システムログを検索します。関連分析をインシデントレコードに記録し、情報を更新できます。

インストール

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

$npx skills add https://github.com/happy-technologies-llc/happy-platform-skills --skill correlation-insights

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

詳細

セキュリティインシデントの相関分析

概要

このスキルを使用すると、SOC アナリストは ServiceNow Security Operations ポートフォリオ全体で、セキュリティインシデントを関連イベント、脆弱性、脅威インテリジェンスと相関分析できます。侵害の痕跡(IOC)の共有、タイムラインの重複、共通する攻撃ベクトルを特定することで、アナリストはより広範な攻撃キャンペーンを発見し、対応の優先順位を決められます。

主な機能:

  • 共通の観測可能情報(IP、ドメイン、ファイルハッシュ)を使ってセキュリティインシデントを相互参照する
  • 脆弱性を、セキュリティインシデントで確認された実際の悪用と関連付ける
  • 期間をまたいで繰り返し発生する攻撃パターンを特定する
  • 組織的なキャンペーンの一部である可能性がある関連インシデントを抽出する
  • 脅威インテリジェンスデータでインシデントのコンテキストを補強する

使用する場面: アクティブなインシデントの調査、脅威ハンティング、または定期的なセキュリティポートフォリオのレビューで、一見無関係に見えるイベント間のつながりを特定するときに使用します。

前提条件

  • ロール: sn_si.analyst、sn_si.admin、sn_ti.reader
  • アクセス: Security Incident(sn_si_incident)、Threat Intelligence(sn_ti_observable)、Vulnerability Response(sn_vul_vulnerable_item)テーブル
  • プラグイン: Security Incident Response(sn_si)、Threat Intelligence(sn_ti)、Vulnerability Response(sn_vul)
  • データ: 観測可能情報と関連する構成アイテムが登録されたアクティブなセキュリティインシデント

手順

ステップ 1:起点となるインシデントを特定する

主要なインシデントと、相関分析に必要な主要属性を取得します。

MCP を使用:

Tool: SN-Query-Table
Parameters:
  table_name: sn_si_incident
  query: number=[INCIDENT_NUMBER]
  fields: sys_id,number,short_description,category,subcategory,priority,state,assigned_to,affected_user,cmdb_ci,opened_at,resolved_at,close_notes,business_criticality
  limit: 1

REST を使用:

GET /api/now/table/sn_si_incident?sysparm_query=number=[INCIDENT_NUMBER]&sysparm_fields=sys_id,number,short_description,category,subcategory,priority,state,assigned_to,affected_user,cmdb_ci,opened_at,resolved_at,close_notes,business_criticality&sysparm_limit=1
ステップ 2:起点となるインシデントの観測可能情報を取得する

インシデントに関連付けられたすべての脅威観測可能情報(IOC)を取得します。

MCP を使用:

Tool: SN-Query-Table
Parameters:
  table_name: sn_ti_observable
  query: security_incident=[INCIDENT_SYS_ID]
  fields: sys_id,type,value,source,confidence,first_seen,last_seen,threat_score
  limit: 200

REST を使用:

GET /api/now/table/sn_ti_observable?sysparm_query=security_incident=[INCIDENT_SYS_ID]&sysparm_fields=sys_id,type,value,source,confidence,first_seen,last_seen,threat_score&sysparm_limit=200
ステップ 3:共通の観測可能情報を持つインシデントを検索する

同じ IP アドレス、ドメイン、またはファイルハッシュを共有する他のインシデントを検索します。

MCP を使用:

Tool: SN-Query-Table
Parameters:
  table_name: sn_ti_observable
  query: value=[OBSERVABLE_VALUE]^security_incident!=[ANCHOR_INCIDENT_SYS_ID]
  fields: sys_id,security_incident,type,value,confidence,first_seen
  limit: 50

REST を使用:

GET /api/now/table/sn_ti_observable?sysparm_query=value=[OBSERVABLE_VALUE]^security_incident!=[ANCHOR_INCIDENT_SYS_ID]&sysparm_fields=sys_id,security_incident,type,value,confidence,first_seen&sysparm_limit=50
ステップ 4:脆弱性データと相関させる

インシデントに関係するアセット上の悪用可能な脆弱性を特定します。

MCP を使用:

Tool: SN-Query-Table
Parameters:
  table_name: sn_vul_vulnerable_item
  query: cmdb_ci=[AFFECTED_CI_SYS_ID]^stateINOpen,Under Investigation
  fields: sys_id,vulnerability,cmdb_ci,state,risk_score,first_found,last_found,cvss_score
  limit: 100

REST を使用:

GET /api/now/table/sn_vul_vulnerable_item?sysparm_query=cmdb_ci=[AFFECTED_CI_SYS_ID]^stateINOpen,Under Investigation&sysparm_fields=sys_id,vulnerability,cmdb_ci,state,risk_score,first_found,last_found,cvss_score&sysparm_limit=100
ステップ 5:脆弱性エントリの詳細で CVE のコンテキストを確認する

特定された脆弱性の CVE 詳細を調べ、攻撃対象領域を把握します。

MCP を使用:

Tool: SN-Query-Table
Parameters:
  table_name: sn_vul_entry
  query: sys_idIN[VULNERABILITY_SYS_IDS]
  fields: sys_id,cve_id,description,cvss_score,severity,exploit_available,vendor_advisory
  limit: 50

REST を使用:

GET /api/now/table/sn_vul_entry?sysparm_query=sys_idIN[VULNERABILITY_SYS_IDS]&sysparm_fields=sys_id,cve_id,description,cvss_score,severity,exploit_available,vendor_advisory&sysparm_limit=50
ステップ 6:カテゴリと期間で関連インシデントを検索する

関連する期間内に、類似した攻撃カテゴリのインシデントを検索します。

MCP を使用:

Tool: SN-Query-Table
Parameters:
  table_name: sn_si_incident
  query: category=[CATEGORY]^opened_atBETWEENjavascript:gs.dateGenerate('2026-03-01','00:00:00')@javascript:gs.dateGenerate('2026-03-19','23:59:59')^sys_id!=[ANCHOR_SYS_ID]
  fields: sys_id,number,short_description,category,subcategory,priority,state,cmdb_ci,opened_at,affected_user
  limit: 50

REST を使用:

GET /api/now/table/sn_si_incident?sysparm_query=category=[CATEGORY]^opened_atBETWEEN2026-03-01 00:00:00@2026-03-19 23:59:59^sys_id!=[ANCHOR_SYS_ID]&sysparm_fields=sys_id,number,short_description,category,subcategory,priority,state,cmdb_ci,opened_at,affected_user&sysparm_limit=50
ステップ 7:システムログで攻撃の兆候を分析する

攻撃のタイムラインと送信元の兆候に関連するエントリを syslog で検索します。

MCP を使用:

Tool: SN-Query-Table
Parameters:
  table_name: syslog
  query: sys_created_onBETWEEN[START_TIME]@[END_TIME]^messageLIKE[OBSERVABLE_VALUE]
  fields: level,message,source,sys_created_on
  limit: 500

REST を使用:

GET /api/now/table/syslog?sysparm_query=sys_created_onBETWEEN[START_TIME]@[END_TIME]^messageLIKE[OBSERVABLE_VALUE]&sysparm_fields=level,message,source,sys_created_on&sysparm_limit=500
ステップ 8:相関分析の要約を作成し、調査結果を記録する

MCP を使用:

Tool: SN-Add-Work-Notes
Parameters:
  table_name: sn_si_incident
  sys_id: [ANCHOR_INCIDENT_SYS_ID]
  work_notes: |
    CORRELATION ANALYSIS - [TIMESTAMP]

    Shared Observables Found:
    - IP 203.0.113.50: Also seen in SIR0001234, SIR0001456
    - Domain malicious-c2.example.com: Seen in SIR0001234
    - File hash (SHA256) abc123...: Unique to this incident

    Related Incidents:
    - SIR0001234 (High) - Phishing campaign targeting finance dept
    - SIR0001456 (Medium) - Unauthorized outbound connection

    Vulnerability Overlap:
    - CVE-2025-12345 (CVSS 9.8) - Active on affected CI, exploit available
    - CVE-2025-67890 (CVSS 7.5) - Patched but re-introduced

    Assessment: High confidence these incidents are part of a coordinated
    campaign targeting financial systems via spear-phishing with subsequent
    lateral movement exploiting unpatched vulnerabilities.

    Recommended Actions:
    1. Escalate all correlated incidents to Tier 3
    2. Block identified IOCs at perimeter
    3. Expedite patching for CVE-2025-12345
    4. Initiate threat hunt across all finance department assets

ツールの使用

ツール目的
SN-Query-Tableインシデント、観測可能情報、脆弱性、ログを取得する
SN-Execute-Background-Script大規模なデータセットに対して高度な相関分析スクリプトを実行する
SN-Add-Work-Notesインシデントレコードに相関分析の結果を記録する
SN-Update-Record調査結果に基づいてインシデントの優先度またはカテゴリを更新する

ベストプラクティス

  • 共通ポートなどの広範な指標よりも、ファイルハッシュや特定の IP など、信頼度の高い観測可能情報から始めます
  • 相関分析の範囲を限定するために期間分析を使用します。まずは短い期間(24 時間)から始め、必要に応じて拡大します
  • 相関分析の前に観測可能情報の信頼度スコアを検証します。信頼度の低い指標は誤った相関を生む可能性があります
  • 他のアナリストが調査結果を検証し、発展させられるよう、相関分析のロジックをすべて記録します
  • MITRE ATT&CK マッピングを検討し、攻撃段階の特定と次の手順の予測に役立てます
  • 誤検知につながる共有インフラ(CDN、クラウド IP など)のようなパターンがないか確認します
  • Related Records リストを使用して関連インシデントレコードをリンクし、相関関係を保持します

トラブルシューティング

インシデントに観測対象が見つからない

原因: SIEM から取り込まれていないか、手動で入力されていない可能性があります。 解決策: より広範なクエリで sn_ti_observable テーブルを直接確認してください。Threat Intelligence 連携が有効で、データを取り込んでいることを確認してください。

影響を受けた CI の脆弱性データがない

原因: CI が最近スキャンされていないか、スキャナー連携が停止している可能性があります。 解決策: CI フィルターを指定せずに sn_vul_vulnerable_item をクエリし、スキャンデータが存在するか確認してください。Vulnerability Response プラグインとスキャナー連携が有効であることを確認してください。

相関分析で結果が多すぎる

原因: 観測対象の値の範囲が広すぎます(例:一般的な DNS サーバー、内部サブネット範囲)。 解決策: 観測対象の種類と信頼度スコアでフィルターしてください。confidenceGT50 を使うと、信頼度の高いインジケーターに絞り込めます。

例

例 1:フィッシングインシデントの相関分析

  1. アンカーとなるインシデント SIR0005678 で、悪意のある添付ファイルを含むフィッシングメールが報告されている
  2. 観測対象を抽出する:送信者ドメイン、添付ファイルのハッシュ、埋め込まれた URL
  3. sn_ti_observable を検索し、すべてのインシデントから一致する値を探す
  4. 過去 1 週間に同じ送信者ドメインを含むインシデントがほかに 3 件あることを発見する
  5. sn_vul_vulnerable_item を確認し、メールサーバーの CI に関連する脆弱性を見つける
  6. 組織を標的とするフィッシングキャンペーンを示す調査結果を記録する

例 2:ラテラルムーブメントの検出

  1. インシデント SIR0009012 で、データベースサーバーへの不正アクセスが報告されている
  2. 観測対象と監査ログから送信元 IP アドレスを抽出する
  3. 送信元 IP アドレスをほかのインシデントや syslog エントリーと相関分析する
  4. 同じ IP アドレスが 2 時間の間にほかの 5 台のサーバーにアクセスしたことを特定する
  5. 脆弱性データと照合し、悪用された CVE を見つける
  6. ラテラルムーブメントを伴う組織的な侵入としてエスカレーションする

関連スキル

  • security/incident-response - セキュリティインシデント対応手順
  • secops/post-incident-analysis - 相関分析後のインシデントレビュー
  • secops/incident-summarization - 関係者向けに相関分析されたインシデントを要約する
  • secops/vulnerability-deduplication - 相関分析中に見つかった脆弱性の重複を排除する
  • secops/metrics-analysis - 相関分析の有効性を経時的に測定する

コメント