Melakukan streaming data dengan ekspor BigQuery lanjutan

Didukung di:

Dokumen ini menjelaskan cara mengakses dan menggunakan data Google SecOps Anda di BigQuery dengan fitur Advanced BigQuery Export. Sebagai pelanggan Enterprise Plus, Anda dapat menggunakan fitur ini untuk mengakses data keamanan Anda secara hampir real-time melalui pipeline data streaming yang terkelola sepenuhnya. Kemampuan ini dapat membantu mengatasi tantangan penting latensi data dalam operasi keamanan serta menghasilkan deteksi dan respons ancaman yang lebih tepat waktu dan efektif.

Sebelum memulai

Tinjau poin-poin berikut yang menentukan persyaratan kelayakan dan tindakan yang diperlukan:

  • Khusus pelanggan Enterprise Plus: Fitur ini hanya tersedia untuk pelanggan Google SecOps Enterprise Plus. Untuk semua pelanggan lainnya, lihat Mengekspor ke project BigQuery yang dikelola sendiri.
  • Aktivasi fitur diperlukan: Fitur ini diaktifkan berdasarkan permintaan dan mungkin memerlukan konfigurasi awal di instance Google SecOps organisasi Anda. Hubungi perwakilan Google SecOps Anda untuk mengonfirmasi pengaktifan fitur, jika perlu.
  • Migrasi data: Saat Anda mengaktifkan fitur ini, data Anda akan mulai diekspor ke project tenant BigQuery baru untuk instance Google SecOps Anda selain ekspor yang ada ke project BigQuery yang dikelola Google seperti yang dijelaskan dalam Mengekspor ke project BigQuery yang dikelola Google. Operasi ganda ini mendukung peralihan Anda ke fitur baru tanpa gangguan. Anda akan diberi tahu sebelum pipeline ekspor lama dinonaktifkan untuk akun Anda.
  • Kontrol Layanan VPC: Advanced BigQuery Export dapat berfungsi dalam perimeter Kontrol Layanan VPC. Untuk mengetahui informasi selengkapnya, lihat Mengonfigurasi Kontrol Layanan VPC.
  • Kunci Enkripsi yang Dikelola Pelanggan (CMEK): Advanced BigQuery Export tersedia bagi pelanggan yang telah mengaktifkan CMEK di instance Google SecOps mereka. Untuk mengetahui informasi selengkapnya, lihat CMEK untuk Google SecOps. Jika Anda menggunakan CMEK dengan Kontrol Layanan VPC, lihat Mengonfigurasi Kontrol Layanan VPC untuk Google SecOps untuk mengetahui rekomendasi dan petunjuknya.

Ringkasan fitur

Ekspor BigQuery Tingkat Lanjut secara otomatis menyediakan dan mengelola kumpulan data Google SecOps yang penting, termasuk peristiwa Unified Data Model (UDM), deteksi aturan, grafik entitas, dan pencocokan Indikator Kompromi (IoC)—dalam proyek BigQuery yang aman dan dikelola oleh Google. Anda memperoleh akses baca-saja yang aman ke data ini melalui dataset tertaut BigQuery, yang muncul langsung di milik Anda. Google Cloud proyek. Fungsi ini memungkinkan Anda untuk menanyakan data keamanan Anda seolah-olah data tersebut disimpan secara lokal, tetapi tanpa beban tambahan dalam mengelola alur data atau penyimpanan.

Google SecOps mengekspor kategori data keamanan berikut ke BigQuery:

  • Catatan peristiwa UDM: Catatan UDM yang dibuat dari data log yang dimasukkan oleh pelanggan. Catatan-catatan ini diperkaya dengan informasi alias.
  • Aturan cocok (deteksi): Contoh di mana suatu aturan cocok dengan satu atau lebih peristiwa.
  • Kecocokan IoC: Artefak (misalnya, domain atau alamat IP) dari peristiwa yang cocok dengan umpan IoC. Ini mencakup pertandingan ke dan dari umpan global serta umpan khusus pelanggan.
  • Metrik Ingesti: Statistik, seperti jumlah baris log yang di-ingest, jumlah event yang dihasilkan dari log, dan jumlah error log yang menunjukkan bahwa log tidak dapat diurai.
  • Grafik entitas dan hubungan entitas: Deskripsi entitas dan hubungannya dengan entitas lain.

Manfaat utama

