Mengumpulkan log Wiz

Didukung di:

Dokumen ini menjelaskan cara menyerap log Wiz ke Google Security Operations. Parser mengubah log mentah berformat JSON dari Wiz menjadi Unified Data Model (UDM). Pertama, ini menginisialisasi nilai default untuk kolom UDM, lalu mengurai pesan JSON, mengekstrak kolom yang relevan seperti informasi pengguna, lokasi, detail perangkat, dan hasil keamanan. Wiz adalah platform keamanan cloud yang memberikan visibilitas menyeluruh dan prioritas risiko tanpa agen di seluruh lingkunganGoogle Cloud, AWS, Azure, OCI, dan Kubernetes.

Sebelum memulai

Pastikan Anda memiliki prasyarat berikut:

  • Instance Google SecOps
  • Akses dengan hak istimewa ke Wiz

Mendapatkan ID pelanggan Google SecOps

  1. Login ke konsol Google SecOps.
  2. Buka Setelan SIEM > Profil.
  3. Salin dan simpan ID Pelanggan dari bagian Detail Organisasi.

Mendapatkan file autentikasi penyerapan Google SecOps

  1. Login ke konsol Google SecOps.
  2. Buka Setelan SIEM > Agen Pengumpulan.
  3. Download File Autentikasi Proses Transfer. Simpan file dengan aman di sistem tempat Bindplane akan diinstal.

Mengonfigurasi integrasi di Wiz

  1. Login ke UI web Wiz.
  2. Buka halaman Connect to Wiz.
  3. Klik Google Cloud Chronicle.
  4. Pilih Cakupan.
  5. Masukkan ID Pelanggan Google SecOps Anda.
  6. Masukkan alamat Endpoint instance Google SecOps [Chronicle]:

  7. Upload Kunci Akun Layanan Google.

  8. Klik Simpan.

Tabel pemetaan UDM

