Palo Alto Prisma Cloud のアラートログを収集する

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

概要

このパーサーは、Palo Alto Prisma Cloud からアラートログを JSON 形式で抽出し、UDM に変換します。パーサーは、データの正規化、型変換、条件付きロジックを実行して、適切な UDM フィールドにデータを入力します。また、ログデータ内のネストされた JSON 構造と配列を処理して、関連情報を抽出します。

始める前に

  • Google SecOps インスタンスがあることを確認します。
  • Palo Alto Prisma Cloud に対する特権アクセス権があることを確認します。

Palo Alto Prisma Cloud のアラートを取り込むように Google SecOps でフィードを構成する

  1. [SIEM 設定] > [フィード] に移動します。
  2. [新しく追加] をクリックします。
  3. [フィード名] フィールドに、フィードの名前を入力します(例: PAN Prisma Cloud アラート)。
  4. [ソースタイプ] として [Webhook] を選択します。
  5. [Log type] として [Palo Alto Prisma Cloud Alerts payload] を選択します。
  6. [次へ] をクリックします。
  7. 省略可: 次の入力パラメータの値を指定します。
    • 分割区切り文字: ログ行を区切るために使用される区切り文字(\n など)。
    • アセットの名前空間: アセットの名前空間
    • 取り込みラベル: このフィードのイベントに適用されるラベル。
  8. [次へ] をクリックします。
  9. [Finalize] 画面でフィードの設定を確認し、[送信] をクリックします。
  10. [秘密鍵を生成する] をクリックして、このフィードを認証するためのシークレット キーを生成します。
  11. シークレット キーをコピーして保存します。この秘密鍵を再び表示することはできません。必要に応じて、新しい秘密鍵を再生成できますが、この操作により、以前の秘密鍵は無効になります。
  12. [詳細] タブで、[エンドポイント情報] フィールドから、フィードのエンドポイント URL をコピーします。このエンドポイント URL は、クライアント アプリケーションで指定する必要があります。
  13. [完了] をクリックします。

Webhook フィードの API キーを作成する

  1. Google Cloud コンソール > [認証情報] に移動します。

    [認証情報] に移動

  2. [認証情報を作成] をクリックして [API キー] を選択します。

  3. API キーのアクセスを Google Security Operations API に制限します。

エンドポイント URL を指定する

  1. クライアント アプリケーションで、Webhook フィードで指定された HTTPS エンドポイント URL を指定します。
  2. 次の形式でカスタム ヘッダーの一部として API キーとシークレット キーを指定して、認証を有効にします。

    X-goog-api-key = API_KEY
    X-Webhook-Access-Key = SECRET
    

    推奨事項: API キーは URL ではなくヘッダーとして指定してください。

  3. Webhook クライアントがカスタム ヘッダーをサポートしていない場合は、次の形式のクエリ パラメータを使用して API キーとシークレット キーを指定できます。

    ENDPOINT_URL?key=API_KEY&secret=SECRET
    

    次のように置き換えます。

    • ENDPOINT_URL: フィードのエンドポイント URL。
    • API_KEY: Google Security Operations の認証に使用する API キー。
    • SECRET: フィードの認証用に生成したシークレット キー。

Palo Alto Prisma Cloud Webhook を Google SecOps に構成する

  1. Palo Alto Prisma Cloud にログインします。
  2. [設定] > [統合と通知] ((and_then)) [統合] を選択します。
  3. [Add Integration] をクリックします。
  4. [Webhook] を選択します。
  5. 次の入力パラメータの値を指定します。
    • 統合名: 一意でわかりやすい名前を指定します(例: Google SecOps)。
    • Webhook URL: ENDPOINT_URL を入力します。
    • 省略可: 統合の説明を指定します。
    • 省略可: [カスタム ペイロード] を有効にして > [次へ] をクリックし、カスタム ペイロードを確認または修正します。
  6. [次へ] をクリックします。
  7. [テスト] と [統合を保存] をクリックします。