Manfaat utama dari Ekspor BigQuery Tingkat Lanjut meliputi hal-hal berikut:

  • Kesegaran data mendekati waktu nyata: Arsitektur streaming membuat data keamanan Anda tersedia untuk kueri dalam hitungan menit setelah dimasukkan. Peristiwa UDM, deteksi aturan, dan pencocokan IoC tersedia dengan latensi yang diharapkan selama 5-10 menit.
  • Model biaya yang disederhanakan dan dapat diprediksi: Google SecOps mencakup semua biaya penyerapan dan penyimpanan data dalam proyek BigQuery yang dikelola. Organisasi Anda hanya bertanggung jawab atas biaya analisis BigQuery yang dikeluarkan saat Anda menjalankan kueri.
  • Akses data tanpa perawatan: Infrastruktur yang mendasarinya sepenuhnya dikelola oleh Google, yang memungkinkan tim Anda untuk fokus pada analisis data daripada rekayasa data.
  • Integritas dan deduplikasi data: Data keamanan sering diperbarui atau diperkaya ulang setelah penyerapan awal. Fitur ini menggunakan penggabungan Data Manipulation Language (DML) yang terperinci untuk memperbarui catatan di tempatnya. Anda menerima data yang bersih dan bebas duplikasi tanpa perlu menulis rutinitas deduplikasi SQL yang kompleks.
  • Dukungan MSSP yang mulus (hub-and-spoke): Penyedia Layanan Keamanan Terkelola (MSSP) dapat secara efisien mengelola analitik di berbagai penyewa pelanggan dengan berlangganan secara terprogram ke kumpulan data tertaut pelanggan mereka dari satu proyek hub terpusat.
  • Kepatuhan bawaan: Fitur ini secara native mendukung Kontrol Layanan VPC, kunci enkripsi yang dikelola pelanggan (CMEK), dan residensi data (DRZ). Log audit yang ditampilkan kepada pelanggan (Transparansi Akses) dikirimkan langsung ke ruang kerja Cloud Logging Anda menggunakan Federated Resource Identification Service (FRIS).

Kasus penggunaan umum

Ekspor BigQuery Lanjutan dirancang untuk analis keamanan, pemburu ancaman, ilmuwan data, dan engineer keamanan yang memerlukan akses langsung berperforma tinggi ke data keamanan baru untuk penyelidikan ad hoc, analisis kustom, dan integrasi dengan alat business intelligence.

Kasus penggunaan umum untuk Ekspor BigQuery Lanjutan meliputi:

  • Jalankan kueri ad hoc langsung di BigQuery.
  • Gunakan alat business intelligence Anda sendiri, seperti Microsoft Power BI, untuk membuat dasbor, laporan, dan analisis.
  • Gabungkan data Google SecOps dengan set data pihak ketiga.

Arsitektur

Arsitektur Advanced BigQuery Export menggunakan pipeline streaming berkelanjutan. Data dari instance Google SecOps Anda dikirim ke project tenant yang aman dan dikelola Google menggunakan BigQuery Storage Write API (gRPC) dengan throughput tinggi.

Google SecOps menggunakan BigQuery sharing untuk membuat listingan data yang aman dan memberi Anda akses. Di panel Explorer BigQuery, project Google Cloud Anda otomatis berlangganan listingan ini, yang ditampilkan sebagai set data tertaut secops_linked_datalake.

Model ini mendukung isolasi data yang kuat sekaligus memberi Anda akses kueri hanya baca yang lancar.

Terminologi utama

Berikut adalah beberapa istilah dan konsep utama untuk BigQuery Export Lanjutan:

  • Project tenant: Project Google Cloud yang dimiliki dan dikelola oleh Google SecOps. Project ini adalah tempat data keamanan yang diekspor disimpan dan dikelola secara fisik. Anda tidak memiliki akses langsung ke project ini.
  • BYOP (Bring Your Own Project): Project Google Cloud yang dimiliki organisasi Anda dan ditautkan ke instance Google SecOps Anda. Project ini adalah tempat set data tertaut muncul dan tempat Anda menjalankan kueri serta dikenai biaya analisis.
  • Project ID: ID unik secara global untuk project Google Cloud Anda yang ditautkan ke instance Google SecOps Anda.
  • Set data tertaut: Set data BigQuery hanya baca yang berfungsi sebagai link simbolis atau penunjuk ke set data bersama di project lain. Dengan layanan ini, Anda dapat mengkueri data tanpa menyalinnya, sehingga memberikan akses yang aman sementara penyedia data mengelola penyimpanan fisik.
  • DML terperinci (FGDML): Proses backend otomatis yang digunakan Advanced BigQuery Export untuk melakukan upsert (update dan penyisipan). Jika peristiwa terlambat tiba atau diperkaya ulang, sistem akan memperbarui baris yang ada di tempatnya, berdasarkan ID uniknya (misalnya, metadata.id), bukan membuat duplikat.
  • Model Data Terpadu (UDM): Skema standar Google yang dapat diperluas untuk mem-parsing dan menormalisasi data telemetri keamanan dari ratusan produk vendor ke dalam format yang konsisten.
  • Penyedia Layanan Keamanan Terkelola (MSSP): Google Cloud MSSP tersertifikasi menawarkan serangkaian alat dan keahlian yang komprehensif untuk memperkuat pertahanan Anda terhadap ancaman keamanan siber yang terus berkembang.

