Qualys Vulnerability Management のログを収集する

以下でサポートされています。

このパーサーは、Key-Value(KV)形式または JSON 形式の Qualys Vulnerability Management ログを処理します。脆弱性の詳細、ホスト情報、スキャン メタデータを抽出し、UDM にマッピングします。このパーサーは、さまざまなログ構造も処理し、KV 解析を優先し、必要に応じて JSON にフォールバックします。また、DetectionList 配列を個々の脆弱性イベントに分割します。

始める前に

  • Google Security Operations インスタンスがあることを確認します。
  • Qualys VMDR コンソールに特権アクセスできることを確認します。

省略可: Qualys で専用の API ユーザーを作成する

  1. Qualys コンソールにログインします。
  2. [ユーザー] にアクセスします。
  3. [新規] > [ユーザー] をクリックします。
  4. ユーザーに必要な一般情報を入力します。
  5. [ユーザー役割] タブを選択します。
  6. ロールで [API アクセス] チェックボックスがオンになっていることを確認します。
  7. [保存] をクリックします。

特定の Qualys API URL を特定する

オプション 1

プラットフォームの識別で説明されているように、URL を特定します。

オプション 2

  1. Qualys コンソールにログインします。
  2. [ヘルプ] > [情報] に移動します。
  3. スクロールして、[セキュリティ オペレーション センター(SOC)] でこの情報を確認します。
  4. Qualys API の URL をコピーします。