Palo Alto Prisma Cloud アラートを構成する

  1. Palo Alto Prisma Cloud コンソールで、[アラート] > [アラートルールを表示] に移動します。
  2. 編集する既存のアラートルールを選択します。
  3. 省略可: Cloud Infrastructure の新しいアラートを作成します
  4. 省略可: Cloud Workload の新しいアラートを作成します
  5. [通知を設定] に移動します。
  6. [Webhook] を選択します。
  7. 省略可: アラートルールによってトリガーされたアラートの通知を送信するチャネルを選択します。
  8. [次へ] をクリックします。
  9. [保存] をクリックします。

UDM マッピング テーブル

ログフィールド UDM マッピング ロジック
accountId target.resource.id 未加工ログの accountId の値。
accountId target.resource.product_object_id 未加工ログの accountId の値。これは、非推奨の resource.id フィールドをオーバーライドします。
alertId security_result.detection_fields[].key キーは「alert id」に設定されています。
alertId security_result.detection_fields[].value 未加工ログの alertId の値。
alertRuleId security_result.rule_id 未加工ログの alertRuleId の値。
alertRuleName security_result.rule_name 未加工ログの alertRuleName の値。
alertStatus security_result.detection_fields[].key キーは「アラート ステータス」に設定されています。
alertStatus security_result.detection_fields[].value 未加工ログの alertStatus の値。
alertTs security_result.detection_fields[].key キーは「alertTs」に設定されています。
alertTs security_result.detection_fields[].value 未加工ログの alertTs の値を文字列に変換したもの。
callbackUrl metadata.url_back_to_product 未加工ログの callbackUrl の値。
cloudType principal.cloud.environment cloudType が「gcp」(大文字と小文字は区別されません)の場合、値は「GOOGLE_CLOUD_PLATFORM」に設定されます。
complianceMetadata[].complianceId security_result.detection_fields[].key キーは「complianceId」に設定されています。
complianceMetadata[].complianceId security_result.detection_fields[].value 未加工ログの complianceMetadata[].complianceId の値。
complianceMetadata[].customAssigned security_result.detection_fields[].key キーは「customAssigned」に設定されています。
complianceMetadata[].customAssigned security_result.detection_fields[].value 未加工ログの complianceMetadata[].customAssigned の値を文字列に変換したもの。
complianceMetadata[].policyId security_result.detection_fields[].key キーは「ポリシー ID」に設定されています。
complianceMetadata[].policyId security_result.detection_fields[].value 未加工ログの complianceMetadata[].policyId の値。
complianceMetadata[].requirementId security_result.rule_id 未加工ログの complianceMetadata[].requirementId の値。
complianceMetadata[].requirementName security_result.summary 未加工ログの complianceMetadata[].requirementName の値。
complianceMetadata[].requirementViewOrder security_result.detection_fields[].key キーは「requirementViewOrder」に設定されています。
complianceMetadata[].requirementViewOrder security_result.detection_fields[].value 未加工ログの complianceMetadata[].requirementViewOrder の値を文字列に変換したもの。
complianceMetadata[].sectionDescription security_result.detection_fields[].key キーは「sectionDescription」に設定されています。
complianceMetadata[].sectionDescription security_result.detection_fields[].value 未加工ログの complianceMetadata[].sectionDescription の値。
complianceMetadata[].sectionId security_result.detection_fields[].key キーは「sectionId」に設定されています。
complianceMetadata[].sectionId security_result.detection_fields[].value 未加工ログの complianceMetadata[].sectionId の値。
complianceMetadata[].sectionLabel security_result.detection_fields[].key キーは「sectionLabel」に設定されています。
complianceMetadata[].sectionLabel security_result.detection_fields[].value 未加工ログの complianceMetadata[].sectionLabel の値。
complianceMetadata[].sectionViewOrder security_result.detection_fields[].key キーは「sectionViewOrder」に設定されています。
complianceMetadata[].sectionViewOrder security_result.detection_fields[].value 未加工ログの complianceMetadata[].sectionViewOrder の値を文字列に変換したもの。
complianceMetadata[].standardDescription security_result.detection_fields[].key キーは「standardDescription」に設定されています。
complianceMetadata[].standardDescription security_result.detection_fields[].value 未加工ログの complianceMetadata[].standardDescription の値。
complianceMetadata[].standardName security_result.rule_name 未加工ログの complianceMetadata[].standardName の値。
complianceMetadata[].systemDefault security_result.detection_fields[].key キーが「systemDefault」に設定されている。
complianceMetadata[].systemDefault security_result.detection_fields[].value 未加工ログの complianceMetadata[].systemDefault の値を文字列に変換したもの。
create_time metadata.event_timestampevents[].timestamp 未加工ログの create_time の値。
data.allocationId principal.resource.product_object_id 未加工ログの data.allocationId の値。
data.publicIp principal.ip 未加工ログの data.publicIp の値。
deleted additional.fields[].key キーが「deleted」に設定されている。
deleted additional.fields[].value.string_value 未加工ログの deleted の値を文字列に変換したもの。
description metadata.description 未加工ログの description の値。
firstSeen principal.asset.first_seen_time タイムスタンプ(UNIX_MS 形式または UNIX 形式)として解析された、未加工ログの firstSeen の値。
hasFinding security_result.detection_fields[].key キーは「hasFinding」に設定されています。
hasFinding security_result.detection_fields[].value 未加工ログの hasFinding の値を文字列に変換したもの。
lastSeen principal.asset.last_discover_time タイムスタンプ(UNIX_MS 形式または UNIX 形式)として解析された、未加工ログの lastSeen の値。
なし metadata.event_type ログ内の特定のイベントタイプでオーバーライドされていない場合は、「USER_RESOURCE_ACCESS」に設定します。それ以外の場合は「GENERIC_EVENT」に設定します。
なし metadata.product_name 「CASB」にハードコードされました。
なし metadata.vendor_name 「Palo Alto Networks」にハードコードされています。
policyDescription security_result.detection_fields[].key キーは「policyDescription」に設定されています。
policyDescription security_result.detection_fields[].value 未加工ログの policyDescription の値。
policyId security_result.detection_fields[].key キーは「ポリシー ID」に設定されています。
policyId security_result.detection_fields[].value 未加工ログの policyId の値。
policyLabels additional.fields[].key キーは「policyLabels」に設定されています。
policyLabels additional.fields[].value.string_value 未加工ログの policyLabels の値。
policyName security_result.description 未加工ログの policyName の値。
policyRecommendation security_result.detection_fields[].key キーが「ポリシーに関する推奨事項」に設定されている。
policyRecommendation security_result.detection_fields[].value 未加工ログの policyRecommendation の値。
policyType security_result.detection_fields[].key キーが「ポリシータイプ」に設定されている。
policyType security_result.detection_fields[].value 未加工ログの policyType の値。
reason security_result.summary 未加工ログの reason の値。
recommendation security_result.detection_fields[].key キーは「Recommendation」に設定されています。
recommendation security_result.detection_fields[].value 未加工ログの recommendation の値。
resource.additionalInfo principal.resource.attribute.labels[].key キーは「resource additionalInfo」に設定されています。
resource.additionalInfo principal.resource.attribute.labels[].value 未加工ログの resource.additionalInfo の値。
resource.cloudAccountGroups principal.resource.attribute.labels[].key キーは「resource cloudAccountGroups {index}」に設定されています。
resource.cloudAccountGroups principal.resource.attribute.labels[].value 未加工ログの resource.cloudAccountGroups[] の値。
resource.cloudType principal.resource.attribute.labels[].key キーは「resource cloudType」に設定されています。
resource.cloudType principal.resource.attribute.labels[].value 未加工ログの resource.cloudType の値。
resource.data principal.resource.attribute.labels[].key キーは「resource data {nested_key}」に設定されています。
resource.data principal.resource.attribute.labels[].value 未加工ログの resource.data[] の値。
resource.id principal.resource.product_object_id 未加工ログの resource.id の値。
resource.name principal.resource.name 未加工ログの resource.name の値。
resource.region principal.location.country_or_region 未加工ログの resource.region の値。
resource.regionId principal.cloud.availability_zone 未加工ログの resource.regionId の値。
resource.resourceApiName principal.resource.attribute.labels[].key キーは「resource resourceApiName」に設定されています。
resource.resourceApiName principal.resource.attribute.labels[].value 未加工ログの resource.resourceApiName の値。
resource.resourceTags principal.resource.attribute.labels[].key キーは「resource resourceTags {nested_key}」に設定されています。
resource.resourceTags principal.resource.attribute.labels[].value 未加工ログの resource.resourceTags[] の値。
resource.resourceTs principal.resource.attribute.labels[].key キーは「resource resourceTs」に設定されています。
resource.resourceTs principal.resource.attribute.labels[].value 未加工ログの resource.resourceTs の値。
resource.resourceType principal.resource.attribute.labels[].key キーは「resource resourceType」に設定されています。
resource.resourceType principal.resource.attribute.labels[].value 未加工ログの resource.resourceType の値。
resource.rrn principal.resource.attribute.labels[].key キーは「resource rrn」に設定されています。
resource.rrn principal.resource.attribute.labels[].value 未加工ログの resource.rrn の値。
resource.url principal.url 未加工ログの resource.url の値。
resourceCloudService principal.resource.attribute.labels[].key キーは「リソース クラウド サービス」に設定されています。
resourceCloudService principal.resource.attribute.labels[].value 未加工ログの resourceCloudService の値。
resourceName principal.resource.name 未加工ログの resourceName の値。
resourceRegion principal.location.country_or_region 未加工ログの resourceRegion の値。
resourceRegionId principal.cloud.availability_zone 未加工ログの resourceRegionId の値。
resourceType target.resource.resource_subtype 未加工ログの resourceType の値。
severity security_result.severity 未加工ログの severity の値(大文字に変換)。UDM の重大度値(CRITICAL、HIGH、MEDIUM、LOW、INFORMATIONAL)にマッピングされます。
source principal.application 未加工ログの source の値。
unifiedAssetId principal.asset.asset_id 未加工ログの unifiedAssetId の値。接頭辞は「ASSETID:」です。