Menyiapkan sistem Anda

Untuk menggunakan BigQuery Export Lanjutan, Anda harus menyiapkan sistem terlebih dahulu. Bergantung pada lingkungan dan persyaratan Anda, ikuti petunjuk di salah satu bagian berikut.

Penyiapan default

Ikuti langkah-langkah berikut untuk menyiapkan sistem Anda agar menggunakan Ekspor BigQuery Lanjutan dan mulai membuat kueri data Anda:

  1. Konfirmasi lisensi Anda: Pastikan organisasi Anda memiliki lisensi Google SecOps Enterprise Plus.
  2. Identifikasi project Anda: Login ke konsol Google Cloud , lalu pilih project Google Cloud yang ditautkan ke instance Google SecOps Anda.
  3. Temukan set data tertaut: Di konsol BigQuery, gunakan panel Explorer untuk membuka resource project Anda. Anda akan melihat set data tertaut bernama secops_linked_datalake. Kumpulan data ini adalah penunjuk hanya baca ke data keamanan live yang dikelola oleh Google SecOps.
  4. Verifikasi izin Identity and Access Management (IAM): Untuk mengkueri data, akun pengguna atau akun layanan Anda harus diberi peran IAM berikut di project Anda:

    • roles/bigquery.dataViewer: Diperlukan agar pengguna akhir atau alat BI di organisasi Anda dapat menjalankan kueri SQL terhadap tampilan set data tertaut.
    • roles/bigquery.jobUser: Diperlukan agar pengguna akhir atau alat BI di organisasi Anda dapat menjalankan kueri SQL terhadap tampilan set data tertaut.
    • Chronicle API Admin: Diperlukan dalam Google SecOps untuk mengeksekusi Dataplane API (misalnya, ProvisionPartnerSubscription) guna mengelola langganan MSSP.

    Peran ini memungkinkan pengguna (seperti analis keamanan dan konsumen data) membuat kueri data dalam set data tertaut dan menjalankan tugas BigQuery dalam project mereka.

  5. Jalankan kueri pengujian: Buka ruang kerja BigQuery SQL dan jalankan kueri dasar untuk memverifikasi bahwa akses Anda dikonfigurasi dengan benar. Anda dapat menggunakan cuplikan kode berikut:

    SELECT *
    FROM `PROJECT_ID.secops_linked_datalake.events`
    LIMIT 10;
    

    Ganti PROJECT_ID dengan Google Cloud Project ID Anda yang sebenarnya.

Menyiapkan BigQuery Export Lanjutan dalam perimeter Kontrol Layanan VPC

Untuk mengatur Ekspor BigQuery Tingkat Lanjut di dalam perimeter Kontrol Layanan VPC Anda, Anda perlu mengkonfigurasi aturan masuk (ingress rule) tertentu. Aturan ini memungkinkan akun layanan Google SecOps yang diperlukan berinteraksi dengan BigQuery dan layanan terkait di project yang dilindungi oleh perimeter. Untuk mengetahui petunjuk mendetail dan informasi selengkapnya, lihat Mengonfigurasi Kontrol Layanan VPC untuk Google Security Operations.

  • Untuk menyiapkan Advanced BigQuery Export dalam perimeter Kontrol Layanan VPC Anda, konfigurasi aturan ingress berikut:

    - ingressFrom:
        identities:
        - serviceAccount:malachite-advanced-bq-exporter@system.gserviceaccount.com
        - serviceAccount:malachite-data-export-service@system.gserviceaccount.com
        sources:
        - accessLevel: "*"
      ingressTo:
        operations:
        - serviceName: analyticshub.googleapis.com
          methodSelectors:
          - method: "*"
        - serviceName: bigquery.googleapis.com
          methodSelectors:
          - method: "*"
        resources:
        - projects/PROJECT_NUMBER
    

    Ganti PROJECT_NUMBER dengan nomor project Google Cloud yang ditautkan ke Google SecOps Anda.

Untuk MSSP — Menyiapkan akses terpusat ke data BigQuery sub-tenant Anda

Jika Anda disediakan sebagai MSSP, Anda dapat memanfaatkan API dataplane Google SecOps untuk membuat set data tertaut BigQuery secara terprogram di project "hub" pusat Anda. Set data tertaut ini mengarah ke data BigQuery pelanggan Anda (spoke), sehingga Anda dapat membuat kueri di beberapa tenant dari satu panel terpadu. Proses ini mengharuskan pelanggan Anda memberi akses ke instance MSSP Anda.

