Mengumpulkan log WAF Radware
Dokumen ini menjelaskan cara mengumpulkan log Web Application Firewall (WAF) Radware menggunakan forwarder Google Security Operations.
Parser mengekstrak kolom dari pesan syslog firewall Radware menggunakan pola grok, dan memetakan kolom tersebut ke UDM. Alat ini menangani berbagai format log, mengisi kolom hasil keamanan berdasarkan detail serangan, dan mengategorikan peristiwa berdasarkan attack_id
, sehingga memperkaya data untuk penyerapan Google SecOps.
Sebelum memulai
- Pastikan Anda memiliki instance Google Security Operations.
- Pastikan Anda menggunakan Windows 2016 atau yang lebih baru, atau host Linux dengan
systemd
. - Jika berjalan di balik proxy, pastikan port firewall terbuka.
- Pastikan Radware Vision Reporter diinstal dan dikonfigurasi di AppWall.
- Pastikan Anda memiliki akses dengan hak istimewa ke portal WAF Radware.
Mendapatkan file autentikasi penyerapan Google SecOps
- Login ke konsol Google SecOps.
- Buka Setelan SIEM > Agen Pengumpulan.
- Download File Autentikasi Proses Transfer. Simpan file dengan aman di sistem tempat Agen Bindplane akan diinstal.
Mendapatkan ID pelanggan Google SecOps
- Login ke konsol Google SecOps.
- Buka Setelan SIEM > Profil.
- Salin dan simpan ID Pelanggan dari bagian Detail Organisasi.
Menginstal Agen Bindplane
Penginstalan Windows
- Buka Command Prompt atau PowerShell sebagai administrator.
Jalankan perintah berikut:
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
Penginstalan Linux
- Buka terminal dengan hak istimewa root atau sudo.
Jalankan perintah berikut:
sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
Referensi penginstalan tambahan
- Untuk opsi penginstalan tambahan, lihat panduan penginstalan ini.
Mengonfigurasi Agen Bindplane untuk menyerap Syslog dan mengirimnya ke Google SecOps
Akses file konfigurasi:
- Cari file
config.yaml
. Biasanya, file ini berada di direktori/etc/bindplane-agent/
di Linux atau di direktori penginstalan di Windows. - Buka file menggunakan editor teks (misalnya,
nano
,vi
, atau Notepad).
- Cari file
Edit file
config.yaml
sebagai berikut:receivers: udplog: # Replace with your specific IP and port listen_address: "0.0.0.0:514" exporters: chronicle/chronicle_w_labels: compression: gzip # Path to the ingestion authentication file creds: '/path/to/your/ingestion-auth.json' # Your Chronicle customer ID customer_id: 'your_customer_id' endpoint: malachiteingestion-pa.googleapis.com ingestion_labels: log_type: SYSLOG namespace: radware_waf raw_log_field: body service: pipelines: logs/source0__chronicle_w_labels-0: receivers: - udplog exporters: - chronicle/chronicle_w_labels
- Ganti port dan alamat IP sesuai kebutuhan di infrastruktur Anda.
- Ganti
<customer_id>
dengan ID pelanggan yang sebenarnya. - Perbarui
/path/to/ingestion-authentication-file.json
ke jalur tempat file autentikasi disimpan di bagian Mendapatkan file autentikasi penyerapan Google SecOps.
Mulai ulang Agen Bindplane untuk menerapkan perubahan
Untuk memulai ulang Agen Bindplane di Linux, jalankan perintah berikut:
sudo systemctl restart bindplane-agent
Untuk memulai ulang Agen Bindplane di Windows, Anda dapat menggunakan konsol Services atau memasukkan perintah berikut:
net stop BindPlaneAgent && net start BindPlaneAgent
Mengonfigurasi WAF Radware AppWall
Untuk menyelesaikan tugas, lakukan tiga konfigurasi berikut:
- Konfigurasikan AppWall mandiri menggunakan Vision Reporter.
- Konfigurasikan AppWall terintegrasi di Alteon menggunakan Vision Reporter (sertakan data permintaan HTTP dalam detail peristiwa).
- Mengonfigurasi Vision Reporter untuk Mengirim Log ke Agen Bindplane.
Mengonfigurasi AppWall Mandiri menggunakan Vision Reporter
- Login ke konsol Radware WAF menggunakan kredensial administrator.
- Buka Konfigurasi > Layanan > Dukungan Visi > Vision Reporter.
- Aktifkan logging dengan memilih kotak centang Kirim peristiwa ke Vision Reporter.
- Alamat Vision Reporter: masukkan alamat IP Vision Reporter.
- Port: masukkan nomor port.
- Protocol: pilih UDP atau TCP.
- Untuk menyertakan data respons HTTP, centang kotak Kirim balasan ke Vision Reporter.
- Klik Simpan.
Mengonfigurasi AppWall Terintegrasi di Alteon menggunakan Vision Reporter (lebih disukai untuk Logging Data Permintaan HTTP)
- Login ke konsol Radware WAF menggunakan kredensial administrator.
- Buka Konfigurasi > Keamanan > Keamanan Web > Vision Reporter.
- Aktifkan logging dengan memilih kotak centang Kirim peristiwa ke Vision Reporter.
- Centang kotak Kirim peristiwa ke pelaporan Vision.
- Alamat IP Vision Reporter: masukkan alamat IP Vision Reporter.
- Port: masukkan nomor port yang tinggi.
- Security: pilih UDP atau TCP.
- Klik Simpan.
Mengonfigurasi Vision Reporter untuk mengirim log ke Agen Bindplane
- Login ke konsol administrator Radware Vision Reporter.
- Buka Konfigurasi > SIEM & Logging Eksternal.
- Klik + Tambahkan Tujuan SIEM Baru.
- Destination Name: masukkan Google SecOps Forwarder.
- Log Export Type: pilih Syslog (format RFC 5424) untuk logging terstruktur.
- IP Server Syslog Jarak Jauh masukkan alamat IP Agen Bindplane.
- Port: masukkan port yang diproses Agen Bindplane (misalnya, 514 untuk UDP, 601 untuk TCP).
- Protokol: pilih UDP atau TCP, bergantung pada konfigurasi Bindplane.
- Klik Simpan.
Tabel Pemetaan UDM
Kolom Log | Pemetaan UDM | Logika |
---|---|---|
action |
event.idm.read_only_udm.security_result.action |
Jika action adalah "drop", tetapkan ke "BLOCK". |
attack_desc |
event.idm.read_only_udm.security_result.description |
Dipetakan secara langsung. |
attack_type |
event.idm.read_only_udm.security_result.threat_name |
Dipetakan secara langsung. |
command |
event.idm.read_only_udm.principal.process.command_line |
Dipetakan secara langsung. |
description |
event.idm.read_only_udm.security_result.description |
Dipetakan langsung jika attack_desc kosong. |
dst_ip |
event.idm.read_only_udm.target.ip |
Dipetakan secara langsung. |
dst_port |
event.idm.read_only_udm.target.port |
Dipetakan secara langsung, dikonversi menjadi bilangan bulat. Tetapkan ke "MACHINE" jika username ada dan command tidak ada. Disalin dari kolom collection_time log mentah. Default-nya adalah "NETWORK_CONNECTION". Tetapkan ke "GENERIC_EVENT" jika src_ip atau dst_ip tidak ada. Tetapkan ke "USER_LOGIN" jika username ada dan command tidak ada. Dapat diganti oleh logika berdasarkan attack_id . Tetapkan ke "RADWARE_FIREWALL". Dipetakan dari kolom product . Tetapkan ke "Radware". |
intermediary_ip |
event.idm.read_only_udm.intermediary.ip |
Dipetakan secara langsung. |
obv_ip |
event.idm.read_only_udm.observer.ip |
Dipetakan secara langsung. |
product |
event.idm.read_only_udm.metadata.product_name |
Dipetakan secara langsung. |
protocol_number_src |
event.idm.read_only_udm.network.ip_protocol |
Diurai menggunakan logika parse_ip_protocol.include . |
rule_id |
event.idm.read_only_udm.security_result.rule_id |
Dipetakan secara langsung. Diperoleh berdasarkan nilai attack_id . Nilai mencakup "ACL_VIOLATION", "NETWORK_DENIAL_OF_SERVICE", "NETWORK_SUSPICIOUS", "NETWORK_RECON". |
src_ip |
event.idm.read_only_udm.principal.ip |
Dipetakan secara langsung. |
src_port |
event.idm.read_only_udm.principal.port |
Dipetakan secara langsung, dikonversi menjadi bilangan bulat. |
ts |
event.idm.read_only_udm.metadata.event_timestamp |
Diurai dan dikonversi menjadi stempel waktu. |
username |
event.idm.read_only_udm.target.user.userid |
Dipetakan secara langsung jika command tidak ada. |
username |
event.idm.read_only_udm.principal.user.userid |
Dipetakan langsung jika command ada. |
Perubahan
2023-12-08
- Mengubah pola Grok untuk mengurai "src_ip" dengan benar.
2023-11-23
- Menambahkan pola Grok baru untuk mendukung pola SYSLOG baru yang tidak diuraikan.
- Menambahkan dukungan untuk pola tanggal baru "ts".
- Melakukan inisialisasi "attack_type", "attack_desc", "protocol_number_src", "security_result", "action", "product" ke null.
- Menambahkan pemeriksaan null ke "product" sebelum memetakan ke "event.idm.read_only_udm.metadata.product_name".
- Menambahkan pemeriksaan null ke "rule_id" sebelum memetakan ke "event.idm.read_only_udm.security_result.rule_id".
- Menambahkan pemeriksaan null ke "attack_desc" sebelum memetakan ke "event.idm.read_only_udm.security_result.description".
- Menambahkan pemeriksaan null ke "attack_type" sebelum memetakan ke "event.idm.read_only_udm.security_result.threat_name".
- Memetakan "username" ke "event.idm.read_only_udm.principal.user.userid".
- Memetakan "command" ke "event.idm.read_only_udm.principal.process.command_line"
- Memetakan "description" ke "event.idm.read_only_udm.security_result.description".
- Memetakan "intermediary_ip" ke "event.idm.read_only_udm.intermediary.ip".
Perlu bantuan lain? Dapatkan jawaban dari anggota Komunitas dan profesional Google SecOps.