概要
Tenable.io 統合(INT-003)は、脆弱性の検出結果を CaseBender に取り込み、CVSS ベースの深刻度と CVE 観測対象で強化し、アラート(および任意でケース)に変換します。ポーリングは Tenable.io 脆弱性エクスポート API を使用し、API キーのペア
(access key + secret key)で認証します。
機能
前提条件
1
API キーを作成
Tenable.io で Settings → My Account → API Keys に移動し、キーのペアを生成します。
Access Key と Secret Key をコピーします。
2
ネットワーク送信
CaseBender のポーラーが
https://cloud.tenable.com(または Tenable.io プライベートリージョンの
URL)に到達できる必要があります。CaseBender で統合を構成
1
統合カタログを開く
Settings → Integrations → Create に移動し、Vulnerability Management カテゴリの
Tenable.io を選択します。
2
API キーを入力
3
自動ポーリングを有効にする(推奨)
4
ケースの自動作成を構成
インバウンド(自動ポーリング)
Tenable は 非同期エクスポートジョブ を通じて増分的な脆弱性データを公開します。CaseBender は このフローを自動的に処理します。1
エクスポートを要求
各間隔で、CaseBender は前回のカーソル以降に更新された
OPEN/REOPENED 脆弱性のエクスポートを
要求します(任意で深刻度でフィルタリング)。初回実行時のウィンドウは pollingInitialLookbackHours
です。2
待機 + 再開
CaseBender は(上限付きで)エクスポートの完了を待機し、そのチャンクをダウンロードします。サイクル
の時間予算が尽きた時点でエクスポートがまだ生成中の場合、その ID が保存され、次のサイクルで再開
されます。データは失われません。
3
カーソル + 重複排除
エクスポート完了後、カーソルは実行時刻まで進みます。検出結果は
asset.uuid + plugin.id で
重複排除 されるため、ウィンドウが重なっても重複は作成されません。エクスポートは非同期のため、検出結果は Tenable で更新されてから数分後に表示される場合があります。
これは脆弱性データでは想定される挙動であり、
pollingIntervalMinutes で制御されます。セキュリティ上の考慮事項
- シークレットの取り扱い — API キーは統合設定に保存されます。組織のポリシーに従ってローテーション してください。
- 最小権限 — 脆弱性への読み取りアクセスを持つユーザーアカウントに紐づくキーを使用してください。
- ネットワーク — 送信を Tenable.io リージョンの URL に制限してください。
トラブルシューティング
ポーリングは有効だが検出結果が表示されない
ポーリングは有効だが検出結果が表示されない
access/secret キーが有効で、カーソル以降に更新された
OPEN/REOPENED の検出結果が存在すること
を確認してください。エクスポートには時間がかかるため、少なくとも 1 つの完全な間隔を待ちます。
すべてがフィルタリングされる場合は Minimum severity を下げてください。CaseBender のすべてのサービスが稼働していることを確認してください — Docker では
docker compose ps で worker と misp-processor サービスが Up である必要があります。エクスポートが失敗した
エクスポートが失敗した
Tenable export … failed エラーはエクスポートジョブがサーバー側で失敗したことを示します。次の
間隔で再試行されます。キーに脆弱性エクスポート権限があることを確認してください。