Manfaat utamanya meliputi:

  • Visibilitas terpusat: Analisis data keamanan di seluruh pelanggan Anda di satu tempat.
  • Alur kerja yang efisien: Sederhanakan perburuan ancaman dan pelaporan di seluruh basis klien Anda.
  • Pengelolaan terprogram: Mengotomatiskan penyiapan dan penonaktifan akses data.

Prasyarat

  • MSSP

    • Project Google Cloud yang akan berfungsi sebagai "hub" pusat Anda.
    • Sebuah instance Google SecOps.
    • Izin IAM yang sesuai untuk mengelola set data BigQuery di project hub Anda.
  • Pelanggan (Sub-penyewa)

    • Lisensi Google SecOps Enterprise Plus.
    • Proyek Google Cloud (BYOP) yang terhubung ke instance Google SecOps Anda.
    • Izin IAM yang sesuai untuk mengelola akses API Google SecOps.
    • CLI gcloud terinstal dan terautentikasi.

Langkah 1: Pelanggan memberikan akses MSSP

Pelanggan dapat memanggil ProvisionPartnerSubscription API untuk memberikan izin ke instance Google SecOps MSSP mereka. Google SecOps secara otomatis menyediakan dataset tertaut BigQuery, yang diberi nama dalam format secops_linked_datalake_<customer_id> di dalam Google Cloud Proyek MSSP yang terhubung ke instance Google SecOps MSSP. Set data ini ditautkan ke data Google SecOps pelanggan.

Endpoint API:
POST
https://chronicle.googleapis.com/v1alpha/projects/CUSTOMER_PROJECT/locations/REGION/instances/CUSTOMER_INSTANCE_ID/bigQueryExport:provisionPartnerSubscription
Metode

POST

Isi permintaan

Objek JSON kosong.

{}

Contoh perintah CURL (untuk dijalankan oleh pelanggan):

curl -X POST \
  -H "Authorization: Bearer ${OAUTH_TOKEN}" \
  -H "Content-Type: application/json" \
  -d '{}' \
  "https://chronicle.googleapis.com/v1alpha/projects/CUSTOMER_PROJECT/locations/REGION/instances/CUSTOMER_INSTANCE_ID/bigQueryExport:provisionPartnerSubscription"

Ganti placeholder berikut:

  • CUSTOMER_PROJECT: ID Project atau Nomor Project pelanggan Google Cloud . Lihat Membuat dan mengelola proyek.
  • REGION: Region Google Cloud tempat instance Google SecOps pelanggan berada (misalnya, us, europe-west2). Lihat daftar region.
  • CUSTOMER_INSTANCE_ID: ID Instance Google SecOps pelanggan.
Isi respons

Mengembalikan ProvisionPartnerSubscriptionResponse yang berisi detail langganan.

{
  "subscriptionDetails": {
    "subscription": "projects/SUBSCRIBER_PROJECT_ID/locations/SUBSCRIBER_REGION/subscriptions/SUBSCRIPTION_ID",
    "linkedDataset": "string"
  }
}
  • SUBSCRIBER_PROJECT_ID: Google Cloud Project ID MSSP pelanggan.
  • SUBSCRIBER_REGION: Region tempat Google Cloud Project pelanggan berada.
  • SUBSCRIPTION_ID: ID unik untuk langganan yang ada.

Langkah 2: MSSP mengkueri data di seluruh tenant

Setelah set data tertaut dari beberapa pelanggan disediakan di Google Cloud Project Anda (MSSP), Anda dapat menggunakan kueri SQL BigQuery standar untuk menganalisis data. Untuk membuat kueri di beberapa pelanggan, gunakan operator UNION ALL.

Contoh kueri (untuk dijalankan oleh MSSP di project hub mereka):

SELECT event_type, timestamp
FROM `PARTNER_PROJECT_ID.secops_linked_datalake_CUSTOMER_ID_1.events`
WHERE <your_conditions>

UNION ALL

SELECT event_type, timestamp
FROM `PARTNER_PROJECT_ID.secops_linked_datalake_CUSTOMER_ID_2.events`
WHERE <your_conditions>

-- Add more UNION ALL clauses for other customers

Langkah 3: Pelanggan mengaudit akses

Pelanggan dapat memanggil fetchSubscriptions API untuk melihat semua langganan aktif dan instance MSSP yang mengakses datanya.

Endpoint API
GET https://chronicle.googleapis.com/v1alpha/projects/CUSTOMER_PROJECT/locations/REGION/instances/CUSTOMER_INSTANCE_ID/bigQueryExport:fetchSubscriptions
Metode

GET

Contoh perintah CURL (untuk dijalankan oleh pelanggan):

