Tenable Vulnerability Management のログを収集する
このドキュメントでは、Tenable Vulnerability Management(旧称 Tenable.io)のログを Google Security Operations に取り込む方法について説明します。ここでは、Tenable エクスポート API からデータを取得する Cloud Storage パイプラインと、Amazon S3 バケットにデータを push する Tenable Data Stream の 2 つの取り込み方法について説明します。環境に合った方法を選択します。
Tenable Vulnerability Management(旧称 Tenable.io)は、Nessus テクノロジーを搭載したクラウドベースの脆弱性管理プラットフォームです。包括的な脆弱性カバレッジを提供し、どのセキュリティ問題を最初に対処すべきかを予測できます。
パーサーは、Tenable JSON ログから脆弱性とアセットの検出結果を抽出し、フィールドを UDM にマッピングして、ドメイン、IPv4、IPv6 のインジケーター、重大度、アセット属性を処理します。
始める前に
次の前提条件を満たしていることを確認してください。
- Google SecOps インスタンス
- Tenable Vulnerability Management コンソールへの特権アクセス(管理者ロール)
- 方法 1(Google Cloud Storage)の場合: 請求が有効になっており、Cloud Storage バケット、サービス アカウント、Pub/Sub トピック、Cloud Run 関数、Cloud Scheduler ジョブを作成する権限を持つ Google Cloud プロジェクト
- 方法 2(Amazon S3)の場合: S3 バケットと Identity and Access Management(IAM)のロールとユーザーを作成する権限を持つ AWS アカウント
次のいずれかを行います。
- 方法 1: Google Cloud Storage。Cloud Run 関数が Tenable エクスポート API から脆弱性とアセットデータを取得し、Cloud Storage バケットに書き込みます。このメソッドを使用して、パイプラインを完全に Google Cloudに保持します。
- 方法 2: Amazon S3。Tenable Data Stream は、Tenable データを Amazon S3 バケットに継続的にプッシュします。組み込みの Tenable プッシュ統合を使用する場合は、この方法を使用します。Tenable Data Stream は Amazon S3 のみをサポートしています。
方法 1: Google Cloud Storage
この方法では、Cloud Scheduler によって Pub/Sub を介してトリガーされる Cloud Run 関数を使用して、Tenable Vulnerability Management エクスポート API から脆弱性とアセットのデータを pull し、Cloud Storage バケットに書き込みます。Google SecOps は、バケットからデータを取り込みます。
Tenable Vulnerability Management API の認証情報を収集する
https://cloud.tenable.comで Tenable Vulnerability Management にログインします。- 右上にあるユーザー プロフィール アイコンをクリックし、[マイアカウント] を選択します。
- [API Keys] をクリックします。
- [生成] をクリックします。
[アクセスキー] と [シークレット キー] の値をコピーして保存します。
Google Cloud Storage バケットを作成する
- Google Cloud コンソールで、[Cloud Storage> バケット] に移動します。
- [作成] をクリックします。
- 次の構成情報を指定します。
- 名前: グローバルに一意の名前(
tenable-vulnerability-logsなど)を入力します。 - ロケーション タイプ: ロケーションを選択します。
- ストレージ クラス: [Standard] を選択します。
- 名前: グローバルに一意の名前(
- [作成] をクリックします。
Cloud Run functions のサービス アカウントを作成する
- Google Cloud コンソールで、[IAM と管理>サービス アカウント] に移動します。
- [サービス アカウントを作成] をクリックします。
- 次の構成情報を指定します。
- サービス アカウント名: 「
tenable-collector-sa」と入力します。 - サービス アカウントの説明: 「
Service account for the Tenable export collector」と入力します。
- サービス アカウント名: 「
- [作成して続行] をクリックします。
- [完了] をクリックします。
サービス アカウントにバケットへのアクセス権を付与する
- [Cloud Storage] > [バケット] に移動します。
- バケット名(
tenable-vulnerability-logsなど)をクリックします。 - [権限] タブに移動します。
- [アクセス権を付与] をクリックします。
- 次の構成情報を指定します。
- プリンシパルを追加: サービス アカウントのメールアドレス(例:
tenable-collector-sa@PROJECT_ID.iam.gserviceaccount.com)を入力します。 - ロールを割り当てる: [ストレージ オブジェクト管理者] を選択します。
- プリンシパルを追加: サービス アカウントのメールアドレス(例:
- [保存] をクリックします。
Pub/Sub トピックの作成
- Google Cloud コンソールで、[Pub/Sub> トピック] に移動します。
- [トピックを作成] をクリックします。
- トピック ID(例:
tenable-collector-trigger)を入力します。 - [作成] をクリックします。
ログを収集する Cloud Run 関数を作成する
Cloud Run functions は、Cloud Scheduler からの Pub/Sub メッセージによってトリガーされます。API キーを使用して Tenable エクスポート API に対して認証を行い、脆弱性とアセットのエクスポートを実行し、各エクスポート チャンクを JSON 形式でバケットに書き込みます。
- Google Cloud コンソールで、[Cloud Run] に移動します。
- [サービスを作成] をクリックします。
- インライン コードエディタを使用するには、[関数] を選択します。
- 次の構成情報を指定します。
- サービス名: 「
tenable-collector」と入力します。 - リージョン: バケットに一致するリージョン(
us-central1など)を選択します。 - ランタイム: Python 3.12 以降を選択します。
- サービス名: 「
- [トリガー] で次の操作を行います。
- [トリガーを追加] をクリックします。
- [Cloud Pub/Sub] を選択します。
- [Cloud Pub/Sub トピックを選択してください] で、
tenable-collector-triggerを選択します。 - [保存] をクリックします。
- [認証] セクションで、[認証が必要] を選択します。
- [コンテナ、ネットワーキング、セキュリティ] を開き、[セキュリティ] タブで [サービス アカウント] を
tenable-collector-saに設定します。 [コンテナ > 変数とシークレット] タブで、次の環境変数を追加します。
変数名 値の例 TIO_ACCESS_KEYyour-tenable-access-keyTIO_SECRET_KEYyour-tenable-secret-keyGCS_BUCKETtenable-vulnerability-logsGCS_PREFIXtenable/NUM_ASSETS1000ASSET_CHUNK_SIZE1000SEVERITIESlow,medium,high,criticalHTTP_TIMEOUT120[リクエスト タイムアウト] を
600秒に、[メモリ] を 512 MiB 以上に設定します。[作成] をクリックします。サービスを作成すると、インライン コード エディタが開きます。
関数のコードを追加する
- [関数のエントリ ポイント] フィールドに「
main」と入力します。 インライン コードエディタで、
requirements.txtの内容を次の内容に置き換えます。functions-framework==3.* google-cloud-storage==2.* requests==2.*main.pyの内容を次のコードに置き換えます。import json import os import time import functions_framework import requests from google.cloud import storage BASE = "https://cloud.tenable.com" ACCESS_KEY = os.environ["TIO_ACCESS_KEY"] SECRET_KEY = os.environ["TIO_SECRET_KEY"] GCS_BUCKET = os.environ["GCS_BUCKET"] GCS_PREFIX = os.environ.get("GCS_PREFIX", "tenable/") NUM_ASSETS = int(os.environ.get("NUM_ASSETS", "1000")) ASSET_CHUNK_SIZE = int(os.environ.get("ASSET_CHUNK_SIZE", "1000")) SEVERITIES = [s for s in os.environ.get("SEVERITIES", "low,medium,high,critical").split(",") if s] HTTP_TIMEOUT = int(os.environ.get("HTTP_TIMEOUT", "120")) HEADERS = { "X-ApiKeys": f"accessKey={ACCESS_KEY};secretKey={SECRET_KEY}", "Content-Type": "application/json", "Accept": "application/json", } storage_client = storage.Client() def _request(method, path, **kwargs): """Call the Tenable API, honoring HTTP 429 Retry-After. Do not multi-thread.""" while True: resp = requests.request(method, f"{BASE}{path}", headers=HEADERS, timeout=HTTP_TIMEOUT, **kwargs) if resp.status_code == 429: time.sleep(int(resp.headers.get("Retry-After", "30"))) continue resp.raise_for_status() return resp def _write_chunk(bucket, name, payload): """Write one export chunk (a JSON array) to the bucket.""" blob = bucket.blob(f"{GCS_PREFIX}{name}") blob.upload_from_string(json.dumps(payload), content_type="application/json") def _run_export(bucket, label, request_path, status_kind, body): """Request an export, poll until FINISHED, and write each chunk to the bucket.""" export_uuid = _request("POST", request_path, json=body).json()["export_uuid"] written = set() while True: status = _request("GET", f"/{status_kind}/export/{export_uuid}/status").json() for chunk_id in status.get("chunks_available", []): if chunk_id in written: continue chunk = _request("GET", f"/{status_kind}/export/{export_uuid}/chunks/{chunk_id}").json() _write_chunk(bucket, f"{label}_{export_uuid}_{chunk_id}.json", chunk) written.add(chunk_id) state = status.get("status") if state == "FINISHED": break if state in ("ERROR", "CANCELLED"): raise RuntimeError(f"{label} export {export_uuid} ended as {state}") time.sleep(15) print(f"{label}: wrote {len(written)} chunk(s) for export {export_uuid}") @functions_framework.cloud_event def main(cloud_event): bucket = storage_client.bucket(GCS_BUCKET) # Vulnerabilities: request path and status/chunk paths both use /vulns/export; body uses num_assets. _run_export( bucket, "vulns", "/vulns/export", "vulns", {"num_assets": NUM_ASSETS, "include_unlicensed": False, "filters": {"severity": SEVERITIES}}, ) # Assets: request path is /assets/v2/export (body uses chunk_size); status/chunk paths drop the v2. _run_export( bucket, "assets", "/assets/v2/export", "assets", {"chunk_size": ASSET_CHUNK_SIZE}, ) return "ok"[保存してデプロイ] をクリックします。
Cloud Scheduler ジョブを作成する
- Google Cloud コンソールで、[Cloud Scheduler] に移動します。
- [ジョブを作成] をクリックします。
- 次の構成情報を指定します。
- 名前: 「
tenable-collector-schedule」と入力します。 - リージョン: Cloud Run functions と同じリージョンを選択します。
- 頻度: cron スケジュールを入力します(例: 6 時間ごとに実行するには
0 */6 * * *)。 - タイムゾーン: タイムゾーンを選択します。
- 名前: 「
- [ターゲット タイプ] で、[Pub/Sub] を選択します。
- 「
tenable-collector-trigger」トピックを選択します。 - [メッセージ本文] に「
run」と入力します。 - [作成] をクリックします。
Google Cloud Storage から取り込むように Google SecOps でフィードを構成する
- [SIEM 設定] > [フィード] に移動します。
- [Add New Feed] をクリックします。
- [単一フィードを設定] をクリックします。
- [フィード名] フィールドに、フィードの名前を入力します(例:
Tenable Vulnerability Management GCS)。 - [ソースタイプ] として [Google Cloud Storage V2] を選択します。
- [ログタイプ] として [tenable.io] を選択します。
- [サービス アカウントを取得する] をクリックします。表示されたサービス アカウントのメールアドレスをコピーします。
- [次へ] をクリックします。
- 次の入力パラメータの値を指定します。
- ストレージ バケット URI: 接頭辞(
gs://tenable-vulnerability-logs/tenable/など)を含むバケット URI を入力します。 - Source deletion option: 必要に応じて削除オプションを選択します。
- ファイルの最大経過日数: 指定した日数以内に変更されたファイルを含めます。デフォルトは 180 日です。
- ストレージ バケット URI: 接頭辞(
- [次へ] をクリックし、構成を確認して [送信] をクリックします。
Google SecOps サービス アカウントにバケットへのアクセス権を付与する
- [Cloud Storage] > [バケット] に移動して、バケット名をクリックします。
- [権限] タブに移動し、[アクセス権を付与] をクリックします。
- [プリンシパルを追加] に、フィードからコピーしたサービス アカウントのメールアドレスを入力します。
- Storage オブジェクト閲覧者ロール(または、ソース削除オプションを選択した場合は Storage オブジェクト管理者)を割り当てます。
- [保存] をクリックします。
方法 2: Amazon S3
この方法では、Tenable Data Stream を使用して、Tenable データを JSON 形式で Amazon S3 バケットに継続的にプッシュします。Google SecOps は、バケットからデータを取り込みます。Tenable Data Stream は Amazon S3 のみをサポートし、Tenable が引き受ける IAM ロール(外部 ID を使用したクロスアカウント信頼関係)を使用して AWS アカウントに対して認証を行います。
Amazon S3 バケットを作成する
- AWS ガイドのバケットの作成に沿って、Amazon S3 バケットを作成します。
- 後で参照できるように、バケットの名前とリージョンを保存します(例:
tenable-vm-logs)。
Tenable Data Stream の IAM ロールを作成する
Tenable は、このロールを想定してバケットにデータを書き込みます。Tenable は、Tenable AWS アカウントと生成された外部 ID を含む、正確な信頼ポリシーとバケット ポリシーをコンソールに提供します。
- Tenable Vulnerability Management で、[Settings] > [Tenable Data Stream] に移動し、[Add an Integration] をクリックします。このダイアログは、後のステップで信頼ポリシーと外部 ID をコピーするために開いたままにしておきます。
- AWS コンソールで、[IAM] > [ロール] > [ロールの作成] に移動します。
[カスタム信頼ポリシー] を選択し、Tenable の IAM ロール ガイドライン パネルから信頼ポリシーを貼り付けます([信頼ポリシーをコピー] をクリックします)。信頼ポリシーの形式は次のとおりです。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::<TENABLE_AWS_ACCOUNT_ID>:root" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "sts:ExternalId": "<TENABLE_EXTERNAL_ID>" } } } ] }[次へ] をクリックし、バケットへの書き込みアクセス権を Tenable に付与するポリシーを作成して適用します(
tenable-vm-logsはバケット名に置き換えます)。{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": ["s3:PutObject", "s3:GetBucketLocation", "s3:ListBucket"], "Resource": [ "arn:aws:s3:::tenable-vm-logs", "arn:aws:s3:::tenable-vm-logs/*" ] } ] }ロール名(例:
TenableDataStreamRole)を入力し、[ロールを作成] をクリックします。ロール名と AWS アカウント ID を保存します。
Tenable Data Stream を構成する
- Tenable Vulnerability Management([Settings] > [Tenable Data Stream])の [Add an Integration] ダイアログに戻ります。
- 次の構成情報を指定します。
- 連携名: わかりやすい名前を入力します(例:
Google SecOps Integration)。 - 統合タイプ: [AWS S3] を選択します(使用可能なオプションはこれのみです)。
- 統合データ: ストリーミングするデータ型(アセット、脆弱性、ホスト監査など)を選択します。
- メール通知(省略可): ストリームの状態が変更された場合に通知を受け取るメールアドレスを入力します。
- 連携名: わかりやすい名前を入力します(例:
- [次へ] をクリックして、IAM ロールの詳細を指定します。
- AWS アカウント ID: AWS アカウント ID を入力します。
- IAM Role Name: 作成したロール(
TenableDataStreamRoleなど)を入力します。 - 外部 ID: このダイアログに Tenable が表示する外部 ID を使用します(信頼ポリシーで参照されている値と同じ値)。
- [次へ] をクリックして、バケットの詳細を指定します。
- S3 バケット名: バケット名を入力します(例:
tenable-vm-logs)。 - パスの接頭辞: ファイルを整理するための接頭辞を入力します(例:
tenable/)。
- S3 バケット名: バケット名を入力します(例:
[保存] をクリックします。Tenable は JSON データをバケットに継続的に書き込みます。
Google SecOps がバケットを読み取るための IAM ユーザーを作成する
Google SecOps は、別の読み取り専用 IAM ユーザーを使用してバケットを読み取ります(この ID は、Tenable が書き込みに使用するロールとは独立しています)。
- AWS コンソールで、[IAM] > [ユーザー] > [ユーザーの作成] に移動します。
- ユーザー名(
secops-tenable-readerなど)を入力し、[次へ] をクリックします。 - [次へ]、[ユーザーの作成] の順にクリックします。
ユーザーを選択し、[権限] タブに移動して、[権限を追加> インライン ポリシーを作成 > JSON] をクリックします。次の読み取り専用ポリシーを貼り付けます(
tenable-vm-logsはバケット名に置き換えます)。{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": ["s3:GetObject", "s3:ListBucket", "s3:GetBucketLocation"], "Resource": [ "arn:aws:s3:::tenable-vm-logs", "arn:aws:s3:::tenable-vm-logs/*" ] } ] }[セキュリティ認証情報] タブに移動し、[アクセスキーを作成] をクリックします。
ユースケースとして [サードパーティ サービス] を選択し、[次へ]、[アクセスキーを作成] の順にクリックします。
[アクセスキー] と [シークレット アクセスキー] の値をコピーして保存します。
Amazon S3 から取り込むように Google SecOps でフィードを構成する
- [SIEM 設定] > [フィード] に移動します。
- [Add New Feed] をクリックします。
- [単一フィードを設定] をクリックします。
- [フィード名] フィールドに、フィードの名前を入力します(例:
Tenable Vulnerability Management S3)。 - [ソースタイプ] として [Amazon S3 V2] を選択します。
- [ログタイプ] として [tenable.io] を選択します。
- [次へ] をクリックします。
- 次の入力パラメータの値を指定します。
- S3 URI: 接頭辞を含むバケット URI(
s3://tenable-vm-logs/tenable/など)を入力します。 - Source deletion option: 必要に応じて削除オプションを選択します。
- ファイルの最大経過日数: 指定した日数以内に変更されたファイルを含めます。デフォルトは 180 日です。
- アクセスキー ID: 読み取り専用の IAM ユーザー アクセスキーを入力します。
- シークレット アクセスキー: 読み取り専用の IAM ユーザーのシークレット キーを入力します。
- S3 URI: 接頭辞を含むバケット URI(
- [次へ] をクリックし、構成を確認して [送信] をクリックします。
UDM マッピング テーブル
| ログフィールド | UDM マッピング | 論理 |
|---|---|---|
payload.path |
about.file.full_path |
直接マッピングされます。 |
payload.md5 |
about.file.md5 |
直接マッピングされます。 |
asset.uuid |
entity.asset.asset_id |
直接マッピングされます。 |
id |
entity.asset.asset_id |
直接マッピングされます。 |
payload_id |
entity.asset.asset_id |
直接マッピングされます。 |
ssh_fingerprints.0 |
entity.asset.attribute.labels.value |
直接マッピングされます。 |
system_types.0 |
entity.asset.attribute.labels.value |
直接マッピングされます。 |
asset.hostname |
entity.asset.hostname |
直接マッピングされます。 |
asset.last_scan_target |
entity.asset.hostname |
直接マッピングされます。 |
host |
entity.asset.hostname |
直接マッピングされます。 |
scan.target |
entity.asset.hostname |
直接マッピングされます。 |
asset.ipv4 |
entity.asset.ip |
統合済み |
ip |
entity.asset.ip |
統合済み |
ipaddr |
entity.asset.ip |
統合済み |
prinIP |
entity.asset.ip |
統合済み |
scan_ipaddr |
entity.asset.ip |
統合済み |
updateIndex |
entity.asset.ip |
マッピング: 0 → update_ipv4_0 |
update_ipv4_0 |
entity.asset.ip |
統合済み |
asset.mac_address |
entity.asset.mac |
統合済み |
mac |
entity.asset.mac |
統合済み |
fqdns.0 |
entity.asset.network_domain |
直接マッピングされます。 |
netbios_names.0 |
entity.asset.network_domain |
直接マッピングされます。 |
os_family |
entity.asset.platform_software.platform |
直接マッピングされます。 |
asset.operating_system.0 |
entity.asset.platform_software.platform_version |
直接マッピングされます。 |
asset.uuid |
entity.asset.product_object_id |
直接マッピングされます。 |
id |
entity.asset.product_object_id |
直接マッピングされます。 |
payload_id |
entity.asset.product_object_id |
直接マッピングされます。 |
vuln.vulnerabilities |
entity.asset.vulnerabilities |
統合済み |
vuln1.vulnerabilities |
entity.asset.vulnerabilities |
統合済み |
vuln2.vulnerabilities |
entity.asset.vulnerabilities |
統合済み |
asset.device_type |
metadata.description |
直接マッピングされます。 |
plugin.description |
metadata.description |
直接マッピングされます。 |
has_entity_asset |
metadata.entity_type |
マッピング: true → ASSET |
first_found |
metadata.event_timestamp |
ISO8601 として解析済み |
last_found |
metadata.event_timestamp |
ISO8601 として解析済み |
scan.completed_at |
metadata.event_timestamp |
ISO8601 として解析済み |
scan.started_at |
metadata.event_timestamp |
ISO8601 として解析済み |
has_entity_asset |
metadata.product_name |
マッピング: true → Tenable IO |
has_entity_asset |
metadata.vendor_name |
マッピング: true → Tenable IO |
port.protocol |
network.ip_protocol |
直接マッピングされます。 |
asset.network_id |
network.session_id |
直接マッピングされます。 |
sec_res.description |
security_result.description |
直接マッピングされます。 |
asset_agent_uuid_label |
security_result.detection_fields |
統合済み |
asset_bios_uuid_label |
security_result.detection_fields |
統合済み |
asset_netbios_name_label |
security_result.detection_fields |
統合済み |
finding_id_label |
security_result.detection_fields |
統合済み |
plugin_family_id_label |
security_result.detection_fields |
統合済み |
plugin_family_label |
security_result.detection_fields |
統合済み |
plugin_risk_factor_label |
security_result.detection_fields |
統合済み |
plugin_xrefs_label |
security_result.detection_fields |
統合済み |
risk_factor_label |
security_result.detection_fields |
統合済み |
scan_label |
security_result.detection_fields |
統合済み |
scan_schedule_uuid_label |
security_result.detection_fields |
統合済み |
scan_started_at_label |
security_result.detection_fields |
統合済み |
scan_uuid_label |
security_result.detection_fields |
統合済み |
see_also_label |
security_result.detection_fields |
統合済み |
severity_default_id_label |
security_result.detection_fields |
統合済み |
severity_id_label |
security_result.detection_fields |
統合済み |
severity_label |
security_result.detection_fields |
統合済み |
severity_modification_type_label |
security_result.detection_fields |
統合済み |
update_finding_id_label |
security_result.detection_fields |
統合済み |
update_first_scan_time_label |
security_result.detection_fields |
統合済み |
update_last_licensed_scan_date_label |
security_result.detection_fields |
統合済み |
update_last_scan_id_label |
security_result.detection_fields |
統合済み |
update_last_scan_time_label |
security_result.detection_fields |
統合済み |
update_last_schedule_id_label |
security_result.detection_fields |
統合済み |
update_plugin_cvss3_vector_access_complexity_label |
security_result.detection_fields |
統合済み |
update_plugin_cvss3_vector_access_vector_label |
security_result.detection_fields |
統合済み |
update_plugin_cvss3_vector_authentication_label |
security_result.detection_fields |
統合済み |
update_plugin_cvss3_vector_availability_impact_label |
security_result.detection_fields |
統合済み |
update_plugin_cvss3_vector_confidentiality_impact_label |
security_result.detection_fields |
統合済み |
update_plugin_cvss3_vector_integrity_impact_label |
security_result.detection_fields |
統合済み |
update_plugin_cvss3_vector_privileges_required_label |
security_result.detection_fields |
統合済み |
update_plugin_cvss3_vector_raw_label |
security_result.detection_fields |
統合済み |
update_plugin_cvss3_vector_user_interaction_label |
security_result.detection_fields |
統合済み |
update_plugin_cvss_base_score_label |
security_result.detection_fields |
統合済み |
update_plugin_cvss_vector_access_complexity_label |
security_result.detection_fields |
統合済み |
update_plugin_cvss_vector_access_vector_label |
security_result.detection_fields |
統合済み |
update_plugin_cvss_vector_authentication_label |
security_result.detection_fields |
統合済み |
update_plugin_cvss_vector_availability_impact_label |
security_result.detection_fields |
統合済み |
update_plugin_cvss_vector_confidentiality_impact_label |
security_result.detection_fields |
統合済み |
update_plugin_cvss_vector_integrity_impact_label |
security_result.detection_fields |
統合済み |
update_plugin_cvss_vector_raw_label |
security_result.detection_fields |
統合済み |
update_plugin_see_also_label |
security_result.detection_fields |
統合済み |
update_plugin_stig_severity_label |
security_result.detection_fields |
統合済み |
update_plugin_vpr_driver_cvss3_impact_score_label |
security_result.detection_fields |
統合済み |
update_plugin_vpr_drivers_age_of_vuln_lower_bound_label |
security_result.detection_fields |
統合済み |
update_plugin_vpr_drivers_age_of_vuln_upper_bound_label |
security_result.detection_fields |
統合済み |
update_plugin_vpr_drivers_cvss_impact_score_predicted_label |
security_result.detection_fields |
統合済み |
update_plugin_vpr_drivers_exploit_code_maturity_label |
security_result.detection_fields |
統合済み |
update_plugin_vpr_drivers_product_coverage_label |
security_result.detection_fields |
統合済み |
update_plugin_vpr_drivers_threat_intensity_last28_label |
security_result.detection_fields |
統合済み |
update_plugin_vpr_drivers_threat_recency_lower_bound_label |
security_result.detection_fields |
統合済み |
update_plugin_vpr_drivers_threat_recency_upper_bound_label |
security_result.detection_fields |
統合済み |
update_plugin_vpr_score_label |
security_result.detection_fields |
統合済み |
update_plugin_vpr_updated_label |
security_result.detection_fields |
統合済み |
update_plugin_vpr_v2_cve_id_label |
security_result.detection_fields |
統合済み |
update_plugin_vpr_v2_exploit_code_maturity_label |
security_result.detection_fields |
統合済み |
update_plugin_vpr_v2_in_the_news_intensity_last30_label |
security_result.detection_fields |
統合済み |
update_plugin_vpr_v2_in_the_news_recency_label |
security_result.detection_fields |
統合済み |
update_plugin_vpr_v2_malware_observations_intensity_last30_label |
security_result.detection_fields |
統合済み |
update_plugin_vpr_v2_malware_observations_recency_label |
security_result.detection_fields |
統合済み |
update_plugin_vpr_v2_on_cisa_kev_label |
security_result.detection_fields |
統合済み |
update_plugin_vuln_publication_date_label |
security_result.detection_fields |
統合済み |
update_plugin_xrefs_id_type_label |
security_result.detection_fields |
統合済み |
update_plugin_xrefs_type_label |
security_result.detection_fields |
統合済み |
update_scan_started_at_label |
security_result.detection_fields |
統合済み |
update_severity_default_id_label |
security_result.detection_fields |
統合済み |
update_severity_id_label |
security_result.detection_fields |
統合済み |
update_severity_modification_type_label |
security_result.detection_fields |
統合済み |
updates_asset_netbios_name_label |
security_result.detection_fields |
統合済み |
updates_plugin_vpr_v2_exploit_probability_label |
security_result.detection_fields |
統合済み |
updates_plugin_vpr_v2_label |
security_result.detection_fields |
統合済み |
updates_plugin_vpr_v2_percentile_label |
security_result.detection_fields |
統合済み |
updates_plugin_vpr_v2_vpr_severity_label |
security_result.detection_fields |
統合済み |
version_label |
security_result.detection_fields |
統合済み |
xref_label |
security_result.detection_fields |
統合済み |
severity |
security_result.severity |
直接マッピングされます。 |
| なし | entity.asset.attribute.labels.key |
定数: ssh_fingerprints |
| なし | metadata.entity_type |
定数: ASSET |
| なし | metadata.product_name |
定数: Tenable IO |
| なし | metadata.vendor_name |
定数: Tenable IO |
| なし | security_result.severity |
定数: CRITICAL |
変更ログ
さらにサポートが必要な場合 コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。