Mengumpulkan log Pelanggaran Postur Cloud Security Command Center
Dokumen ini menjelaskan cara mengekspor dan menyerap log Pelanggaran Postur Security Command Center ke Google Security Operations menggunakan Cloud Storage. Parser mengubah data JSON mentah dari temuan menjadi model data terpadu (UDM). Alat ini mengekstrak kolom yang relevan, menyusun ulang data, memetakan data ke kolom UDM, dan melakukan berbagai validasi dan pengayaan untuk memastikan kualitas dan konsistensi data.
Sebelum memulai
- Pastikan Google Cloud Security Command Center diaktifkan di lingkungan Google Cloud Anda.
- Pastikan Anda memiliki instance Google Chronicle.
- Pastikan Anda memiliki akses dengan hak istimewa ke Security Command Center dan Cloud Logging.
Membuat bucket Cloud Storage
- Login ke konsol Google Cloud.
Buka halaman Cloud Storage Buckets.
Klik Buat.
Di halaman Buat bucket, masukkan informasi bucket Anda. Setelah menyelesaikan setiap langkah berikut, klik Lanjutkan untuk melanjutkan ke langkah berikutnya:
Di bagian Mulai, lakukan tindakan berikut:
- Masukkan nama unik yang memenuhi persyaratan nama bucket; misalnya, gcp-scc-posture-violation-logs.
Untuk mengaktifkan namespace hierarkis, klik panah peluas untuk meluaskan bagian Optimalkan untuk beban kerja yang berorientasi pada file dan intensif data, lalu pilih Aktifkan Namespace hierarkis di bucket ini.
Untuk menambahkan label bucket, klik panah peluas untuk meluaskan bagian Labels.
Klik Tambahkan label, lalu tentukan kunci dan nilai untuk label Anda.
Di bagian Pilih tempat untuk menyimpan data, lakukan hal berikut:
- Pilih Jenis lokasi.
Gunakan menu jenis lokasi untuk memilih Location tempat data objek dalam bucket Anda akan disimpan secara permanen.
Untuk menyiapkan replikasi lintas bucket, luaskan bagian Menyiapkan replikasi lintas bucket.
Di bagian Pilih kelas penyimpanan untuk data Anda, pilih kelas penyimpanan default untuk bucket, atau pilih Autoclass untuk pengelolaan kelas penyimpanan otomatis untuk data bucket Anda.
Di bagian Choose how to control access to objects, pilih not untuk menerapkan public access prevention, dan pilih access control model untuk objek bucket Anda.
Di bagian Pilih cara melindungi data objek, lakukan hal berikut:
- Pilih salah satu opsi di bagian Perlindungan data yang ingin Anda tetapkan untuk bucket.
- Untuk memilih cara enkripsi data objek, klik panah peluas berlabel Enkripsi data, lalu pilih Metode enkripsi data.
Klik Buat.
Mengonfigurasi logging Security Command Center
- Login ke konsol Google Cloud.
Buka halaman Security Command Center.
Pilih organisasi Anda.
Klik Setelan.
Klik tab Ekspor Berkelanjutan.
Di bagian Nama ekspor, klik Logging Export.
Di bagian Sink, aktifkan Log Findings to Logging.
Di bagian Logging project, masukkan atau telusuri project tempat Anda ingin mencatat temuan.
Klik Simpan.
Mengonfigurasi Google Cloud ekspor log Pelanggaran Postur Security Command Center
- Login ke konsol Google Cloud.
- Buka Logging > Router Log.
- Klik Create Sink.
Berikan parameter konfigurasi berikut:
- Sink Name: masukkan nama yang bermakna; misalnya,
scc-posture-violation-logs-sink
. - Sink Destination: pilih Cloud Storage Storage dan masukkan URI untuk bucket Anda; misalnya,
gs://gcp-scc-posture-violation-logs
. Filter Log:
logName="projects/<your-project-id>/logs/cloudsecurityscanner.googleapis.com%2Fposture_violations" resource.type="cloud_security_center_posture_violation"
Setel Opsi Ekspor: sertakan semua entri log.
- Sink Name: masukkan nama yang bermakna; misalnya,
Klik Buat.
Mengonfigurasi izin untuk Cloud Storage
- Buka IAM & Admin > IAM.
- Temukan akun layanan Cloud Logging.
- Berikan roles/storage.admin di bucket.
Mengonfigurasi feed di Google SecOps untuk menyerap Google Cloud log Pelanggaran Postur Security Command Center
- Buka Setelan SIEM > Feed.
- Klik Tambahkan baru.
- Di kolom Nama feed, masukkan nama untuk feed; misalnya, Google Cloud Security Command Center Posture Violation Logs.
- Pilih Google Cloud Storage sebagai Source type.
- Pilih Security Command Center Posture Violation sebagai Log type.
- Klik Dapatkan Akun Layanan di samping kolom Chronicle Service Account.
- Klik Berikutnya.
Tentukan nilai untuk parameter input berikut:
- Storage Bucket URI: URL bucket Cloud Storage; misalnya,
gs://gcp-scc-posture-violation-logs
. - URI Adalah: pilih Direktori yang menyertakan subdirektori.
Opsi penghapusan sumber: pilih opsi penghapusan sesuai preferensi Anda.
Namespace aset: namespace aset.
Label penyerapan: label yang diterapkan ke peristiwa dari feed ini.
- Storage Bucket URI: URL bucket Cloud Storage; misalnya,
Klik Berikutnya.
Tinjau konfigurasi feed baru Anda di layar Finalize, lalu klik Submit.
Tabel Pemetaan UDM
Kolom Log | Pemetaan UDM | Logika |
---|---|---|
kategori | read_only_udm.metadata.product_event_type | Pemetaan langsung. |
changed_policy | read_only_udm.security_result.rule_name | Pemetaan langsung. |
cloudProvider | read_only_udm.target.resource.attribute.cloud.environment | Pemetaan langsung. |
createTime | read_only_udm.security_result.detection_fields[createTime ] |
Pemetaan langsung. |
finding.risks.riskCategory | read_only_udm.security_result.detection_fields[risk_category ] |
Pemetaan langsung. |
mute | read_only_udm.security_result.detection_fields[mute ] |
Pemetaan langsung. |
nama | read_only_udm.metadata.product_log_id | Pemetaan langsung. |
originalProviderId | read_only_udm.target.resource.attribute.labels[original_provider_id ] |
Pemetaan langsung. |
parent | read_only_udm.target.resource_ancestors[0].name | Pemetaan langsung. |
parentDisplayName | read_only_udm.metadata.description | Pemetaan langsung. |
propertyDataTypes.changed_policy.primitiveDataType | read_only_udm.security_result.rule_labels[changed_policy_primitive_data_type ] |
Pemetaan langsung. |
propertyDataTypes.policy_drift_details.listValues.propertyDataTypes[0].structValue.fields.drift_details.structValue.fields.detected_configuration.primitiveDataType | read_only_udm.security_result.rule_labels[detected_configuration_primitive_data_type ] |
Pemetaan langsung. |
propertyDataTypes.policy_drift_details.listValues.propertyDataTypes[0].structValue.fields.drift_details.structValue.fields.expected_configuration.primitiveDataType | read_only_udm.security_result.rule_labels[expected_configuration_primitive_data_type ] |
Pemetaan langsung. |
propertyDataTypes.policy_drift_details.listValues.propertyDataTypes[0].structValue.fields.field_name.primitiveDataType | read_only_udm.security_result.rule_labels[field_name_primitive_data_type ] |
Pemetaan langsung. |
propertyDataTypes.posture_deployment_name.primitiveDataType | read_only_udm.security_result.detection_fields[posture_deployment_name_primitiveDataType ] |
Pemetaan langsung. |
propertyDataTypes.posture_deployment_resource.primitiveDataType | read_only_udm.security_result.detection_fields[posture_deployment_resource_primitiveDataType ] |
Pemetaan langsung. |
propertyDataTypes.posture_name.primitiveDataType | read_only_udm.security_result.detection_fields[posture_name_primitiveDataType ] |
Pemetaan langsung. |
propertyDataTypes.posture_revision_id.primitiveDataType | read_only_udm.security_result.detection_fields[posture_revision_id_primitiveDataType ] |
Pemetaan langsung. |
resource.cloudProvider | read_only_udm.target.resource.attribute.cloud.environment | Pemetaan langsung. |
resource.displayName | read_only_udm.target.resource.attribute.labels[resource_displayName ] |
Pemetaan langsung. |
resource.gcpMetadata.organization | read_only_udm.target.resource.attribute.labels[resource_organization ] |
Pemetaan langsung. |
resource.gcpMetadata.parent | read_only_udm.target.resource.attribute.labels[resource_parent ] |
Pemetaan langsung. |
resource.gcpMetadata.parentDisplayName | read_only_udm.target.resource.attribute.labels[resource_parentDisplayName ] |
Pemetaan langsung. |
resource.gcpMetadata.project | read_only_udm.target.resource.attribute.labels[resource_project ] |
Pemetaan langsung. |
resource.gcpMetadata.projectDisplayName | read_only_udm.target.resource.attribute.labels[resource_projectDisplayName ] |
Pemetaan langsung. |
resource.organization | read_only_udm.target.resource.attribute.labels[resource_organization ] |
Pemetaan langsung. |
resource.resourcePath.nodes.displayName | read_only_udm.target.resource_ancestors.name | Pemetaan langsung. |
resource.resourcePath.nodes.id | read_only_udm.target.resource_ancestors.product_object_id | Pemetaan langsung. |
resource.resourcePath.nodes.nodeType | read_only_udm.target.resource_ancestors.resource_subtype | Pemetaan langsung. |
resource.resourcePathString | read_only_udm.target.resource.attribute.labels[resource_path_string ] |
Pemetaan langsung. |
resource.service | read_only_udm.target.resource_ancestors[10].name | Pemetaan langsung. |
resource.type | read_only_udm.target.resource.attribute.labels[resource_type ] |
Pemetaan langsung. |
resourceName | read_only_udm.target.resource.name | Pemetaan langsung. |
securityPosture.changedPolicy | read_only_udm.security_result.rule_labels[changed_policy ] |
Pemetaan langsung. |
securityPosture.name | read_only_udm.security_result.detection_fields[security_posture_name ] |
Pemetaan langsung. |
securityPosture.policyDriftDetails[0].detectedValue | read_only_udm.security_result.rule_labels[policy_drift_details_detected_value ] |
Pemetaan langsung. |
securityPosture.policyDriftDetails[0].expectedValue | read_only_udm.security_result.rule_labels[policy_drift_details_expected_value ] |
Pemetaan langsung. |
securityPosture.policyDriftDetails[0].field | read_only_udm.security_result.rule_labels[policy_drift_details_field ] |
Pemetaan langsung. |
securityPosture.policySet | read_only_udm.security_result.rule_set | Pemetaan langsung. |
securityPosture.postureDeployment | read_only_udm.security_result.detection_fields[posture_deployment ] |
Pemetaan langsung. |
securityPosture.postureDeploymentResource | read_only_udm.security_result.detection_fields[posture_deployment_resource ] |
Pemetaan langsung. |
securityPosture.revisionId | read_only_udm.security_result.detection_fields[security_posture_revision_id ] |
Pemetaan langsung. |
tingkat keseriusan, | read_only_udm.security_result.severity | Pemetaan langsung. |
sourceProperties.categories[0] | read_only_udm.security_result.detection_fields[source_properties_categories ] |
Pemetaan langsung. |
sourceProperties.changed_policy | read_only_udm.security_result.rule_name | Pemetaan langsung. |
sourceProperties.name | read_only_udm.target.application | Pemetaan langsung. |
sourceProperties.policy_drift_details[0].drift_details.detected_configuration | read_only_udm.security_result.rule_labels[policy_drift_details_detected_configuration ] |
Pemetaan langsung. |
sourceProperties.policy_drift_details[0].drift_details.expected_configuration | read_only_udm.security_result.rule_labels[policy_drift_details_expected_configuration ] |
Pemetaan langsung. |
sourceProperties.policy_drift_details[0].field_name | read_only_udm.security_result.rule_labels[policy_drift_details_field_name ] |
Pemetaan langsung. |
sourceProperties.posture_deployment | read_only_udm.security_result.detection_fields[source_properties_posture_deployment_name ] |
Pemetaan langsung. |
sourceProperties.posture_deployment_name | read_only_udm.security_result.detection_fields[source_properties_posture_deployment_name ] |
Pemetaan langsung. |
sourceProperties.posture_deployment_resource | read_only_udm.security_result.detection_fields[source_properties_posture_deployment_resource ] |
Pemetaan langsung. |
sourceProperties.posture_name | read_only_udm.target.application | Pemetaan langsung. |
sourceProperties.posture_revision_id | read_only_udm.security_result.detection_fields[source_properties_posture_revision_id ] |
Pemetaan langsung. |
sourceProperties.revision_id | read_only_udm.security_result.detection_fields[source_properties_posture_revision_id ] |
Pemetaan langsung. |
state | read_only_udm.security_result.detection_fields[state ] |
Pemetaan langsung. |
read_only_udm.metadata.vendor_name | Parser memetakan nilai statis Google . |
|
read_only_udm.metadata.product_name | Parser memetakan nilai statis Security Command Center . |
|
read_only_udm.target.resource.resource_type | Parser memetakan nilai statis CLUSTER . |
|
read_only_udm.security_result.about.investigation.status | Parser memetakan nilai statis NEW . |
|
read_only_udm.security_result.alert_state | Parser memetakan nilai statis ALERTING . |
|
read_only_udm.is_alert | Parser memetakan nilai statis true . |
|
read_only_udm.is_significant | Parser memetakan nilai statis true . |
|
read_only_udm.metadata.event_type | Parser dipetakan ke GENERIC_EVENT sebagai nilai default. Jika kolom 'category' sama dengan 'SECURITY_POSTURE_DRIFT' dan 'client_device_present' dan 'token_target.application' tidak kosong, kolom tersebut akan dipetakan ke 'SERVICE_MODIFICATION'. Jika kolom 'category' sama dengan 'SECURITY_POSTURE_POLICY_DRIFT', 'SECURITY_POSTURE_POLICY_DELETE', 'SECURITY_POSTURE_DETECTOR_DRIFT', atau 'SECURITY_POSTURE_DETECTOR_DELETE' dan 'network_edr_not_present' bernilai salah dan 'client_device_present' bernilai benar, kolom tersebut akan dipetakan ke 'SCAN_UNCATEGORIZED'. Jika kolom 'token_metadata.event_type' sama dengan 'GENERIC_EVENT' dan 'network_edr_not_present' bernilai salah dan 'client_device_present' bernilai benar, kolom tersebut akan dipetakan ke 'STATUS_UPDATE'. |
|
read_only_udm.target.resource_ancestors[1].resource_type | Parser memetakan nilai statis CLOUD_PROJECT . |
|
read_only_udm.target.resource.product_object_id | Parser mengekstrak nilai dari kolom 'parent', antara karakter '/' kedua dan ketiga. | |
read_only_udm.target.resource_ancestors[1].name | Parser mengekstrak nilai dari kolom 'resourceName', antara karakter '/' keempat dan kelima. | |
read_only_udm.security_result.url_back_to_product | Parser membuat URL secara dinamis menggunakan ID organisasi, sumber, dan temuan yang diekstrak dari log. | |
securityMarks.name | read_only_udm.security_result.detection_fields[securityMarks_name ] |
Pemetaan langsung. |
Perubahan
2025-02-07
- Memperbarui pemetaan untuk kolom UDM
security_result.url_back_to_product
. Menambahkan nilai project ID dari nilai kolom log mentahresource.projectDisplayName
ke akhir URL yang dipetakan ke kolom UDMsecurity_result.url_back_to_product
dengan awalan;?project=
.
2024-11-21
- Menambahkan dukungan untuk SCC API versi v2, dan kolom berikut disertakan sebagai bagian dari update
- resource.gcpMetadata.project
- resource.gcpMetadata.projectDisplayName
- resource.gcpMetadata.parent
- resource.gcpMetadata.parentDisplayName
- resource.gcpMetadata.folders.resourceFolder
- resource.gcpMetadata.folders.resourceFolderDisplayName
- resource.gcpMetadata.organization
2024-03-20
- Parser yang baru dibuat.
Perlu bantuan lain? Dapatkan jawaban dari anggota Komunitas dan profesional Google SecOps.