curl -X GET \
  -H "Authorization: Bearer ${OAUTH_TOKEN}" \
  "https://chronicle.googleapis.com/v1alpha/projects/CUSTOMER_PROJECT/locations/REGION/instances/CUSTOMER_INSTANCE_ID/bigQueryExport:fetchSubscriptions"

Ganti placeholder berikut:

  • CUSTOMER_PROJECT: ID Project atau Nomor Project pelanggan Google Cloud . Lihat Membuat dan mengelola project.
  • REGION: Wilayah Google Cloud tempat instance Google SecOps pelanggan berada (misalnya, us, europe-west2). Lihat daftar region.
  • CUSTOMER_INSTANCE_ID: ID Instance Google SecOps pelanggan.
Isi respons

Mengembalikan FetchSubscriptionsResponse dengan daftar langganan aktif.

{
  "subscriptions": [
    {
      "subscription": "projects/SUBSCRIBER_PROJECT_ID/locations/SUBSCRIBER_REGION/subscriptions/SUBSCRIPTION_ID",
      "linkedDataset": "string"
    }
  ]
}
  • SUBSCRIBER_PROJECT_ID: Google Cloud Project ID pelanggan. Pelanggan dapat merujuk pada nasabah atau MSSP.
  • SUBSCRIBER_REGION: Region tempat Google Cloud Project pelanggan berada.
  • SUBSCRIPTION_ID: ID unik untuk langganan yang ada.

Langkah 4: Pelanggan mencabut akses (jika diperlukan)

Jika pelanggan perlu mencabut akses MSSP, mereka dapat menggunakan API revokePartnerSubscription. Tindakan ini akan segera mencabut izin untuk membuat kueri set data tertaut menggunakan project hub MSSP. ID langganan yang dicabut menjadi tidak aktif.

Endpoint API
POST https://chronicle.googleapis.com/v1alpha/projects/CUSTOMER_PROJECT/locations/REGION/instances/CUSTOMER_INSTANCE_ID/bigQueryExport:revokePartnerSubscription
Metode

POST

Isi permintaan

Memerlukan URI langganan yang akan dibatalkan, yang diperoleh dari panggilan API fetchSubscriptions.

{
  "subscriptionUri": "projects/SUBSCRIBER_PROJECT_ID/locations/SUBSCRIBER_REGION/subscriptions/SUBSCRIPTION_ID"
}

Contoh perintah CURL (untuk dijalankan oleh pelanggan):

# Set subscription details obtained from Fetch Subscriptions
export SUBSCRIBER_PROJECT_ID="partner-byop-project-id"
export SUBSCRIBER_REGION="subscription-location"
export SUBSCRIPTION_ID="subscription-id"

curl -X POST \
  -H "Authorization: Bearer ${OAUTH_TOKEN}" \
  -H "Content-Type: application/json" \
  -d '{
    "subscriptionUri": "projects/SUBSCRIBER_PROJECT_ID/locations/SUBSCRIBER_REGION/subscriptions/SUBSCRIPTION_ID"
  }' \
  "https://chronicle.googleapis.com/v1alpha/projects/CUSTOMER_PROJECT/locations/REGION/instances/CUSTOMER_INSTANCE_ID/bigQueryExport:revokePartnerSubscription"

Ganti placeholder berikut:

  • SUBSCRIBER_PROJECT_ID: Pelanggan Google Cloud ID Proyek.
  • SUBSCRIBER_REGION: Wilayah tempat Proyek Google Cloud pelanggan berada.
  • SUBSCRIPTION_ID: ID unik untuk langganan yang ada.
  • CUSTOMER_PROJECT: project ID atau Nomor Project pelanggan Google Cloud .
  • REGION: Region Google Cloud tempat instance Google SecOps pelanggan berada.
  • CUSTOMER_INSTANCE_ID: ID Instance Google SecOps pelanggan.
Isi respons

Objek JSON kosong.

{}

Membuat kueri data BigQuery

Anda dapat menjalankan kueri langsung di BigQuery atau menghubungkan alat business intelligence Anda sendiri, seperti Microsoft Power BI, ke BigQuery.

Lihat artikel berikut untuk mengetahui informasi selengkapnya tentang kueri:

Periode retensi data di project tenant BigQuery Anda

Periode retensi data Anda di BigQuery sama dengan periode retensi data yang dikonfigurasi untuk tenant Google SecOps Anda. Tidak ada setelan terpisah yang dapat dikonfigurasi untuk menyesuaikan kebijakan retensi data di BigQuery. Data akan otomatis dihapus dari tabel BigQuery saat data tersebut melewati periode retensi tenant Anda.

Set data tertaut

Set data tertaut berisi tabel yang sesuai dengan berbagai jenis data keamanan.