変更点

2023-12-10

  • JSON 部分を抽出する Grok パターンを追加しました。
  • 「resourceId」を「principal.resource.product_object_id」にマッピングしました。
  • 「accountId」を「target.resource.product_object_id」にマッピングしました。
  • 「alertRuleName」を「security_result.rule_name」にマッピングしました。
  • 「accountName」を「target.resource.name」にマッピングしました。
  • 「hasFinding」を「security_result.detection_fields」にマッピングしました。
  • 「resourceRegionId」を「principal.cloud.availability_zone」にマッピングしました。
  • 「source」を「principal.application」にマッピングしました。
  • 「callbackUrl」を「metadata.url_back_to_product」にマッピングしました。
  • 「alertRuleId」を「security_result.rule_id」にマッピングしました。
  • 「alertId」を「security_result.detection_fields」にマッピングしました。
  • 「policyLabels」を「additional.fields」にマッピングしました。
  • 「policyName」を「security_result.description」にマッピングしました。
  • 「resourceName」を「principal.resource.name」にマッピングしました。
  • 「resourceRegion」を「principal.location.country_or_region」にマッピングしました。
  • 「policyDescription」を「security_result.detection_fields」にマッピングしました。
  • 「policyRecommendation」を「security_result.detection_fields」にマッピングしました。
  • 「resourceCloudService」を「principal.resource.attribute.labels」にマッピングしました。
  • 「resource.url」を「principal.url」にマッピングしました。
  • 「alertTs」を「security_result.detection_fields」にマッピングしました。
  • 「firstSeen」を「principal.asset.first_seen_time」にマッピングしました。
  • 「lastSeen」を「principal.asset.last_discover_time」にマッピングしました。
  • 「reason」を「security_result.summary」にマッピングしました。
  • 「alertStatus」を「security_result.detection_fields」にマッピングしました。
  • 「severity」値が「HIGH」の場合は、「security_result.severity」を「HIGH」に設定します。
  • 「cloudType」の値が「gcp」の場合は、「principal.cloud.environment」を「GOOGLE_CLOUD_PLATFORM」に設定します。

2023-08-17

  • 新しく作成されたパーサー。