Menyiapkan webhook SOAR

Didukung di:

Webhook adalah solusi ringan untuk menyerap pemberitahuan dari organisasi Anda ke dalam platform Google Security Operations SOAR.

Peringatan yang di-webhook muncul di platform dengan informasi yang sama seperti peringatan yang dimasukkan menggunakan konektor.

Google merekomendasikan penggunaan konektor atau webhook dari sumber yang sama, tetapi tidak keduanya, untuk menghindari pembuatan kasus duplikat.

Webhook paling cocok untuk skenario yang memerlukan logika pemetaan dasar, sementara konektor lebih baik untuk pemetaan tingkat lanjut dan fleksibel.

Menyiapkan webhook untuk memproses pemberitahuan

Untuk menyiapkan webhook guna menyerap pemberitahuan, ikuti langkah-langkah berikut:

  1. Buka SOAR Settings > Ingestion > Webhooks.
  2. Klik add Tambahkan webhook masuk.
  3. Masukkan nama untuk webhook baru, lalu pilih lingkungan.
  4. Klik Simpan. Setelah disimpan, webhook baru akan muncul di halaman utama.
  5. Salin URL webhook dan catat untuk digunakan nanti. Anda harus memasukkannya di platform sumber sebagai tujuan webhook.

Data peta

Setelah mengupload sampel JSON, Anda dapat menggunakan bagian Pemetaan data untuk memetakan kolom dari JSON sumber ke kolom yang sesuai di Google Security Operations SOAR. Sistem memproses JSON mentah Anda, dan Anda menggunakan antarmuka pengguna (UI) untuk membuat pemetaan.

  1. Di bagian Pemetaan data, klik Upload sampel JSON. Berikan sampel representatif dari payload JSON yang dikirim webhook Anda.
  2. Petakan kolom Google Security Operations dengan kolom yang sesuai dalam contoh JSON Anda. Misalnya, untuk memetakan kolom StartTime wajib, Anda dapat memilih kolom stempel waktu dari JSON, seperti Detections.Last.Update.
  3. Gunakan Pembuat Ekspresi untuk menyaring data. Misalnya, Anda dapat menggunakan fungsi Format tanggal untuk mengonversi stempel waktu Anda ke dalam format milidetik epoch Unix yang diperlukan. Untuk mengetahui informasi selengkapnya, lihat Menggunakan Pembuat Ekspresi.
  4. Klik Jalankan di Pembuat Ekspresi untuk menguji pemetaan dan melihat hasilnya. Tanda centang hijau menunjukkan pemetaan yang berhasil.
  5. Payload JSON webhook Anda harus berisi kolom yang diperlukan untuk pembuatan kasus dan penyerapan pemberitahuan. Untuk mengetahui detailnya, lihat Memahami skema JSON webhook.
  6. Setelah Anda memetakan semua kolom yang diperlukan, klik Simpan, lalu aktifkan webhook.

Memahami pemetaan kolom target

Saat memetakan data JSON, Anda memetakan ke kolom standar dalam Google Security Operations SOAR. Kolom ini dikelompokkan ke dalam kategori untuk membantu Anda menormalisasi dan menyusun data yang masuk. Kolom yang tersedia di UI Pemetaan data didasarkan pada ontologi sistem internal. Kategori utamanya meliputi:

  • Kolom entity: Gunakan kolom ini untuk titik data yang dapat digunakan sistem untuk mengekstrak dan memodelkan entity secara otomatis, seperti alamat IP, nama domain, hash file, dan nama pengguna. Pemetaan ke kolom ini akan memperkaya pemberitahuan serta meningkatkan korelasi dan pemutaran.
  • Kolom peristiwa generik: Gunakan kolom ini untuk metadata peristiwa umum, seperti stempel waktu (StartTime, EndTime), deskripsi atau pesan peristiwa, dan atribut peristiwa umum lainnya.
  • Metadata teknis dan perangkat: Gunakan kolom ini untuk detail teknis tentang sumber peristiwa, seperti vendor dan produk perangkat pelaporan (DeviceVendor, DeviceProduct), tingkat keparahan peristiwa, dan atribut teknis serupa lainnya.

Jelajahi kolom yang tersedia dalam alat Pemetaan data di UI SOAR Google Security Operations untuk menemukan kolom target yang paling sesuai untuk setiap bagian data dalam payload JSON Anda.