Tabel berikut memberikan ringkasan set data yang tersedia, keaktualan data targetnya, dan ID unik yang digunakan untuk memastikan integritas data:

Nama set data Deskripsi Keaktualan terbaik yang diharapkan ID unik untuk penghapusan duplikat
events Peristiwa keamanan yang dinormalisasi dalam skema UDM. Untuk mengetahui informasi tentang skema, lihat Skema peristiwa Google SecOps. < 5 menit id (Representasi string)
rule_detections Deteksi yang dihasilkan oleh aturan mesin deteksi Google SecOps. < 5 menit detection.id
ioc_matches Kecocokan indikator penyusupan (IOC) yang ditemukan terhadap peristiwa UDM. < 5 menit Kunci komposit day_bucket_seconds, feed_log_type, ioc_type, ioc_value
entity_graph Data kontekstual tentang entitas (pengguna, aset) dan hubungannya. ~4 jam (batch) Kunci komposit partition_day, metadata.product_entity_id, metadata.event_metadata.id
ingestion_metrics Statistik tentang volume penyerapan log dan sumber data. ~5 menit Tidak ada (deret waktu hanya untuk penambahan)
entity_enum_value_to_name_mapping Memetakan nilai numerik ke nilai string untuk jenis terenumerasi grafik entity. T/A Tidak ada
udm_enum_value_to_name_mapping Memetakan nilai numerik ke nilai string untuk jenis terenumerasi peristiwa UDM. T/A Tidak ada

Sampel kueri

Contoh berikut menunjukkan cara membuat kueri set data untuk kasus penggunaan keamanan umum.

Contoh — Temukan semua koneksi jaringan dari alamat IP tertentu dalam 24 jam terakhir

Kueri ini menelusuri tabel peristiwa untuk menemukan aktivitas jaringan terbaru dari alamat IP yang mencurigakan.

SELECT
  metadata.product_event_type,
  principal.ip,
  target.ip,
  network.application_protocol
FROM
  `PROJECT_ID.secops_linked_datalake.events`
WHERE
  principal.ip = '192.0.2.1'
  AND metadata.event_timestamp > TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 24 HOUR);
  • Ganti PROJECT_ID dengan Project ID Google Cloud Anda.

Contoh — Menghitung 10 deteksi aturan yang paling sering terjadi

Kueri ini pada tabel rule_detections membantu mengidentifikasi ancaman atau pelanggaran kebijakan paling umum yang terdeteksi di lingkungan Anda.

SELECT
  rule_name,
  COUNT(*) AS detection_count
FROM
  `PROJECT_ID.secops_linked_datalake.rule_detections`
WHERE
  detection.id IS NOT NULL
GROUP BY
  1
ORDER BY
  2 DESC
LIMIT
  10;
  • Ganti PROJECT_ID dengan Project ID Google Cloud Anda.

Praktik terbaik

Berikut beberapa praktik terbaik untuk membuat kueri dengan Advanced BigQuery Export:

  • Mengoptimalkan biaya kueri: Meskipun penyimpanan gratis, biaya komputasi ditagih ke project Anda, jadi lakukan hal berikut:

    • Hindari SELECT *. Dalam kueri Anda, tentukan hanya kolom yang Anda butuhkan untuk mengurangi jumlah data yang dipindai dan menurunkan biaya kueri.
    • Pastikan kueri Anda memanfaatkan partisi BigQuery (menggunakan kolom waktu partisi hour_time_bucket) dan pengelompokan (hour_time_bucket, log_type, event_type, id) untuk memindai lebih sedikit data dan mengurangi biaya kueri secara signifikan.
  • Gunakan filter partisi: Tabel peristiwa dipartisi menurut kolom hour_time_bucket. Selalu sertakan filter klausa WHERE pada kolom ini untuk membatasi kueri ke rentang waktu terkecil, yang secara signifikan meningkatkan performa dan mengurangi biaya.

  • Menulis kueri yang efisien: Skema UDM luas dan jarang. Untuk memfilter jenis peristiwa tertentu secara efisien, gunakan WHERE... IS NOT NULL pada kolom yang relevan. Misalnya, untuk hanya menemukan kueri DNS, filter WHERE network.dns.questions.name IS NOT NULL.

  • Validasi kueri: Gunakan validator kueri di UI BigQuery sebelum Anda menjalankan kueri. Validator kueri memberikan perkiraan data yang diproses, sehingga membantu Anda menghindari kueri yang tidak terduga besar dan mahal.

  • Gunakan tabel pemetaan enum: Advanced BigQuery Export mencakup tabel entity_enum_value_to_name_mapping dan udm_enum_value_to_name_mapping. Gunakan ini untuk menggabungkan peristiwa Anda guna menerjemahkan nilai enum numerik ke dalam string yang mudah dibaca tanpa menulis logika terjemahan manual dalam kueri Anda.

  • Integrasi logging audit: Advanced BigQuery Export terintegrasi dengan Federated Resource Identification Service (FRIS). Log audit yang ditampilkan kepada pelanggan, yang menggunakan fitur Transparansi Akses Google, dikirimkan secara native di dalam ruang kerja Cloud Logging BYOP Anda jika personel Google mengakses project tenant terkelola.