Qulays VM ログを取り込むように Google SecOps でフィードを構成する

  1. [SIEM 設定] > [フィード] に移動します。
  2. [新しく追加] をクリックします。
  3. [フィード名] フィールドに、フィードの名前を入力します(例: Qualys VM ログ)。
  4. [ソースタイプ] として [サードパーティ API] を選択します。
  5. ログタイプとして [Qualys VM] を選択します。
  6. [次へ] をクリックします。
  7. 次の入力パラメータの値を指定します。
    • ユーザー名: ユーザー名を入力します。
    • シークレット: パスワードを入力します。
    • API Full Path: Qualys API サーバー URL(https://<qualys_base_url>/api/2.0/fo/asset/host/?action=list など)を指定します。ここで、<qualys_base_url> は、アカウントが配置されている Qualys API サーバーへのベース URL です。
    • アセットの名前空間: アセットの名前空間
    • 取り込みラベル: このフィードのイベントに適用されるラベル。
  8. [次へ] をクリックします。
  9. [Finalize] 画面でフィードの設定を確認し、[送信] をクリックします。

UDM マッピング テーブル

ログフィールド UDM マッピング ロジック
DETECTION.FIRST_FOUND_DATETIME extensions.vulns.vulnerabilities.first_found DETECTION.FIRST_FOUND_DATETIME フィールドから解析され、文字列値がタイムスタンプに変換されます。
DETECTION.LAST_FOUND_DATETIME extensions.vulns.vulnerabilities.last_found DETECTION.LAST_FOUND_DATETIME フィールドから解析され、文字列値がタイムスタンプに変換されます。
DETECTION.QID extensions.vulns.vulnerabilities.name 「QID:」と DETECTION.QID の値を連結します。
DETECTION.RESULTS extensions.vulns.vulnerabilities.description 説明フィールドに直接マッピングされます。また、grok を使用して network.ip_protocolprincipal.port を抽出するためにも使用されます。
DETECTION.SEVERITY extensions.vulns.vulnerabilities.severity DETECTION.SEVERITY からマッピングされます。値 0、1、2 は「LOW」、3、4 は「MEDIUM」、5、6、7 は「HIGH」になります。
DETECTION.STATUS extensions.vulns.vulnerabilities.about.labels キー「検出ステータス」のラベルとして追加されました。
DETECTION.TYPE extensions.vulns.vulnerabilities.about.labels キー「Detection type」のラベルとして追加されました。
DNS principal.hostname principal.hostname に直接マッピングされます。
DNSData.DOMAIN principal.domain.name principal.domain.name に直接マッピングされます。
HOST.ASSET_ID principal.asset_id 「QUALYS:」と HOST.ASSET_ID の値を連結します。
HOST.DNS principal.hostname DNS が空の場合は、principal.hostname に直接マッピングされます。
HOST.DNS_DATA.DOMAIN principal.domain.name DNSData.DOMAIN が空の場合は、principal.domain.name に直接マッピングされます。
HOST.ID metadata.product_log_id metadata.product_log_id に直接マッピングされます。
HOST.IP principal.ip IP が空の場合は、principal.ip に直接マッピングされます。
HOST.LAST_SCAN_DATETIME extensions.vulns.vulnerabilities.scan_start_time HOST.LAST_SCAN_DATETIME フィールドから解析され、文字列値がタイムスタンプに変換されます。
HOST.LAST_VM_SCANNED_DATE extensions.vulns.vulnerabilities.scan_end_time HOST.LAST_VM_SCANNED_DATE フィールドから解析され、文字列値がタイムスタンプに変換されます。
HOST.NETBIOS additional.fields キー「HOST NETBIOS」のラベルとして追加されました。
HOST.OS principal.platform_version OS が空の場合は、principal.platform_version に直接マッピングされます。
HOST.QG_HOSTID additional.fields キー「HOST QG_HOSTID」のラベルとして追加されました。
HOST.TRACKING_METHOD additional.fields キー「HOST TRACKING_METHOD」のラベルとして追加されました。
HOST_ID principal.asset_id 「QUALYS:」と HOST_ID の値を連結します。
ID metadata.product_log_id metadata.product_log_id に直接マッピングされます。
IP principal.ip principal.ip に直接マッピングされます。
LastScanDateTime extensions.vulns.vulnerabilities.scan_start_time LastScanDateTime フィールドから解析され、文字列値がタイムスタンプに変換されます。
LastVMAuthScanDuration additional.fields キー「LastVMAuthScanDuration」のラベルとして追加されました。
LastVMScanDate extensions.vulns.vulnerabilities.scan_end_time LastVMScanDate フィールドから解析され、文字列値がタイムスタンプに変換されます。
LastVMScanDuration additional.fields キー「LastVMScanDuration」のラベルとして追加されました。
LAST_FOUND_DATETIME extensions.vulns.vulnerabilities.last_found LAST_FOUND_DATETIME フィールドから解析され、文字列値がタイムスタンプに変換されます。
LAST_SCAN_DATETIME extensions.vulns.vulnerabilities.scan_start_time LAST_SCAN_DATETIME フィールドから解析され、文字列値がタイムスタンプに変換されます。
LAST_VM_SCANNED_DATE extensions.vulns.vulnerabilities.scan_end_time LAST_VM_SCANNED_DATE フィールドから解析され、文字列値がタイムスタンプに変換されます。
NETBIOS additional.fields キー「NETBIOS」のラベルとして追加されました。
NetworkID additional.fields キー「NetworkID」のラベルとして追加されました。
NETWORK_ID additional.fields キー「NetworkID」のラベルとして追加されました。
OS principal.platform_version principal.platform_version に直接マッピングされます。
Os principal.platform_version OS が空の場合は、principal.platform_version に直接マッピングされます。
QID extensions.vulns.vulnerabilities.name 「QID:」と QID の値を連結します。
QgHostID principal.asset_id principal.asset_id を「ホスト ID:%{QgHostID}」に設定します。
SEVERITY extensions.vulns.vulnerabilities.severity SEVERITY からマッピングされます。値 0、1、2 は「LOW」、3、4 は「MEDIUM」、5、6、7 は「HIGH」になります。
TRACKING_METHOD additional.fields キー「TRACKING_METHOD」のラベルとして追加されました。
TrackingMethod additional.fields キー「TRACKING_METHOD」のラベルとして追加されました。
なし metadata.vendor_name 「Qualys」にハードコードされました。
なし metadata.product_name 「脆弱性管理」にハードコードされました。
なし metadata.event_type _vulns が空でない場合:「SCAN_VULN_HOST」に設定します。prin_host または IP のいずれかが空でない場合:「STATUS_UPDATE」に設定します。それ以外の場合は「GENERIC_EVENT」に設定します。
なし metadata.log_type 元のログの log_type フィールドから取得されます。
なし principal.platform OSOsHOST.OS から決定されます。これらのいずれかに「Linux」が含まれている場合、プラットフォームは「LINUX」に設定されます。いずれかに「Windows」が含まれている場合、プラットフォームは「WINDOWS」に設定されます。いずれかに「mac」または「IOS」が含まれている場合、プラットフォームは「MAC」に設定されます。
detection.DType extensions.vulns.vulnerabilities.about.resource.attribute.labels DetectionList フィールドから解析されたイベントの脆弱性配列内に、キー「検出タイプ」を持つラベルとして追加されました。
detection.FirstFoundTime extensions.vulns.vulnerabilities.first_found detection.FirstFoundTime フィールドから解析され、DetectionList フィールドから解析されたイベントの脆弱性配列内の文字列値をタイムスタンプに変換します。
detection.LastFoundTime extensions.vulns.vulnerabilities.last_found detection.LastFoundTime フィールドから解析され、DetectionList フィールドから解析されたイベントの脆弱性配列内の文字列値をタイムスタンプに変換します。
detection.LastProcessedDatetime extensions.vulns.vulnerabilities.about.resource.attribute.labels DetectionList フィールドから解析されたイベントの脆弱性配列内に、キー「LastProcessedDatetime」を持つラベルとして追加されました。
detection.LastTestDateTime extensions.vulns.vulnerabilities.about.resource.attribute.labels DetectionList フィールドから解析されたイベントの脆弱性配列内に、キー「LastTestDateTime」を持つラベルとして追加されました。
detection.LastUpdateDateTime extensions.vulns.vulnerabilities.about.resource.attribute.labels DetectionList フィールドから解析されたイベントの脆弱性配列内に、キー「LastUpdateDateTime」を持つラベルとして追加されました。
detection.Qid extensions.vulns.vulnerabilities.name DetectionList フィールドから解析されたイベントの脆弱性配列内の detection.Qid の値に「QID:」を連結します。
detection.Results extensions.vulns.vulnerabilities.description DetectionList フィールドから解析されたイベントの vulnerabilities 配列内の description フィールドに直接マッピングされます。タブと改行はスペースに置き換えられます。
detection.Severity extensions.vulns.vulnerabilities.severity detection.Severity からマッピングされます。DetectionList フィールドから解析されたイベントの脆弱性配列内で、値 0、1、2 は「低」、3、4 は「中」、5、6、7 は「高」になります。
detection.Status extensions.vulns.vulnerabilities.about.resource.attribute.labels DetectionList フィールドから解析されたイベントの脆弱性配列内に、キー「検出ステータス」を持つラベルとして追加されました。
detection.TimesFound extensions.vulns.vulnerabilities.about.resource.attribute.labels DetectionList フィールドから解析されたイベントの脆弱性配列内に、キー「TimesFound」を持つラベルとして追加されました。
timestamp metadata.event_timestamptimestamp 元のログの timestamp フィールドは、イベント タイムスタンプと最上位のタイムスタンプの両方に使用されます。

変更点

2023-10-27

  • 複数の「QID」がある場合にイベントを分割する「for」ループを追加しました。

2023-04-25

  • 「DetectionList.FirstFoundTime」を「extensions.vulns.vulnerabilities.first_found」にマッピングしました。
  • 「DetectionList.LastFoundTime」を「extensions.vulns.vulnerabilities.last_found」にマッピングしました。
  • 「DetectionList.TimesFound」を「extensions.vulns.vulnerabilities.about.resource.attribute.labels」にマッピングしました。
  • 「DetectionList.LastTestDateTime」を「extensions.vulns.vulnerabilities.about.resource.attribute.labels」にマッピングしました。
  • 「DetectionList.LastUpdateDateTime」を「extensions.vulns.vulnerabilities.about.resource.attribute.labels」にマッピングしました。
  • 「DetectionList.LastProcessedDatetime」を「extensions.vulns.vulnerabilities.about.resource.attribute.labels」にマッピングしました。

2023-01-23

  • 「DetectionList」配列の詳細を「extensions.vulns.vulnerabilities」にマッピングしました。
  • 「DetectionList.Qid」を「extensions.vulns.vulnerabilities.name」にマッピングしました。
  • 「DetectionList.Severity」を「extensions.vulns.vulnerabilities.severity」にマッピングしました。
  • 「DetectionList.Results」を「extensions.vulns.vulnerabilities.description」にマッピングしました。
  • 「DetectionList.Status」、「DetectionList.DType」を「extensions.vulns.vulnerabilities.about.resource.attribute.labels」にマッピングしました。

2022-09-29

  • 「ID」を「metadata.product_log_id」にマッピングしました。
  • 「Netbios」、「TrackingMethod」、「NetworkID」を「additional.fields」にマッピングしました。
  • 「QgHostID」を「principal.asset_id」にマッピングしました。
  • 「Os」を「principal.platform_version」にマッピングしました。
  • 「vulns」の条件付きチェックを追加しました。

2022-07-20

  • 次のフィールドのマッピングを追加しました。
  • 「DETECTION.FIRST_FOUND_DATETIME」を「event.idm.read_only_udm.extensions.vulns.vulnerabilities.first_found」にマッピングしました。
  • 「DETECTION.LAST_FOUND_DATETIME」を「event.idm.read_only_udm.extensions.vulns.vulnerabilities.last_found」にマッピングしました。
  • 「HOST.LAST_VM_SCANNED_DATE」を「event.idm.read_only_udm.extensions.vulns.vulnerabilities.scan_end_time」にマッピング。
  • 「HOST.LAST_SCAN_DATETIME」を「event.idm.read_only_udm.extensions.vulns.vulnerabilities.scan_start_time」にマッピングしました。
  • 「DETECTION.QID」を「event.idm.read_only_udm.extensions.vulns.vulnerabilities.name」にマッピングしました。
  • 「DETECTION.SEVERITY」を「event.idm.read_only_udm.extensions.vulns.vulnerabilities.severity」にマッピングしました。
  • 「DETECTION.TYPE」を「event.idm.read_only_udm.extensions.vulns.vulnerabilities.about.labels」にマッピングしました。
  • 「DETECTION.STATUS」を「event.idm.read_only_udm.extensions.vulns.vulnerabilities.labels」にマッピングしました。
  • 「DETECTION.RESULTS」が「event.idm.read_only_udm.extensions.vulns.vulnerabilities.description」にマッピングされました。
  • 「HOST.DNS_DATA.DOMAIN」を「event.idm.read_only_udm.principal.domain.name」にマッピングしました。
  • 「HOST.ASSET_ID」を「event.idm.read_only_udm.principal.asset_id」にマッピングしました。
  • 「HOST.IP」を「event.idm.read_only_udm.principal.ip」にマッピングしました。
  • 「HOST.OS」を「event.idm.read_only_udm.principal.platform_version」にマッピングしました。
  • 「HOST.DNS」が「event.idm.read_only_udm.principal.hostname」にマッピングされました。
  • 「HOST.QG_HOSTID」を「event.idm.read_only_udm.additional.fields」にマッピングしました。
  • 「HOST.NETBIOS」を「event.idm.read_only_udm.additional.fields」にマッピングしました。
  • 「HOST.TRACKING_METHOD」を「event.idm.read_only_udm.additional.fields」にマッピングしました。