收集 Lacework Cloud Security 記錄

支援以下發布途徑:

總覽

這個剖析器會從 Lacework Cloud Security JSON 記錄中擷取欄位,並將這些欄位轉換為 UDM 格式。這項工具會將原始記錄欄位對應至 UDM 欄位,處理各種資料類型,並透過代碼提供的額外背景資訊豐富事件內容,最終根據實體和目標資訊的存在與否,將事件類型分類。

事前準備

請確認您已完成下列事前準備:

  • Google Security Operations 執行個體。
  • 對 FortiCNAPP Lacework 的特殊存取權。

設定動態饋給

在 Google SecOps 平台中,有兩個不同的入口可用來設定動態消息:

  • SIEM 設定 > 動態饋給
  • 內容中心 > 內容包

依序前往「SIEM 設定」>「動態饋給」,設定動態饋給

如要設定動態饋給,請按照下列步驟操作:

  1. 依序前往「SIEM 設定」>「動態」
  2. 按一下「新增動態消息」
  3. 在下一頁中,按一下「設定單一動態饋給」
  4. 在「動態饋給名稱」欄位中輸入動態饋給的名稱 (例如「Lacework Logs」)。
  5. 將「來源類型」設為「Webhook」
  6. 選取「Lacework」做為「記錄類型」
  7. 點選「下一步」
  8. 選用:指定下列輸入參數的值:
    • 分隔符號:用於分隔記錄行 (例如 \n) 的分隔符號。
  9. 點選「下一步」
  10. 在「Finalize」畫面中查看動態饋給設定,然後按一下「Submit」
  11. 按一下「產生密鑰」,即可產生密鑰來驗證這項動態饋給。
  12. 複製並儲存密鑰。您無法再次查看這個密鑰。如有需要,您可以重新產生新的密鑰,但這項操作會使先前的密鑰失效。
  13. 在「Details」分頁中,從「Endpoint Information」欄位複製動態饋給端點網址。您必須在用戶端應用程式中指定這個端點網址。
  14. 按一下 [完成]

透過內容中心設定動態饋給

指定下列欄位的值:

  • 分隔符號:用於分隔記錄行 (例如 \n) 的分隔符號。

進階選項

  • 動態饋給名稱:預先填入的值,用於識別動態饋給。
  • 來源類型:用於收集記錄並匯入 Google SecOps 的方法。
  • 素材資源命名空間:與動態饋給相關聯的命名空間。
  • 攝入標籤:套用至這個動態饋給中所有事件的標籤。

  • 按一下「產生密鑰」,即可產生密鑰來驗證這項動態饋給。

  • 複製並儲存密鑰。您無法再次查看這個密鑰。如有需要,您可以重新產生新的密鑰,但這項操作會使先前的密鑰失效。

  • 在「Details」分頁中,從「Endpoint Information」欄位複製動態饋給端點網址。您必須在用戶端應用程式中指定這個端點網址。

為 webhook 動態饋給建立 API 金鑰

  1. 依序前往 Google Cloud 主控台 >「憑證」

    前往「憑證」

  2. 按一下 [Create credentials] (建立憑證),然後選取 [API key] (API 金鑰)

  3. 限制 API 金鑰存取 Chronicle API

指定端點網址

  1. 在用戶端應用程式中,指定 webhook 動態饋給中提供的 HTTPS 端點網址。
  2. 請按照下列格式,將 API 金鑰和密鑰指定為自訂標頭的一部分,啟用驗證機制:

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

    建議:請以標頭的形式指定 API 金鑰,不要在網址中指定。

  3. 如果 webhook 用戶端不支援自訂標頭,您可以使用查詢參數指定 API 金鑰和密鑰,格式如下:

    ENDPOINT_URL?key=API_KEY&secret=SECRET
    

    更改下列內容:

    • ENDPOINT_URL:動態饋給端點網址。
    • API_KEY:用於向 Google SecOps 驗證的 API 金鑰。
    • SECRET:您用來驗證動態饋給而產生的密鑰。