Batasan umum

Berikut adalah batasan umum untuk fitur BigQuery Export Lanjutan:

  • Latensi grafik entity: Set data entity_graph diekspor menggunakan proses batch dan memiliki keaktualan data sekitar empat jam.
  • Batas kolom skema UDM: BigQuery memiliki batas sementara 10.000 kolom per tabel. Skema UDM berisi lebih dari 27.000 kolom dan jarang diisi. Pipeline ekspor secara cerdas hanya menyertakan kolom yang terisi untuk peristiwa tertentu, sehingga sebagian besar pelanggan tidak akan melampaui batas. Google SecOps memantau penggunaan kolom dan secara proaktif meminta penambahan batas untuk project tenant Anda jika mendekati nilai minimum ini.
  • Periode retensi data tidak dapat dikonfigurasi: Periode retensi data untuk semua data keamanan yang diekspor ke BigQuery secara otomatis disinkronkan dengan periode retensi data proyek Google SecOps Anda, dan tidak dapat dikonfigurasi secara terpisah.
  • Data SOAR tidak didukung: Data dari Google Security Operations SOAR (search_everything_db) tidak didukung di Advanced BigQuery Export.
  • Federasi lintas region tidak didukung: Langganan MSSP hub dan spoke didukung dalam region yang sama. Federasi lintas-region (misalnya, AS ke Eropa) tidak didukung.
  • Peristiwa duplikat mungkin terjadi (kemungkinan kurang dari 1%): Meskipun sistem menggunakan penggabungan DML untuk menangani penghapusan duplikat secara otomatis, karena sifat streaming terdistribusi, ada kemungkinan kecil (< 1%) peristiwa duplikat muncul selama periode penyerapan kasus ekstrem sebelum penggabungan latar belakang selesai.
  • Data historis dapat diakses, tetapi memerlukan metode tertentu: Ekspor data dimulai dari saat Advanced BigQuery Export diaktifkan, dan data lama tetap dapat diakses di project yang ada. Untuk melakukan query data yang diekspor sebelum aktivasi Ekspor BigQuery Tingkat Lanjut, Anda perlu menggunakan satu query yang menggabungkan data dari kedua proyek, atau menjalankan dua query terpisah pada masing-masing proyek (satu untuk dataset lama dan satu untuk dataset baru).

Pemecahan masalah dan dukungan

Tabel berikut memberikan solusi untuk masalah umum yang mungkin Anda alami:

Gejala yang diamati Kemungkinan penyebab Tindakan yang disarankan
Kueri gagal dengan Access Denied: User does not have permission. Pengguna atau akun layanan tidak memiliki peran IAM BigQuery yang diperlukan di Google Cloud project yang ditautkan ke instance Google SecOps Anda. Berikan peran BigQuery Data Viewer dan BigQuery Job User kepada prinsipal. Verifikasi ini menggunakan gcloud projects get-iam-policy YOUR_PROJECT_ID --flatten="bindings.members" --format='table(bindings.role)' --filter="bindings.members:user:your-user@example.com"
Set data secops_linked_datalake tidak terlihat di project BigQuery saya. 1. Anda tidak berada di Google Cloud project
yang benar.2. Organisasi Anda tidak menggunakan paket Enterprise Plus.
3. Organisasi Anda menggunakan paket Enterprise Plus, tetapi Advanced BigQuery Export tidak diaktifkan di instance Google SecOps Anda.
1. Di konsol Google Cloud , pastikan Anda telah memilih project yang ditautkan ke instance Google SecOps Anda.
2. Hubungi perwakilan Google Anda untuk mengonfirmasi tingkat lisensi Google SecOps Anda.
3. Hubungi perwakilan Google SecOps Anda dan minta mereka untuk mengaktifkan Advanced BigQuery Export di instance Google SecOps Anda.
Panggilan API gagal dengan error izin untuk ProvisionPartnerSubscription atau FetchSubscriptions Identitas pemanggil tidak memiliki izin yang diperlukan. Pastikan akun layanan atau pengguna yang melakukan panggilan memiliki peran IAM Administrator API Chronicle, yang mencakup izin pada resource instance hub.
Kolom kustom tidak ada atau skema tidak cocok Jenis log baru atau kolom UDM yang sangat bertingkat telah diproses. BigQuery Export Lanjutan menggunakan pembaruan skema dinamis. Saat kolom UDM baru diisi, sistem akan otomatis mendeteksi ketidakcocokan skema, berhenti sejenak, mengupdate skema BigQuery, dan mencoba lagi penyisipan. Anda tidak perlu melakukan apa pun.

