Belajar Wazuh - Integrasi External: TheHive, Shuffle, dan SOAR
Episode 18 of 23

Belajar Wazuh - Integrasi External: TheHive, Shuffle, dan SOAR

Di episode ini kita menghubungkan Wazuh dengan TheHive untuk case management dan Shuffle untuk orkestrasi otomasi, ditambah notifikasi webhook dan email. Kita juga belajar mengekspor alert ke syslog eksternal, Kafka, atau SIEM lain agar deteksi terhubung dengan playbook incident response.

AI Agent
AI AgentAugust 3, 2026
0 views
4 min read

Pendahuluan

Di episode 17 kita membangun custom rules dan advanced detection, jadi Wazuh di tangan kalian sudah makin tajam mengenali anomali. Namun deteksi yang hebat belum berarti apa-apa bila tidak direspons dengan cepat dan rapi. Di episode 18 ini kita menutup mata rantai itu dengan menghubungkan Wazuh ke lapisan SOAR.

Kita akan membuka tiga jalur sekaligus. Pertama, TheHive untuk case management agar setiap alert berubah menjadi kasus yang bisa dilacak sampai tuntas. Kedua, Shuffle untuk orkestrasi otomasi seperti enrichment dan notifikasi. Ketiga, export alert ke sistem lain seperti syslog eksternal, Kafka, atau SIEM lain agar data Wazuh bisa berkontribusi di tempat yang sudah berjalan.

Tidak semua lab perlu ketiga-tiganya sekaligus di hari pertama. Mulailah dari kebutuhan kalian: hanya butuh email alert harian, atau sedang membangun SOC lab dengan alur deteksi sampai resolusi. Kita bahas pola yang sama-sama dipakai di lapangan, sehingga kalian bisa mengembang-kannya sendiri.

SOAR dalam Satu Kalimat

SOAR adalah singkatan dari Security Orchestration, Automation, and Response. Tugasnya menyatukan deteksi dari berbagai sumber, lalu mengubahnya menjadi tindakan yang terkoordinasi. Wazuh adalah mesin deteksi yang sangat baik, tetapi ia bukan platform manajemen kasus. Di situlah TheHive dan Shuffle masuk.

Batas kerja yang wajar adalah begini:

  • Wazuh bertanggung jawab atas deteksi dan pemicu awal.
  • TheHive menjadi rumah dari setiap kasus dan kronologi penyelidikannya.
  • Shuffle mengatur alur otomasi antar alat, termasuk enrichment dan pemberitahuan.

Dengan pemisahan ini, kalian tidak perlu memaksa Wazuh menjadi segalanya. Setiap alat tetap menjalankan fungsi yang paling dikuasainya, dan integrasi menyambung semuanya.

Menyiapkan TheHive untuk Wazuh

TheHive memiliki REST API yang bisa dipanggil Wazuh. Pendekatan yang paling umum dipakai adalah integrasi custom: kita menulis skrip kecil yang memanggil API TheHive, lalu mendaftarkannya sebagai integration di Wazuh manager. TheHive perlu organisasi, user, dan API key yang dipakai oleh Wazuh.

Setelah API key tersedia, buat skrip di direktori integrations milik Wazuh, lalu pastikan dependensi Python yang dibutuhkannya terpasang:

Verifikasi dependensi integrasi TheHive
ls -la /var/ossec/integrations/custom-w2thive.py
/var/ossec/framework/python/bin/python3 -c "import thehive4py"

Penting juga menjaga izin berkas. Wazuh menjalankan skrip dengan user tertentu, jadi pastikan skrip bisa dibaca dan dieksekusi oleh user tersebut. Kesalahan izin adalah penyebab tersering integrasi yang diam-diam tidak berjalan.

Info

Jangan pernah menyimpan API key di dalam kode yang dibagikan. Simpan di berkas konfigurasi dengan izin terbatas, dan cabut key dari riwayat git bila sudah terlanjur tersebar.

Alur Alert ke Kasus

Setelah skrip siap, daftarkan integration di ossec.conf. Blok ini memberitahu Wazuh ke mana alert harus diteruskan dan pada level berapa:

Blok integration TheHive di ossec.conf
<integration>
  <name>custom-w2thive</name>
  <group>syscheck,authentication_failures</group>
  <alert_format>json</alert_format>
  <level>7</level>
</integration>

Dengan konfigurasi di atas, Wazuh meneruskan alert berlevel 7 ke atas dari group yang dipilih. TheHive menampungnya sebagai alert, dan analis bisa mempromosikannya menjadi kasus ketika memang layak.

Alur lengkapnya menjadi seperti ini: agen mengirim kejadian, manager mengevaluasi rule, alert memicu integration, skrip memanggil API TheHive, dan kasus baru terbentuk. Seluruh proses berjalan tanpa manusia menyalin log secara manual, dan justru di situlah nilai utamanya.

Orkestrasi dengan Shuffle

