Mengumpulkan Log Aliran VPC
Dokumen ini menjelaskan cara mengekspor Log Aliran VPC ke Google Security Operations menggunakan Google Cloud. Parser mengubah log dari format JSON bawaannya menjadi UDM Google Security Operations. Log ini mengekstrak kolom yang relevan seperti IP sumber dan tujuan, port, protokol, dan byte yang dikirim, lalu memetakannya ke kolom UDM yang sesuai, dengan mempertimbangkan arah jaringan dan kasus khusus untuk representasi yang akurat di Google SecOps.
Sebelum Memulai
Pastikan Anda memenuhi prasyarat berikut:
- Instance Google SecOps.
- VPC Flow disiapkan dan aktif di lingkungan Google Cloud Anda.
- Akses istimewa ke Google Cloud.
Membuat Bucket Google Cloud Storage
- Login ke Google Cloud console.
Buka halaman Cloud Storage Buckets.
Klik Buat.
Di halaman Buat bucket, masukkan informasi bucket Anda. Setelah 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, vpcflow-logs.
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.
Untuk menambahkan label bucket, klik panah peluas untuk meluaskan bagian Label.
Klik Tambahkan label, lalu tentukan kunci dan nilai untuk label Anda.
Di bagian Pilih lokasi untuk menyimpan data Anda, lakukan hal berikut:
- Pilih Jenis lokasi.
Gunakan menu jenis lokasi untuk memilih Lokasi tempat data objek dalam bucket Anda akan disimpan secara permanen.
Untuk menyiapkan replikasi lintas bucket, luaskan bagian Siapkan 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 Pilih cara mengontrol akses ke objek, pilih tidak untuk menerapkan pencegahan akses publik, dan pilih model kontrol akses 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 Anda.
- Untuk memilih cara mengenkripsi data objek Anda, klik panah peluas berlabel Enkripsi data, lalu pilih Metode enkripsi data.
Klik Buat.
Mengonfigurasi Ekspor Log di Google Cloud Aliran VPC
- Login ke akun Google Cloud menggunakan akun istimewa Anda.
- Di halaman Welcome, klik VPC Networks.
- Klik Default dan halaman subnet akan muncul.
- Pilih semua log.
- Klik Flow Logs > Configure.
- Pilih Aggregation Interval; misalnya, 30 SEC.
- Berikan Frekuensi Sampel; misalnya, 50%.
- Klik Simpan
- Telusuri Logging di kotak penelusuran, lalu klik Enter.
- Di Log Explorer, filter log dengan memilih VPC_flows di Log Name, lalu klik Apply.
- Klik Tindakan Lainnya.
- Klik Create Sink.
- Berikan konfigurasi berikut:
- Sink Details: masukkan nama dan deskripsi.
- Klik Berikutnya.
- Tujuan Sinkronisasi: pilih Bucket Cloud Storage.
- Bucket Cloud Storage: pilih bucket yang dibuat sebelumnya atau buat bucket baru.
- Klik Berikutnya.
- Pilih Log yang akan disertakan dalam Sink: log default akan diisi saat Anda memilih opsi di Bucket Cloud Storage.
- Klik Berikutnya.
- Opsional: Pilih Log untuk memfilter Sink: pilih log yang tidak ingin Anda sinkronkan.
- Klik Create Sink.
Menyiapkan feed
Ada dua titik entri berbeda untuk menyiapkan feed di platform Google SecOps:
- Setelan SIEM > Feed > Tambahkan Feed Baru
- Hub Konten > Paket Konten > Mulai
Cara menyiapkan feed Aliran VPC Google Cloud
- Klik paket Google Cloud Compute platform.
- Temukan jenis log GCP VPC Flow Feed.
Tentukan nilai di kolom berikut.
- Jenis Sumber: Amazon SQS V2
- Nama Antrean: Nama antrean SQS yang akan dibaca
- URI S3: URI bucket.
s3://your-log-bucket-name/
- Ganti
your-log-bucket-name
dengan nama sebenarnya bucket S3 Anda.
- Ganti
Opsi penghapusan sumber: Pilih opsi penghapusan sesuai dengan preferensi penyerapan Anda.
Usia File Maksimum: Menyertakan file yang diubah dalam jumlah hari terakhir. Defaultnya adalah 180 hari.
ID Kunci Akses Antrean SQS: Kunci akses akun yang berupa string alfanumerik 20 karakter.
Kunci Akses Rahasia Antrean SQS: Kunci akses akun yang berupa string alfanumerik 40 karakter.
Opsi lanjutan
- Nama Feed: Nilai yang telah diisi otomatis yang mengidentifikasi feed.
- Namespace Aset: Namespace yang terkait dengan feed.
- Label Penyerapan: Label yang diterapkan ke semua peristiwa dari feed ini.
Klik Buat feed.
Untuk mengetahui informasi selengkapnya tentang cara mengonfigurasi beberapa feed untuk berbagai jenis log dalam keluarga produk ini, lihat Mengonfigurasi feed menurut produk.
Format log Log Aliran VPC yang didukung
Parser VPC Flow Logs mendukung log dalam format JSON.
Contoh Log Aliran VPC yang Didukung
JSON
{ "insertId": "1wjp1y9f8vc6y6", "jsonPayload": { "bytes_sent": "0", "connection": { "dest_ip": "198.51.100.0", "dest_port": 32846, "protocol": 6, "src_ip": "198.51.100.1", "src_port": 443 }, "dest_instance": { "project_id": "logging-259109", "region": "us-west2", "vm_name": "demisto-01", "zone": "us-west2-a" }, "dest_vpc": { "project_id": "logging-259109", "subnetwork_name": "default", "vpc_name": "default" }, "end_time": "2020-03-28T10:44:41.896734136Z", "packets_sent": "2", "reporter": "DEST", "start_time": "2020-03-28T10:44:41.896734136Z" }, "logName": "projects/logging-259109/logs/compute.googleapis.com%2Fvpc_flows", "receiveTimestamp": "2020-03-28T10:44:50.112903743Z", "resource": { "labels": { "location": "us-west2-a", "project_id": "dummy_project_id", "subnetwork_id": "subnetwork_id", "subnetwork_name": "default" }, "type": "gce_subnetwork" }, "timestamp": "2020-03-28T10:44:50.112903743Z" }
Tabel Pemetaan UDM
Kolom log | Pemetaan UDM | Logika |
---|---|---|
connection.dest_ip | target.asset.ip target.ip |
Pemetaan langsung saat network.direction adalah OUTBOUND. Dipetakan dari principal.ip saat network.direction adalah INBOUND. |
connection.dest_port | target.port | Dikonversi menjadi bilangan bulat jika lebih besar dari -1. |
connection.protocol | network.ip_protocol | Dikonversi menjadi string, lalu dipetakan ke bilangan bulat. Berdasarkan nilai bilangan bulat, dipetakan ke nama protokol IP (misalnya, TCP, UDP, ICMP). |
connection.src_ip | principal.ip | Pemetaan langsung. |
connection.src_port | principal.port | Dikonversi ke bilangan bulat. |
dest_instance.region | target.location.name | Pemetaan langsung. |
dest_instance.vm_name | target.asset.hostname | Pemetaan langsung. |
dest_location.city | target.location.city | Pemetaan langsung. |
dest_location.country | target.location.country_or_region | Pemetaan langsung. |
dest_location.region | target.location.state | Pemetaan langsung. |
dest_vpc.project_id | target.namespace | Digunakan dengan dest_vpc.vpc_name untuk membentuk target.namespace. |
dest_vpc.vpc_name | target.namespace | Digunakan dengan dest_vpc.project_id untuk membentuk target.namespace. |
insertId | metadata.product_log_id | Pemetaan langsung. |
jsonPayload.bytes_sent | network.sent_bytes | Diganti namanya menjadi network.sent_bytes dan dikonversi menjadi uinteger. |
jsonPayload.packets_sent | network.sent_packets | Dikonversi ke bilangan bulat. |
labels.tunnel_id | additional.fields | Digabungkan ke additional.fields dengan kunci Tunnel Id dan jenis string_value . |
logName | security_result.category_details | Pemetaan langsung. |
resource.labels.project_id | target.resource.name | Digunakan untuk membuat target.resource.name dengan format //cloudresourcemanager.googleapis.com/projects/{resource.labels.project_id} . |
resource.labels.region | target.location.country_or_region | Pemetaan langsung. |
resource.labels.subnetwork_id | target.user.attribute.labels | Digabungkan ke target.user.attribute.labels dengan kunci subnetwork_id . |
resource.type | metadata.product_event_type | Pemetaan langsung. |
tingkat keseriusan, | security_result.severity | Dipetakan ke LOW jika nilainya adalah DEBUG . |
src_gke_details.cluster.cluster_location | principal.resource.attribute.labels | Digabungkan ke principal.resource.attribute.labels dengan kunci cluster_location . |
src_gke_details.cluster.cluster_name | principal.resource.attribute.labels | Digabungkan ke principal.resource.attribute.labels dengan kunci cluster_name . |
src_gke_details.pod.pod_name | principal.resource.attribute.labels | Digabungkan ke principal.resource.attribute.labels dengan kunci pod_name . |
src_gke_details.pod.pod_namespace | principal.resource.attribute.labels | Digabungkan ke principal.resource.attribute.labels dengan kunci pod_namespace . |
src_instance.region | principal.location.name | Pemetaan langsung. |
src_instance.vm_name | principal.asset.hostname | Pemetaan langsung. |
src_location.city | principal.location.city | Pemetaan langsung. |
src_location.country | principal.location.country_or_region | Pemetaan langsung. |
src_location.region | principal.location.state | Pemetaan langsung. |
src_vpc.project_id | principal.namespace | Digunakan dengan src_vpc.vpc_name untuk membentuk principal.namespace. |
src_vpc.vpc_name | principal.namespace | Digunakan dengan src_vpc.project_id untuk membentuk principal.namespace. |
textPayload | additional.fields | Digabungkan ke additional.fields dengan kunci Textpayload dan jenis string_value . |
timestamp | metadata.event_timestamp | Digunakan untuk mengisi event_timestamp jika jsonPayload.end_time kosong. |
metadata.description | Deskripsi alur jaringan, termasuk pelapor (SRC atau DEST) dan arah (INBOUND atau OUTBOUND), dibuat berdasarkan kolom 'reporter'. | |
metadata.event_type | Tetapkan ke NETWORK_CONNECTION untuk log alur VPC dan USER_RESOURCE_ACCESS untuk jenis log lainnya. |
|
metadata.log_type | Tetapkan ke GCP_VPC_FLOW . |
|
metadata.product_name | Tetapkan ke GCP VPC Flow Logs . |
|
metadata.product_version | Tetapkan ke 1.0 . |
|
metadata.vendor_name | Tetapkan ke Google Cloud . |
|
network.direction | Ditentukan berdasarkan target.port. Jika port adalah port yang terkenal atau dicadangkan, port tersebut dianggap INBOUND; jika tidak, port tersebut dianggap OUTBOUND. | |
security_result.severity | Setel ke LOW secara default. |
|
target.resource.attribute.cloud.environment | Tetapkan ke GOOGLE_CLOUD_PLATFORM . |
|
target.resource.resource_type | Tetapkan ke CLOUD_PROJECT . |
Perlu bantuan lain? Dapatkan jawaban dari anggota Komunitas dan profesional Google SecOps.