Pertanyaan umum (FAQ)

Bagian berikut adalah beberapa pertanyaan umum (FAQ).

Apakah saya perlu mengubah kueri SQL BigQuery lama yang ada untuk menggunakan Advanced Google SecOps Export?

Tidak. Untuk mempertahankan kompatibilitas mundur 100%, Google SecOps menampilkan tampilan (misalnya, events, ioc_matches) di set data tertaut yang sangat cocok dengan skema tabel dari fitur ekspor Google SecOps lama.

Dapatkah saya menyesuaikan periode retensi data untuk Advanced BigQuery Export saya?

Tidak. Periode retensi data di Advanced BigQuery Export secara langsung mencerminkan kebijakan retensi data Google SecOps Anda. Saat masa berlaku data di Google SecOps berakhir, data tersebut akan otomatis berakhir dan dihapus dari project tenant BigQuery.

Apakah saya akan dikenai biaya untuk update DML backend dan penghapusan duplikat?

Tidak. Semua biaya komputasi DML terperinci, operasi streaming insert, dan penyimpanan backend ditanggung oleh Google SecOps. Anda hanya membayar kueri yang secara eksplisit Anda jalankan di BYOP Anda.

Apakah fitur ini tersedia untuk paket Google SecOps Standard atau Enterprise?

Tidak. BigQuery Export Lanjutan (penyimpanan dan streaming terkelola) adalah fitur premium eksklusif untuk paket Google SecOps Enterprise Plus. Pelanggan Standar dan Enterprise dapat menggunakan model Bawa BigQuery Anda Sendiri (BYOBQ), dengan menyediakan project BigQuery dan menanggung biaya penyimpanan dan komputasi.

Mengapa saya mungkin melihat perbedaan sementara dalam jumlah antara data di Advanced BigQuery Export dan statistik yang ditampilkan di UI Google Security Operations?

Perbedaan sementara dapat terjadi karena sifat pipeline BigQuery Export Lanjutan yang streaming dan mendekati real-time. Berikut adalah alasan utamanya:

  • Data yang terlambat tiba: Pipeline ekspor dirancang untuk throughput tinggi. Sebagian besar data muncul di BigQuery dalam waktu 5 hingga 10 menit. Namun, peristiwa terkadang terlambat tiba di pipeline pemrosesan karena penundaan jaringan atau masalah sistem sumber. Meskipun sistem berupaya menggabungkan peristiwa yang terlambat ini, ada kemungkinan perbedaan singkat antara statistik UI langsung, yang mencerminkan status terbaru, dan data BigQuery yang terus diperbarui.

  • Pengayaan ulang data: Google SecOps terus-menerus memperkaya data peristiwa dengan threat intelligence dan informasi kontekstual terbaru. Ekspor BigQuery Lanjutan mengekspor peristiwa berdasarkan statusnya pada saat pengayaan awal. Jika peristiwa diperkaya kembali dengan informasi baru setelah di-streaming ke BigQuery, versi yang diperbarui ini mungkin tidak langsung ditampilkan di BigQuery. Hal ini dapat menyebabkan perbedaan saat dibandingkan dengan elemen UI yang selalu menampilkan data yang sepenuhnya diperkaya ulang.

  • Latensi penggabungan DML: Agar data di BigQuery tetap terbaru dan menangani hal-hal seperti data yang terlambat tiba atau potensi duplikat, pipeline menggunakan operasi MERGE Bahasa Pengolahan Data (DML) di latar belakang. Operasi ini, meskipun efisien, tidak instan. Ada latensi bawaan saat penggabungan ini diproses, terutama untuk update terperinci. Selama interval penggabungan ini, kueri terhadap BigQuery mungkin tidak mengambil micro-update terbaru yang sudah terlihat di UI Google Security Operations.

Karena faktor-faktor yang disebutkan (data terlambat, penanganan pengayaan ulang, dan latensi penggabungan), kecocokan 1:1 yang sempurna antara BigQuery dan statistik UI langsung pada detik tertentu mungkin tidak selalu terjadi. Ekspor BigQuery Lanjutan menyediakan data mendekati real-time, yang dioptimalkan untuk kasus penggunaan seperti penelusuran ancaman, analisis kustom, dan pembuatan dasbor yang memerlukan data terbaru dalam hitungan menit. Untuk tujuan audit yang memerlukan konsistensi absolut pada satu titik waktu, pertimbangkan potensi perbedaan kecil yang bersifat sementara.

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