Mengumpulkan log Imperva FlexProtect

Didukung di:

Dokumen ini menjelaskan cara menyerap log Imperva FlexProtect ke Google Security Operations menggunakan Bindplane. Parser terlebih dahulu membersihkan dan memproses awal log yang masuk, lalu mencoba mengekstrak data Common Event Format (CEF). Bergantung pada keberadaan kolom tertentu seperti "src" dan "sip", alat ini menetapkan jenis peristiwa UDM dan memetakan kolom CEF yang relevan ke skema UDM, lalu memperkaya output dengan kolom kustom tambahan. Imperva FlexProtect menyediakan deployment fleksibel solusi keamanan Imperva (SecureSphere, Cloud WAF, Bot Protection) di seluruh lingkungan hybrid cloud.

Sebelum memulai

Pastikan Anda memenuhi prasyarat berikut:

  • Instance Google SecOps
  • Windows 2016 atau yang lebih baru, atau host Linux dengan systemd
  • Jika berjalan di belakang proxy, pastikan port firewall terbuka sesuai dengan persyaratan agen Bindplane
  • Akses istimewa ke konsol pengelolaan Imperva FlexProtect atau konsol produk individual

Mendapatkan file autentikasi penyerapan Google SecOps

  1. Login ke konsol Google SecOps.
  2. Buka Setelan SIEM > Agen Pengumpulan.
  3. Download File Autentikasi Penyerapan. Simpan file dengan aman di sistem tempat BindPlane akan diinstal.

Mendapatkan ID pelanggan Google SecOps

  1. Login ke konsol Google SecOps.
  2. Buka Setelan SIEM > Profil.
  3. Salin dan simpan ID Pelanggan dari bagian Detail Organisasi.

Menginstal agen Bindplane

Penginstalan Windows

  1. Buka Command Prompt atau PowerShell sebagai administrator.
  2. Jalankan perintah berikut:

    msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
    

Penginstalan Linux

  1. Buka terminal dengan hak istimewa root atau sudo.
  2. 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

Mengonfigurasi agen BindPlane untuk menyerap Syslog dan mengirimkannya ke Google SecOps

  1. Akses file konfigurasi:

    1. Cari file config.yaml. Biasanya, file ini berada di direktori /etc/bindplane-agent/ di Linux atau di direktori penginstalan di Windows.
    2. Buka file menggunakan editor teks (misalnya, nano, vi, atau Notepad).
  2. Edit file config.yaml sebagai berikut:

    receivers:
      udplog:
        # Replace the port and IP address as required
        listen_address: "0.0.0.0:514"
    
    exporters:
      chronicle/chronicle_w_labels:
        compression: gzip
        # Adjust the path to the credentials file you downloaded in Step 1
        creds_file_path: '/path/to/ingestion-authentication-file.json'
        # Replace with your actual customer ID from Step 2
        customer_id: <CUSTOMER_ID>
        endpoint: malachiteingestion-pa.googleapis.com
        # Add optional ingestion labels for better organization
        log_type: 'IMPERVA_FLEXPROTECT'
        raw_log_field: body
        ingestion_labels:
    
    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 Dapatkan 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 penerusan Syslog di Imperva FlexProtect

Untuk Komponen SecureSphere (Lokal/Cloud)

  1. Login ke Konsol Pengelolaan Imperva SecureSphere.
  2. Buka Configuration > Action Sets.
  3. Klik Tambahkan untuk membuat Set Tindakan baru.
  4. Klik Tambahkan Tindakan, lalu berikan detail konfigurasi berikut:

    • Nama: Masukkan nama deskriptif (misalnya, Google SecOps Syslog).
    • Jenis Tindakan: Pilih Syslog.
    • Host: Masukkan alamat IP agen Bindplane.
    • Port: Masukkan nomor port agen Bindplane (default 514).
    • Protocol: Pilih UDP atau TCP.
    • Level Log Syslog: Pilih DEBUG.
    • Fasilitas Syslog: Pilih LOCAL0.
    • Format: Pilih CEF (Common Event Format).
  5. Simpan konfigurasi tindakan dan terapkan ke kebijakan keamanan yang relevan.

Untuk Komponen Cloud WAF/Incapsula

  1. Login ke Konsol Cloud Imperva.
  2. Buka Log > Penyiapan Log.
  3. Konfigurasi tujuan syslog:
    • Host: Masukkan alamat IP agen Bindplane.
    • Port: Masukkan nomor port agen Bindplane (default 514).
    • Protocol: Pilih UDP atau TCP.
    • Format: Pilih CEF.

Tabel Pemetaan UDM