Memahami skema JSON webhook

Untuk memastikan pemberitahuan Anda diserap dan diproses dengan benar oleh Google Security Operations SOAR, payload JSON webhook Anda harus mengikuti struktur tertentu. Tabel berikut menjelaskan kolom utama yang diharapkan dalam payload JSON.

Kolom kasus dan pemberitahuan utama

Kolom ini mewakili properti tingkat teratas dari pemberitahuan atau kasus yang sedang dibuat.

Kolom Jenis Format yang direkomendasikan Wajib Deskripsi Contoh
TicketId String UUID Ya
  • ID unik global (GUID) internal untuk kasus dalam platform SOAR.
  • Persyaratan keunikan TicketId bersifat kondisional dan bergantung pada DisplayId:
    • Jika DisplayId yang unik diberikan, TicketId tidak harus unik.
    • Jika DisplayId tidak diberikan, TicketId harus unik.
  • TicketId sering kali memiliki nilai yang sama dengan DisplayId.
"f7167971-f641-432f-a06f-ebca3caaa9dd"
SourceSystemName String Teks Ya Nama sistem eksternal (misalnya, SIEM atau sistem deteksi dan respons endpoint (EDR)) yang mengirimkan pemberitahuan asli ke SOAR. "Splunk"
Name String Teks Ya Judul atau nama Kasus, yang sering diambil dari jenis atau ringkasan pemberitahuan sumber. "Suspicious Login Attempt"
DeviceVendor String Teks Ya Vendor perangkat atau produk yang memicu notifikasi. Hal ini juga dapat dipetakan dari data peristiwa. "Palo Alto Networks"
RuleGenerator String Teks Ya Nama aturan dalam sistem sumber (misalnya, aturan korelasi SIEM) yang menghasilkan pemberitahuan. "Brute Force Attempt Detected"
StartTime String atau bilangan bulat Milidetik Epoch (UTC) atau string ISO8601 (misalnya, "2026-04-09T14:30:00Z") Ya Waktu mulai peristiwa paling awal dalam kasus ini. Jika memberikan bilangan bulat, bilangan tersebut harus dalam milidetik epoch Unix. 1670000000000 atau "2026-04-09T14:30:00Z"
Environment String Teks Tidak Nama lingkungan SOAR tempat pemberitahuan ini berada. Nilai ini harus cocok dengan lingkungan yang ditentukan di setelan SOAR Anda. "Default Environment"
Description String Teks Tidak Deskripsi singkat kasus atau notifikasi. "Failed login followed by success from new IP"
DisplayId String UUID atau String Tidak
  • ID yang digunakan untuk tujuan tampilan dalam UI SOAR.
  • Kolom ini adalah kunci utama yang diperiksa sistem untuk mendeteksi duplikat pemberitahuan.
  • Peringatan ditolak sebagai duplikat jika DisplayId tidak unik. Pemeriksaan keunikan di DisplayId ini lebih diprioritaskan daripada TicketId.
  • DisplayId sering kali memiliki nilai yang sama dengan TicketId.
"f7167971-f641-432f-a06f-ebca3caaa9dd"
Reason String Teks Tidak Alasan pemberitahuan dibuat atau dipicu. "Unusual file access patterns detected."
DeviceProduct String Teks Tidak Nama produk dari vendor yang memicu notifikasi. Hal ini juga dapat dipetakan dari data peristiwa. "Cortex XDR"
EndTime String atau bilangan bulat Milidetik epoch (UTC) atau string ISO8601 (misalnya, "2026-04-09T14:30:00Z") Tidak Waktu berakhir peristiwa terbaru dalam kasus ini. Jika memberikan bilangan bulat, bilangan bulat tersebut harus dalam milidetik epoch Unix. 1670000060000 atau "2026-04-09T14:31:00Z"
Priority Bilangan bulat 0-100 Tidak Tingkat prioritas kasus. Jika tidak disediakan, setelan defaultnya adalah 40. (0-19: Informatif, 20-39: Rendah, 40-59: Sedang, 60-79: Tinggi, 80-100: Kritis) 80
EventsList Array Array objek JSON Tidak Array yang berisi satu atau beberapa objek peristiwa mentah seperti yang diterima dari sumber. Lihat Mengirim data peristiwa mentah. [ { ... }, { ... } ]
EventProduct String Teks Tidak Produk yang membuat peristiwa. "Cortex XDR"
EventName String Teks Tidak Judul atau nama peristiwa, sering kali diambil dari jenis atau ringkasan pemberitahuan sumber. "Suspicious Login Attempt"

