mcpField
T
ti-ingest

ti-ingest

github.com/transilienceaiセキュリティ598135 回インストール13 週間前に更新
リポジトリ

ti-ingest について

ti-ingestは、脅威インテリジェンスのシグナルを、後続の悪用可能性検証に渡すスコープ行へ変換するスキルです。アナリストによる実行や定期ポーリングに対応し、NVD情報の付加と重複排除を行いますが、PoCは実行しません。

主な機能

  1. 01シグナルデータの読み込みと検証
  2. 02CVEへのNVD情報付加
  3. 03アセットとCVEの重複排除
  4. 04検証用スコープ行の作成
  5. 05監査用の生データ保存

活用シーン

  1. 01アナリストのシグナルを検証キューに登録
  2. 02シグナルファイルの定期処理
  3. 03同一アセットとCVEの重複登録防止
  4. 04インベントリにないアセットの識別

インストール

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

$npx skills add https://github.com/transilienceai/communitytools --skill ti-ingest

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

同梱ファイルreference/ingest-schema.md

詳細

脅威インテリジェンスシグナルの取り込み

脅威インテリジェンスシグナルを、Exploitability Validation Run(クラウドエージェントのタスク #3)が処理する、キューに登録されたエンゲージメントスコープの行に変換します。

トリガー

2 つのモードがあります。

  • プロンプト起動:アナリストが手元の signal.json に対してスキルを実行します。
  • 定期ポーリング:クラウドエージェントのランタイムが cron(デフォルトでは 15 分ごと)で {OUTPUT_DIR}/inbox/ をポーリングし、新しいシグナルファイルを見つけると処理します。

ワークフロー

  1. ペイロードを読み取る — tools/ti-ingest.py --in <path-or-stdin>。
  2. スキーマを検証する — 必須キー:signal_id、cve(1 つ以上)、assets(1 つ以上)、claim。任意:confidence、source、references。
  3. NVD でエンリッチする — ペイロード内の各 CVE について、tools/nvd-lookup.py <CVE> を実行し、{score, severity, cwe} を行に追加します。
  4. 重複を排除する — (asset, cve) のペアが queue/scope-*.json にすでに存在する行はスキップします。以前の行のステータスが REJECTED であり、かつ TI シグナルの confidence が前回の試行より高い場合にのみ、再度キューに登録します。
  5. キュー行を書き込む — (asset, cve) のペアごとに、queue/scope-{ts}-{asset_id}-{cve}.json という JSON ファイルを 1 つ作成します。Validation Run タスクがこれらを取得します。

出力

{OUTPUT_DIR}/
  inbox/
    signal-{ts}.json        # raw payload, kept for audit
  queue/
    scope-{ts}-{asset}-{cve}.json

スコープ行ごと:

{
  "scope_id": "scope-20260513-asset42-CVE-2024-12345",
  "signal_id": "ti-2026-0042",
  "asset": {"id": "asset42", "url": "https://app.example.com", "tier": "revenue"},
  "cve": "CVE-2024-12345",
  "nvd": {"score": 9.8, "severity": "CRITICAL", "cwe": "CWE-79"},
  "claim": "Reflected XSS via search parameter",
  "confidence": "high",
  "source": "vendor-advisory",
  "references": ["https://..."],
  "queued_at": "2026-05-13T10:00:00Z",
  "status": "queued"
}

ルール

  1. 冪等であること。 同じペイロードに対して再実行しても、キュー行が重複して作成されてはなりません。
  2. 実行しないこと。 取り込み処理では PoC を実行しません。後続タスク用にスコープをキューに登録するだけです。
  3. 監査証跡。 変換を行う前に、必ず生のペイロードを inbox/ にコピーします。
  4. NVD のエラーは処理を妨げないこと。 nvd-lookup でエラーが発生した場合は、nvd: null および nvd_error: "..." を設定して行を書き込み、シグナルを破棄しないでください。
  5. アセットがインベントリに含まれていること。 asset.id を artifacts/org-surface.json(Org Recon Refresh タスクが生成)と照合します。不明なアセットについても行を作成しますが、unknown_asset: true のフラグを付け、バリデーターがスキップできるようにします。

参照

  • reference/ingest-schema.md — 入力/出力の完全な JSON スキーマ。

コメント