Mengumpulkan log Cloud Intrusion Detection System (Cloud IDS)

Didukung di:

Dokumen ini menjelaskan cara mengekspor dan menyerap log Cloud IDS ke Google Security Operations menggunakan Cloud Storage. Parser mengubah log Cloud IDS berformat JSON mentah dari Google Cloud menjadi format UDM terstruktur. Proses ini mengekstrak kolom yang relevan, memetakannya ke skema UDM, mengategorikan peristiwa, dan memperkaya data dengan konteks tambahan seperti arah jaringan dan jenis resource.

Sebelum memulai

Pastikan Anda memenuhi prasyarat berikut:

  • Instance Google SecOps.
  • Cloud IDS disiapkan dan aktif di lingkungan Google Cloud Anda.
  • Akses istimewa ke Google Cloud dan izin yang sesuai untuk mengakses Cloud IDS.

Membuat bucket Cloud Storage

  1. Login ke konsolGoogle Cloud .
  2. Buka halaman Cloud Storage Buckets.

    Buka Buckets

  3. Klik Buat.

  4. Di halaman Buat bucket, masukkan informasi bucket Anda. Setelah setiap langkah berikut, klik Lanjutkan untuk melanjutkan ke langkah berikutnya:

    1. Di bagian Mulai, lakukan tindakan berikut:

      1. Masukkan nama unik yang memenuhi persyaratan nama bucket; misalnya, gcp-ids-logs.
      2. Untuk mengaktifkan namespace hierarkis, klik panah peluas untuk meluaskan bagian Optimalkan untuk beban kerja berorientasi file dan intensif data, lalu pilih Aktifkan namespace Hierarkis di bucket ini.

      3. Untuk menambahkan label bucket, klik panah peluas untuk meluaskan bagian Label.

      4. Klik Tambahkan label, lalu tentukan kunci dan nilai untuk label Anda.

    2. Di bagian Pilih lokasi untuk menyimpan data Anda, lakukan hal berikut:

      1. Pilih Jenis lokasi.
      2. Gunakan menu jenis lokasi untuk memilih Lokasi tempat data objek dalam bucket Anda akan disimpan secara permanen.

      3. Untuk menyiapkan replikasi lintas bucket, luaskan bagian Siapkan replikasi lintas bucket.

    3. 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.

    4. Di bagian Pilih cara mengontrol akses ke objek, pilih tidak untuk menerapkan pencegahan akses publik, dan pilih model kontrol akses untuk objek bucket Anda.

    5. Di bagian Pilih cara melindungi data objek, lakukan tindakan berikut:

      1. Pilih salah satu opsi di bagian Perlindungan data yang ingin Anda tetapkan untuk bucket.
      2. Untuk memilih cara mengenkripsi data objek Anda, klik panah peluas berlabel Enkripsi data, lalu pilih Metode enkripsi data.
  5. Klik Buat.

Mengonfigurasi ekspor log Cloud IDS

  1. Login ke konsolGoogle Cloud .
  2. Buka Logging > Log Router.
  3. Klik Create Sink.
  4. Berikan parameter konfigurasi berikut:

    • Sink Name: masukkan nama yang bermakna; misalnya, google-cloud-ids-logs-sink.
    • Tujuan Sink: pilih Cloud Storage dan berikan URI bucket penyimpanan Google Cloud ; misalnya, gs://gcp-ids-logs.
    • Filter Log:

      logName="projects/<your-project-id>/logs/cloud-ids"
      
  5. Klik Buat.

Mengonfigurasi izin untuk Cloud Storage

  1. Buka IAM & Admin > IAM.
  2. Temukan akun layanan Cloud Logging.
  3. Berikan roles/storage.admin pada bucket.

Menyiapkan feed

Untuk mengonfigurasi feed, ikuti langkah-langkah berikut:

  1. Buka Setelan SIEM > Feed.
  2. Klik Tambahkan Feed Baru.
  3. Di halaman berikutnya, klik Konfigurasi satu feed.
  4. Di kolom Feed name, masukkan nama feed; misalnya, GCP IDS Logs.
  5. Pilih Google Cloud Storage V2 sebagai Source type.
  6. Pilih GCP IDS sebagai Jenis log.
  7. Klik Dapatkan Akun Layanan di samping kolom Akun Layanan Chronicle.
  8. Klik Berikutnya.
  9. Tentukan nilai untuk parameter input berikut:
    • URI Bucket Penyimpanan: URL bucket Cloud Storage; misalnya, gs://gcp-ids-logs.
    • Opsi penghapusan sumber: pilih opsi penghapusan sesuai preferensi Anda. Catatan: Jika Anda memilih opsi Delete transferred files atau Delete transferred files and empty directories, pastikan Anda memberikan izin yang sesuai ke akun layanan.
    • Usia File Maksimum: Menyertakan file yang diubah dalam beberapa hari terakhir. Defaultnya adalah 180 hari
  10. Klik Berikutnya.
  11. Tinjau konfigurasi feed baru Anda di layar Selesaikan, lalu klik Kirim.

Tabel Pemetaan UDM