Mengirim data peristiwa mentah - array EventsList

Anda harus mengirim payload JSON mentah yang merepresentasikan peristiwa saat berasal dari sistem sumber dalam array EventsList. Objek ini adalah salah satu elemen dalam array EventsList. Kemudian, Anda memetakan kolom seperti source_ip dan timestamp menggunakan UI Pemetaan data.

Contoh objek peristiwa dalam array EventsList

{
  "event_id": "9a8b7c-1234-5678",
  "timestamp": "2026-07-01T07:29:50Z",
  "signature": "UserLoginFailed",
  "severity": "Medium",
  "user_name": "administrator",
  "source_ip": "192.168.1.50",
  "destination_ip": "10.0.0.10",
  "domain": "CORP",
  "status": "Failure",
  "Reason": "Wrong Password",
  "EventProduct": "Acme Firewall",
  "EventName": "Failed Login Attempt"
}

Pertimbangan utama dan praktik terbaik

  • Stempel waktu: Gunakan milidetik epoch Unix untuk semua kolom StartTime dan EndTime di tingkat teratas (sebagai bilangan bulat). Dalam data peristiwa, berikan stempel waktu sebagaimana adanya dari sumber; Anda mengonversinya di UI Pemetaan data.
  • Kolom wajib diisi: Pastikan semua kolom yang ditandai sebagai "Ya" di kolom Wajib diisi ada dalam payload JSON Anda.
  • Array EventsList: Array ini sangat penting. Meskipun pemberitahuan mewakili satu peristiwa, pemberitahuan tersebut harus digabungkan dalam array EventsList.
  • UI pemetaan data: Gunakan alat Pemetaan data di UI Konfigurasi webhook untuk memetakan kolom dari JSON mentah ke kolom Google Security Operations SOAR yang sesuai.
  • Keunikan: DisplayId harus unik untuk setiap Notifikasi Berita baru guna menghindari penghapusan duplikat. TicketId harus unik jika DisplayId tidak diberikan.
  • Status respons: Respons HTTP 200 OK dari endpoint Webhooks Ingest mengonfirmasi bahwa payload telah diterima, tetapi tidak menjamin bahwa notifikasi akan dibuat. Pembuatan pemberitahuan dapat gagal selama pemrosesan downstream karena struktur payload atau aturan pemfilteran. Anda dapat melacak status pemrosesan downstream menggunakan fungsi Mengumpulkan log platform SOAR.
  • Pengujian: Gunakan tab Upload JSON sample dan Testing dalam halaman Webhook configuration di SOAR untuk memvalidasi struktur dan pemetaan payload Anda.

Menguji webhook

Di tab Pengujian, Anda dapat menguji fungsi webhook secara menyeluruh dan melihat deskripsi error mendetail.

  1. Di tab Testing, salin URL webhook.
  2. Upload file JSON dengan data yang relevan.
  3. Klik Run. Hasil akan ditampilkan bersama dengan output.

Mengonfigurasi platform CrowdStrike

Kasus penggunaan ini akan memandu Anda melakukan langkah-langkah di CrowdStrike agar webhook mulai menyerap pemberitahuan ke platform Google SecOps.

  1. Di dasbor CrowdStrike Falcon, buka Falcon store dan instal add-on Webhook.
  2. Konfigurasi webhook dengan nama dan URL webhook yang Anda salin dari platform Google SecOps, lalu klik Save.
  3. Buka bagian Alur Kerja.
  4. Klik Buat alur kerja.
  5. Pilih pemicu, seperti Deteksi baru, lalu klik Berikutnya.
  6. Pilih Tambahkan tindakan.
  7. Di bagian Tindakan kustom, pilih Notifikasi dari menu Jenis tindakan, lalu pilih Panggil webhook dari menu Tindakan.
  8. Pilih nama yang Anda tambahkan di langkah awal dan semua kolom yang diperlukan, lalu klik Selesai.

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