Kolom log Pemetaan UDM Logika
tindakan metadata.product_event_type Pemetaan langsung saat eventType kosong.
tindakan principal.application Pemetaan langsung saat tindakan adalah Report dan serviceAccount.name tidak kosong.
actionParameters.groups security_result.detection_fields.value Parser melakukan iterasi melalui setiap grup di actionParameters.groups dan memetakan ke entri detection_fields terpisah dengan kunci service_account_group.
actionParameters.input.patch.portalVisitHistory.dateTime additional.fields.value.string_value Parser melakukan iterasi melalui setiap item di actionParameters.input.patch.portalVisitHistory dan mengekstrak kolom dateTime, memetakan ke entri additional.fields terpisah dengan kunci dateTime {index}.
actionParameters.input.patch.portalVisitHistory.id principal.resource.attribute.labels.value Parser melakukan iterasi melalui setiap item di actionParameters.input.patch.portalVisitHistory dan mengekstrak kolom id, memetakan ke entri principal.resource.attribute.labels terpisah dengan kunci id {index}.
actionParameters.input.patch.portalVisitHistory.name principal.resource.attribute.labels.value Parser melakukan iterasi melalui setiap item di actionParameters.input.patch.portalVisitHistory dan mengekstrak kolom nama, yang memetakan ke entri principal.resource.attribute.labels terpisah dengan kunci name {index}.
actionParameters.input.patch.portalVisitHistory.resourceName principal.resource.attribute.labels.value Parser melakukan iterasi melalui setiap item di actionParameters.input.patch.portalVisitHistory dan mengekstrak kolom resourceName, yang memetakan ke entri principal.resource.attribute.labels terpisah dengan kunci resourceName {index}.
actionParameters.input.patch.portalVisitHistory.resourceType principal.resource.attribute.labels.value Parser melakukan iterasi melalui setiap item di actionParameters.input.patch.portalVisitHistory dan mengekstrak kolom resourceType, memetakan ke entri principal.resource.attribute.labels terpisah dengan kunci resourceType {index}.
actionParameters.input.patch.portalVisitHistory.ruleType principal.resource.attribute.labels.value Parser melakukan iterasi melalui setiap item di actionParameters.input.patch.portalVisitHistory dan mengekstrak kolom ruleType, yang memetakan ke entri principal.resource.attribute.labels terpisah dengan kunci ruleType {index}.
actionParameters.input.patch.portalVisitHistory.type additional.fields.value.string_value Parser melakukan iterasi melalui setiap item di actionParameters.input.patch.portalVisitHistory dan mengekstrak kolom type, memetakan ke entri additional.fields terpisah dengan kunci type {index}.
actionParameters.name target.user.user_display_name Pemetaan langsung saat actionParameters.name tidak kosong.
actionParameters.products security_result.detection_fields.value Parser melakukan iterasi melalui setiap produk di actionParameters.products (tidak termasuk string kosong dan *) dan memetakan ke entri detection_fields terpisah dengan kunci service_account_product.
actionParameters.role target.user.attribute.roles.name Pemetaan langsung jika actionParameters.role tidak kosong.
actionParameters.scopes security_result.detection_fields.value Parser melakukan iterasi melalui setiap cakupan di actionParameters.scopes dan memetakan ke entri detection_fields terpisah dengan kunci service_account_scope.
actionParameters.selection additional.fields.value.list_value.values.string_value Parser melakukan iterasi melalui setiap item di actionParameters.selection.preferences dan memetakan ke entri string_value terpisah dalam additional.fields.value.list_value.values.
actionParameters.userEmail target.user.email_addresses Diekstrak menggunakan pola grok dan dipetakan jika tidak kosong.
actionParameters.userID target.user.userid Pemetaan langsung saat actionParameters.userID tidak kosong.
actor.displayName target.user.user_display_name Pemetaan langsung saat actor.displayName tidak kosong dan bukan unknown.
actor.id target.user.userid Pemetaan langsung saat actor.id tidak kosong.
authenticationContext.authenticationProvider security_result.detection_fields.value Dipetakan ke entri detection_fields dengan kunci authenticationProvider jika tidak kosong.
authenticationContext.credentialProvider security_result.detection_fields.value Dipetakan ke entri detection_fields dengan kunci credentialProvider jika tidak kosong.
authenticationContext.credentialType extensions.auth.mechanism Digunakan untuk mendapatkan nilai untuk extensions.auth.mechanism berdasarkan nilai tertentu.
authenticationContext.externalSessionId network.parent_session_id Pemetaan langsung jika tidak kosong dan bukan unknown.
client.device principal.asset.type Digunakan untuk memperoleh nilai untuk principal.asset.type berdasarkan nilai tertentu.
client.geographicalContext.city principal.location.city Pemetaan langsung jika tidak kosong.
client.geographicalContext.country principal.location.country_or_region Pemetaan langsung jika tidak kosong.
client.geographicalContext.geolocation.lat principal.location.region_latitude Pemetaan langsung jika tidak kosong.
client.geographicalContext.geolocation.lon principal.location.region_longitude Pemetaan langsung jika tidak kosong.
client.geographicalContext.postalCode additional.fields.value.string_value Dipetakan ke entri additional.fields dengan kunci Postal code jika tidak kosong.
client.geographicalContext.state principal.location.state Pemetaan langsung jika tidak kosong.
client.ipAddress principal.asset.ip Digabung dengan principal.ip dan principal.asset.ip jika tidak kosong.
client.ipAddress principal.ip Digabung dengan principal.ip dan principal.asset.ip jika tidak kosong.
client.userAgent.browser target.resource.attribute.labels.value Dipetakan ke entri target.resource.attribute.labels dengan kunci Browser jika tidak kosong.
client.userAgent.os principal.platform Digunakan untuk mendapatkan nilai untuk principal.platform berdasarkan nilai tertentu.
client.userAgent.rawUserAgent network.http.user_agent Pemetaan langsung jika tidak kosong.
debugContext.debugData.behaviors security_result.description Pemetaan langsung jika tidak kosong.
debugContext.debugData.deviceFingerprint target.asset.asset_id Dipetakan ke target.asset.asset_id dengan awalan device_finger_print: jika tidak kosong.
debugContext.debugData.dtHash security_result.detection_fields.value Dipetakan ke entri detection_fields dengan kunci dtHash jika tidak kosong.
debugContext.debugData.factor security_result.detection_fields.value Dipetakan ke entri detection_fields dengan kunci factor jika tidak kosong.
debugContext.debugData.promptingPolicyTypes security_result.detection_fields.value Dipetakan ke entri detection_fields dengan kunci promptingPolicyTypes jika tidak kosong.
debugContext.debugData.requestUri extensions.auth.auth_details Pemetaan langsung jika tidak kosong.
eventType metadata.event_type Digunakan untuk memperoleh nilai untuk metadata.event_type berdasarkan nilai tertentu.
eventType metadata.product_event_type Pemetaan langsung jika tidak kosong.
outcome.reason security_result.category_details Pemetaan langsung jika tidak kosong.
outcome.result security_result.action Dipetakan ke security_result.action setelah normalisasi berdasarkan nilai tertentu.
requestId metadata.product_log_id Pemetaan langsung jika tidak kosong.
serviceAccount.name principal.application Pemetaan langsung saat tindakan adalah Report dan serviceAccount.name tidak kosong.
sourceIP principal.asset.ip Diekstrak menggunakan pola grok dan digabungkan dengan principal.ip dan principal.asset.ip jika tidak kosong dan valid.
sourceIP principal.ip Diekstrak menggunakan pola grok dan digabungkan dengan principal.ip dan principal.asset.ip jika tidak kosong dan valid.
status security_result.summary Pemetaan langsung jika tidak kosong.
timestamp metadata.event_timestamp Dikonversi ke format stempel waktu dan dipetakan jika tidak kosong.
user.id target.user.userid Pemetaan langsung saat actionParameters.userID kosong dan user.id tidak kosong.
user.name target.user.user_display_name Pemetaan langsung saat actionParameters.name kosong dan user.name tidak kosong.
userAgent network.http.user_agent Pemetaan langsung saat client.userAgent.rawUserAgent kosong dan userAgent tidak kosong.
extensions.auth.type Tetapkan ke AUTHTYPE_UNSPECIFIED jika has_user bernilai benar dan tindakan adalah Login.
metadata.product_name Tetapkan ke WIZ_IO.
metadata.vendor_name Tetapkan ke WIZ_IO.
network.http.parsed_user_agent Diambil dari user_agent_value dengan mengonversinya menjadi parseduseragent.
security_result.severity Berasal dari tingkat keparahan berdasarkan nilai tertentu, yang ditetapkan secara default ke LOW.

Perlu bantuan lain? Dapatkan jawaban dari anggota Komunitas dan profesional Google SecOps.