為 Google SecOps 設定 Lacework Webhook

  1. 以管理員權限登入 Lacework FortiCNAPP 主控台。
  2. 依序前往「設定」>「通知」>「快訊管道」
  3. 按一下「+ 新增」
  4. 選取「Webhook」
  5. 點選「下一步」
  6. 為管道指定專屬名稱 (例如「Google SecOps」)。
  7. Webhook 網址:輸入 <ENDPOINT_URL>,後面接著 <API_KEY><SECRET>
  8. 按一下 [儲存]
  9. 選取「快訊規則」,然後設定所需的快訊轉送詳細資料。

UDM 對應表

記錄欄位 UDM 對應 邏輯
AGENT_VERSION metadata.product_version 直接從 AGENT_VERSION 欄位對應。
CREATED_TIME metadata.event_timestamp 直接從 CREATED_TIME 欄位對應,並轉換為時間戳記。
FILEDATA_HASH target.file.sha256 直接從 FILEDATA_HASH 欄位對應。
FILE_PATH target.file.full_path 直接從 FILE_PATH 欄位對應。
IP_ADDR principal.ip 直接從 IP_ADDR 欄位對應。
OS target.platform 已從 OS 欄位對應。邏輯會將各種作業系統字串 (Linux、Windows、Mac) 轉換為 UDM 列舉值 (LINUX、WINDOWS、MAC)。如果找不到相符項目,預設值為 UNKNOWN_PLATFORM。
STATUS additional.fields[].key:"STATUS", value.string_value 直接從 STATUS 欄位對應為額外欄位。
TAGS.Account metadata.product_deployment_id 直接從 TAGS.Account 欄位對應。
TAGS.AmiId additional.fields[].key:"AmiId", value.string_value 直接從 TAGS.AmiId 欄位對應為額外欄位。
TAGS.ExternalIp target.ip 直接從 TAGS.ExternalIp 欄位對應。
TAGS.Hostname principal.hostname 直接從 TAGS.Hostname 欄位對應。
TAGS.InstanceId target.asset_id 直接從 TAGS.InstanceId 欄位對應,開頭加上「Device Instance Id:」。
TAGS.LwTokenShort additional.fields[].key:"LwTokenShort", value.string_value 直接從 TAGS.LwTokenShort 欄位對應為額外欄位。
TAGS.MID additional.fields[].key:"MID", value.string_value 直接從 MID 欄位對應為額外欄位。
TAGS.MODE additional.fields[].key:"MODE", value.string_value 直接從 MODE 欄位對應為額外欄位。
TAGS.Name additional.fields[].key:"Name", value.string_value 直接從 TAGS.Name 欄位對應為額外欄位。
TAGS.QSConfigName-vfzg0 additional.fields[].key:"QSConfigName", value.string_value 直接從 TAGS.QSConfigName-vfzg0 欄位對應為額外欄位。
TAGS.ResourceType target.resource.resource_subtype 直接從 TAGS.ResourceType 欄位對應。
TAGS.SubnetId target.resource.attribute.labels[].key:"Subnet Id", value 直接從 TAGS.SubnetId 欄位對應至 target.resource.attribute 中的標籤。
TAGS.VmInstanceType target.resource.attribute.labels[].key:"VmInstanceType", value 直接從 TAGS.VmInstanceType 欄位對應至 target.resource.attribute 中的標籤。
TAGS.VmProvider target.resource.attribute.labels[].key:"VmProvider", value 直接從 TAGS.VmProvider 欄位對應為 target.resource.attribute 中的標籤。
TAGS.VpcId target.resource.product_object_id 直接從 TAGS.VpcId 欄位對應。
TAGS.Zone target.cloud.availability_zone 直接從 TAGS.Zone 欄位對應。
TAGS.alpha.eksctl.io/nodegroup-name additional.fields[].key:"eksctl_nodegroup_name", value.string_value 直接從 TAGS.alpha.eksctl.io/nodegroup-name 欄位對應為額外欄位。
TAGS.alpha.eksctl.io/nodegroup-type additional.fields[].key:"eksctl_nodegroup_type", value.string_value 直接從 TAGS.alpha.eksctl.io/nodegroup-type 欄位對應為額外欄位。
TAGS.arch principal.platform_version 直接從 TAGS.arch 欄位對應。
TAGS.aws:autoscaling:groupName additional.fields[].key:"autoscaling_groupName", value.string_value 直接從 TAGS.aws:autoscaling:groupName 欄位對應為額外欄位。
TAGS.aws:ec2:fleet-id additional.fields[].key:"ec2_fleetid", value.string_value 直接從 TAGS.aws:ec2:fleet-id 欄位對應為額外欄位。
TAGS.aws:ec2launchtemplate:id additional.fields[].key:"ec2launchtemplate_id", value.string_value 直接從 TAGS.aws:ec2launchtemplate:id 欄位對應為額外欄位。
TAGS.aws:ec2launchtemplate:version additional.fields[].key:"ec2launchtemplate_ver", value.string_value 直接從 TAGS.aws:ec2launchtemplate:version 欄位對應為額外欄位。
TAGS.aws:eks:cluster-name additional.fields[].key:"eks_cluster_name", value.string_value 直接從 TAGS.aws:eks:cluster-name 欄位對應為額外欄位。
TAGS.enableCrowdStrike additional.fields[].key:"enableCrowdStrike", value.string_value 直接從 TAGS.enableCrowdStrike 欄位對應為額外欄位。
TAGS.falconx.io/application additional.fields[].key:"io/application", value.string_value 直接從 TAGS.falconx.io/application 欄位對應為額外欄位。
TAGS.falconx.io/environment additional.fields[].key:"io/environment", value.string_value 直接從 TAGS.falconx.io/environment 欄位對應為額外欄位。
TAGS.falconx.io/managedBy additional.fields[].key:"io/managedBy", value.string_value 直接從 TAGS.falconx.io/managedBy 欄位對應為額外欄位。
TAGS.falconx.io/project additional.fields[].key:"io/project", value.string_value 直接從 TAGS.falconx.io/project 欄位對應為額外欄位。
TAGS.falconx.io/proxy-type additional.fields[].key:"io/proxy_type", value.string_value 直接從 TAGS.falconx.io/proxy-type 欄位對應為額外欄位。
TAGS.falconx.io/service additional.fields[].key:"io/service", value.string_value 直接從 TAGS.falconx.io/service 欄位對應為額外欄位。
TAGS.falconx.io/team additional.fields[].key:"io/team", value.string_value 直接從 TAGS.falconx.io/team 欄位對應為額外欄位。
TAGS.k8s.io/cluster-autoscaler/enabled additional.fields[].key:"k8s_autoscaler_enabled", value.string_value 直接從 TAGS.k8s.io/cluster-autoscaler/enabled 欄位對應為額外欄位。
TAGS.k8s.io/cluster-autoscaler/falcon additional.fields[].key:"k8s_cluster_autoscaler", value.string_value 直接從 TAGS.k8s.io/cluster-autoscaler/falcon 欄位對應為額外欄位。
TAGS.kubernetes.io/cluster/falcon additional.fields[].key:"kubernetes_io_cluster", value.string_value 直接從 TAGS.kubernetes.io/cluster/falcon 欄位對應為額外欄位。
TAGS.lw_KubernetesCluster additional.fields[].key:"lw_KubernetesCluster", value.string_value 直接從 TAGS.lw_KubernetesCluster 欄位對應為額外欄位。
LAST_UPDATE additional.fields[].key:"LAST_UPDATE", value.string_value 直接從 LAST_UPDATE 欄位對應為額外欄位。已硬式編碼為「LACEWORK」。硬式編碼為「Lacework Cloud Security」。
metadata.event_type metadata.event_type 取決於邏輯。如果同時有 principal.ip 和 target.ip,請將事件類型設為「NETWORK_CONNECTION」;如果只有 principal.ip,請設為「STATUS_UPDATE」;如果沒有,請設為「GENERIC_EVENT」。

異動

2023-11-09

  • 新建的剖析器。

還有其他問題嗎?向社群成員和 Google SecOps 專家尋求解答。