Kolom Log Pemetaan UDM Logika
insertId metadata.product_log_id Pemetaan langsung.
jsonPayload.alert_severity security_result.severity Pemetaan langsung.
jsonPayload.alert_time metadata.event_timestamp Pemetaan langsung.
jsonPayload.application principal.application Pemetaan langsung, hanya jika arahnya adalah server ke klien.
jsonPayload.application target.application Pemetaan langsung, hanya jika arahnya adalah klien-ke-server atau logName berisi traffic.
jsonPayload.category security_result.category Dipetakan berdasarkan nilai 'jsonPayload.category':
- 'dos': NETWORK_DENIAL_OF_SERVICE
- 'info-leak': NETWORK_SUSPICIOUS
- 'protocol-anomaly': NETWORK_MALICIOUS
- 'backdoor', 'spyware', 'trojan': SOFTWARE_MALICIOUS
jsonPayload.category security_result.category_details Pemetaan langsung.
jsonPayload.cves extensions.vulns.vulnerabilities.cve_id Pemetaan langsung, melakukan iterasi pada array.
jsonPayload.destination_ip_address target.ip Pemetaan langsung.
jsonPayload.destination_port target.port Pemetaan langsung.
jsonPayload.details extensions.vulns.vulnerabilities.description Pemetaan langsung.
jsonPayload.details security_result.detection_fields.value Dipetakan jika 'jsonPayload.repeat_count' ada. Kunci ditetapkan ke 'repeat_count'.
jsonPayload.direction network.direction Dipetakan berdasarkan nilai 'jsonPayload.direction':
- 'client-to-server': KELUAR
- 'server-to-client': MASUK
jsonPayload.elapsed_time network.session_duration.seconds Pemetaan langsung.
jsonPayload.ip_protocol network.ip_protocol Pemetaan langsung, mengonversi ke huruf besar, lalu memetakan ke nomor protokol.
jsonPayload.name security_result.threat_name Pemetaan langsung.
jsonPayload.network principal.resource.name Pemetaan langsung, hanya jika arahnya adalah server ke klien.
jsonPayload.network target.resource.name Pemetaan langsung, hanya jika arahnya adalah klien-ke-server atau logName berisi traffic.
jsonPayload.repeat_count security_result.detection_fields.value Dipetakan jika ada. Kunci ditetapkan ke 'repeat_count'.
jsonPayload.session_id network.session_id Pemetaan langsung.
jsonPayload.source_ip_address principal.ip Pemetaan langsung.
jsonPayload.source_port principal.port Pemetaan langsung.
jsonPayload.start_time about.labels.value Dipetakan jika ada. Kunci disetel ke 'start_time'.
jsonPayload.start_time additional.fields.value.string_value Dipetakan jika ada. Kunci disetel ke 'start_time'.
jsonPayload.threat_id security_result.threat_id Pemetaan langsung.
jsonPayload.total_bytes about.labels.value Dipetakan jika ada. Kunci ditetapkan ke 'total_bytes'.
jsonPayload.total_bytes additional.fields.value.string_value Dipetakan jika ada. Kunci ditetapkan ke 'total_bytes'.
jsonPayload.total_packets about.labels.value Dipetakan jika ada. Kunci ditetapkan ke 'total_packets'.
jsonPayload.total_packets additional.fields.value.string_value Dipetakan jika ada. Kunci ditetapkan ke 'total_packets'.
jsonPayload.type security_result.detection_fields.value Dipetakan jika ada. Kunci disetel ke 'type'.
jsonPayload.uri_or_filename target.file.full_path Pemetaan langsung.
logName security_result.category_details Pemetaan langsung.
receiveTimestamp metadata.collected_timestamp Pemetaan langsung.
resource.labels.id observer.resource.product_object_id Pemetaan langsung.
resource.labels.location observer.location.name Pemetaan langsung.
resource.labels.resource_container observer.resource.name Pemetaan langsung.
resource.type observer.resource.resource_subtype Pemetaan langsung.
metadata.event_type Ditentukan oleh serangkaian aturan bersyarat berdasarkan keberadaan dan nilai kolom lain, yang secara default adalah 'GENERIC_EVENT'.
metadata.vendor_name Nilai statis: Google Cloud Platform.
metadata.product_name Nilai statis: GCP_IDS.
metadata.log_type Nilai statis: GCP_IDS.
extensions.vulns.vulnerabilities.vendor Nilai statis: GCP_IDS, ditambahkan untuk setiap CVE di 'jsonPayload.cves'.
principal.resource.resource_type Nilai statis: VPC_NETWORK, ditambahkan jika 'jsonPayload.network' ada dan arahnya adalah server-ke-klien.
target.resource.resource_type Nilai statis: VPC_NETWORK, ditambahkan jika 'jsonPayload.network' ada dan arahnya adalah client-to-server atau logName berisi traffic.
observer.resource.resource_type Nilai statis: CLOUD_PROJECT, ditambahkan jika 'resource.labels.resource_container' atau 'resource.type' ada.
observer.resource.attribute.cloud.environment Nilai statis: GOOGLE_CLOUD_PLATFORM, ditambahkan jika 'resource.labels.resource_container' atau 'resource.type' ada.

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