Kolom Log Pemetaan UDM Logika
bertindak read_only_udm.security_result.action_details Dipetakan langsung dari kolom act.
aplikasi read_only_udm.network.application_protocol Dipetakan langsung dari kolom app.
ccode read_only_udm.principal.location.country_or_region Dipetakan langsung dari kolom ccode.
cicode read_only_udm.principal.location.city Dipetakan langsung dari kolom cicode.
cn1 read_only_udm.network.http.response_code Dipetakan langsung dari kolom cn1 setelah dikonversi menjadi bilangan bulat.
cs1 read_only_udm.additional.fields.value.string_value Dipetakan langsung dari kolom cs1.
cs2 read_only_udm.additional.fields.value.string_value Dipetakan langsung dari kolom cs2.
cs3 read_only_udm.additional.fields.value.string_value Dipetakan langsung dari kolom cs3.
cs4 read_only_udm.additional.fields.value.string_value Dipetakan langsung dari kolom cs4.
cs5 read_only_udm.additional.fields.value.string_value Dipetakan langsung dari kolom cs5.
cs6 read_only_udm.additional.fields.value.string_value Dipetakan langsung dari kolom cs6.
cs7 read_only_udm.additional.fields.value.string_value Dipetakan langsung dari kolom cs7.
cs8 read_only_udm.additional.fields.value.string_value Dipetakan langsung dari kolom cs8.
cs9 read_only_udm.additional.fields.value.string_value Dipetakan langsung dari kolom cs9.
cpt read_only_udm.principal.port Dipetakan langsung dari kolom cpt setelah dikonversi menjadi bilangan bulat.
Pelanggan read_only_udm.principal.user.user_display_name Dipetakan langsung dari kolom Customer.
deviceExternalId read_only_udm.about.asset.asset_id Nilai ini diperoleh dengan menggabungkan "Incapsula.SIEMintegration:" dengan kolom deviceExternalId.
deviceFacility read_only_udm.principal.location.city Dipetakan langsung dari kolom deviceFacility.
dproc read_only_udm.target.process.command_line Dipetakan langsung dari kolom dproc.
selesai read_only_udm.security_result.detection_fields.value Dipetakan langsung dari kolom end.
fileId read_only_udm.network.session_id Dipetakan langsung dari kolom fileId.
filePermission read_only_udm.about.resource.attribute.permissions.name Dipetakan langsung dari kolom filePermission.
di read_only_udm.network.received_bytes Dipetakan langsung dari kolom in.
qstr read_only_udm.security_result.detection_fields.value Dipetakan langsung dari kolom qstr.
permintaan read_only_udm.target.url Dipetakan langsung dari kolom request.
requestClientApplication read_only_udm.network.http.user_agent Dipetakan langsung dari kolom requestClientApplication.
requestMethod read_only_udm.network.http.method Dipetakan langsung dari kolom requestMethod.
siteid read_only_udm.security_result.detection_fields.value Dipetakan langsung dari kolom siteid.
sip read_only_udm.target.ip Dipetakan langsung dari kolom sip.
sourceServiceName read_only_udm.principal.application Dipetakan langsung dari kolom sourceServiceName.
spt read_only_udm.target.port Dipetakan langsung dari kolom spt setelah dikonversi menjadi bilangan bulat.
src read_only_udm.principal.ip Dipetakan langsung dari kolom src.
mulai read_only_udm.security_result.detection_fields.value Dipetakan langsung dari kolom start.
suid read_only_udm.principal.user.userid Dipetakan langsung dari kolom suid.
ver read_only_udm.network.tls.version Dipetakan langsung dari kolom ver.
read_only_udm.about.asset.asset_id Nilai ini diperoleh dengan menggabungkan "Incapsula.SIEMintegration:" dengan kolom deviceExternalId.
read_only_udm.additional.fields.key Nilai ditentukan oleh logika parser berdasarkan label kolom, misalnya:
- cs1Label dipetakan ke "Cap Support"
- cs2Label dipetakan ke "Javascript Support"
- cs3Label dipetakan ke "CO Support"
- cs4Label dipetakan ke "VID"
- cs5Label dipetakan ke "clappsig"
- cs6Label dipetakan ke "clapp"
- cs7Label dipetakan ke "latitude"
- cs8Label dipetakan ke "longitude"
- cs9Label dipetakan ke "Rule name"
read_only_udm.metadata.event_timestamp.nanos Dipetakan langsung dari kolom collection_time.nanos.
read_only_udm.metadata.event_timestamp.seconds Dipetakan langsung dari kolom collection_time.seconds.
read_only_udm.metadata.event_type Nilai ditentukan berdasarkan keberadaan kolom src dan sip:
- Jika keduanya ada, nilai ditetapkan ke "NETWORK_HTTP".
- Jika hanya src yang ada, nilai ditetapkan ke "USER_UNCATEGORIZED".
- Jika tidak, nilai ditetapkan ke "GENERIC_EVENT".
read_only_udm.metadata.product_event_type Nilai ini diperoleh dengan menggabungkan "[", nilai numerik dari kolom header CEF pada indeks 4, "] - ", dan deskripsi teks dari kolom header CEF pada indeks 4.
read_only_udm.metadata.product_name Nilai ditetapkan secara statis ke "SIEMintegration".
read_only_udm.metadata.product_version Nilai ditetapkan secara statis ke "1".
read_only_udm.metadata.vendor_name Nilai ditetapkan secara statis ke "Incapsula".
read_only_udm.security_result.detection_fields.key Nilai ditetapkan secara statis ke "siteid", "event_start_time", "event_end_time", atau "qstr" berdasarkan kolom terkait yang sedang diproses.
read_only_udm.security_result.severity Nilai ditetapkan secara statis ke "LOW".
read_only_udm.target.port Dipetakan langsung dari kolom spt setelah dikonversi menjadi bilangan bulat.

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