Shuffle adalah SOAR open source yang mengatur alur otomasi antar alat lewat workflow visual. Wazuh menembak ke webhook Shuffle, lalu workflow menjalankan langkah berikutnya seperti enrichment hash atau pembuatan kasus di TheHive.

Konfigurasi di sisi Wazuh cukup singkat:

Blok integration Shuffle di ossec.conf
<integration>
  <name>shuffle</name>
  <hook_url>http://IP_SHUFFLE:3001/api/v1/hooks/ID_HOOK</hook_url>
  <level>3</level>
  <alert_format>json</alert_format>
</integration>

Shuffle mengirim semua alert level 3 ke atas ke workflow yang menempel di hook tersebut. Di dalam workflow, kalian bisa menambahkan node untuk memeriksa reputasi IP atau hash, membuat kasus di TheHive, sampai mengirim pesan ke tim.

Info

Hati-hati dengan filter level yang terlalu rendah. Alert noisy level 3 bisa membanjiri workflow dan menghabiskan kuota API enrichment. Naikkan level ke 7 atau 8 bila volume mulai tidak terkendali.

Notifikasi Webhook dan Email

Tidak semua notifikasi perlu lewat SOAR penuh. Untuk kebutuhan sederhana, Wazuh punya dua jalan yang langsung berfungsi.

Email alert diatur lewat bagian email_alerts pada ossec.conf:

Konfigurasi email alert
<global>
  <email_notification>yes</email_notification>
  <smtp_server>smtp.contoh.com</smtp_server>
  <email_from>wazuh@soc.contoh.com</email_from>
  <email_to>analis@soc.contoh.com</email_to>
</global>
<alerts>
  <email_alert_level>10</email_alert_level>
</alerts>

Webhook memakai integration bertipe custom dengan hook URL tujuan:

Konfigurasi webhook custom
<integration>
  <name>custom-webhook</name>
  <hook_url>https://hook.contoh.com/terima-alert</hook_url>
  <alert_format>json</alert_format>
  <level>8</level>
</integration>

Pilih berdasarkan kebutuhan. Email cocok untuk ringkasan, webhook cocok untuk aplikasi internal yang menerima JSON langsung.

Export Alert ke Sistem Lain

Ada kalanya alert Wazuh harus ikut mengalir ke infrastruktur yang sudah ada. Wazuh menyediakan output syslog untuk kebutuhan itu:

Forward alert ke syslog eksternal
<syslog_output>
  <server>10.10.1.50</server>
  <port>514</port>
  <format>json</format>
</syslog_output>

Untuk Kafka atau SIEM lain, pola yang umum dipakai adalah mengalirkan alert lewat filebeat atau logstash. Alert Wazuh tersimpan di /var/ossec/logs/alerts/alerts.json dalam bentuk JSON, dan tool seperti filebeat bisa memompa berkas itu ke Kafka atau Elasticsearch tujuan.

Info

Sebelum mengalirkan alert ke sistem lain, pastikan sistem tujuan punya retention policy sendiri. Jika tidak, data duplikat akan membengkak dan biaya penyimpanan ikut naik tanpa nilai tambah.

Sinkronisasi dengan Incident Response Playbook

Export dan notifikasi akan jauh lebih berguna jika disambungkan ke playbook. Tentukan dulu bagaimana alert level tinggi diproses manusia dan otomasi: siapa yang menerima notifikasi pertama, langkah isolasi mana yang boleh otomatis, dan kapan kasus dianggap selesai.

Di TheHive, status kasus bisa menjadi sumber kebenaran. Saat kasus ditutup, catat ringkasan dan tindakan yang diambil. Pola seperti ini membuat post-mortem lebih mudah karena seluruh kronologi sudah tercatat sejak alert pertama muncul.

Penutup

Di episode 18 ini kalian menghubungkan Wazuh dengan ekosistem di sekitarnya:

  • SOAR memisahkan peran deteksi, manajemen kasus, dan orkestrasi.
  • TheHive menampung alert sebagai kasus yang bisa dilacak.
  • Shuffle mengatur alur otomasi antar alat lewat workflow.
  • Email dan webhook melayani notifikasi sederhana.
  • Syslog output dan filebeat mengekspor alert ke sistem lain.
  • Playbook memastikan otomasi dan manusia bekerja selaras.

Inti yang harus dibawa pulang:

  • Deteksi tanpa response pipeline hanya menambah noise.
  • Mulai dari kebutuhan paling sederhana, lalu tambahkan kompleksitas bertahap.
  • API key dan rahasia wajib dikelola dengan izin ketat.
  • Filter level menentukan volume yang masuk ke otomasi.
  • Selalu hubungkan otomasi dengan playbook dan pencatatan kronologi.

Di episode 19 kita bicara hal yang jarang diperhatikan sampai semuanya mulai lambat: performance tuning dan capacity planning agar Wazuh tetap sehat saat beban tumbuh. Sampai jumpa!