Mengumpulkan log Brocade ServerIron

Didukung di:

Parser ini mengekstrak kolom dari pesan syslog Brocade ServerIron menggunakan pencocokan ekspresi reguler dan memetakan kolom tersebut ke Unified Data Model (UDM). Log ini menangani berbagai format log, termasuk status jaringan, autentikasi pengguna, dan peristiwa keamanan. Parser melakukan konversi dan pengayaan jenis data jika diperlukan.

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 Anda memiliki akses dengan hak istimewa ke instance Brocade ServerIron.

Mendapatkan file autentikasi penyerapan Google SecOps

  1. Login ke konsol Google SecOps.
  2. Buka Setelan SIEM > Agen Pengumpulan.
  3. Download File Autentikasi Proses Transfer.

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

  1. Untuk penginstalan Windows, jalankan skrip berikut:
    msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
  2. Untuk penginstalan Linux, jalankan skrip berikut:
    sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
  3. Opsi penginstalan tambahan dapat ditemukan di panduan penginstalan ini.

Mengonfigurasi Agen Bindplane untuk menyerap Syslog dan mengirimnya ke Google SecOps

  1. Akses komputer tempat Bindplane diinstal.
  2. Edit file config.yaml sebagai berikut:

    receivers:
        tcplog:
            # Replace the below port <54525> and IP <0.0.0.0> with your specific values
            listen_address: "0.0.0.0:54525" 
    
    exporters:
        chronicle/chronicle_w_labels:
            compression: gzip
            # Adjust the creds location below according the placement of the credentials file you downloaded
            creds: '{ json file for creds }'
            # Replace <customer_id> below with your actual ID that you copied
            customer_id: <customer_id>
            endpoint: malachiteingestion-pa.googleapis.com
            # You can apply ingestion labels below as preferred
            ingestion_labels:
            log_type: SYSLOG
            namespace: Brocade_ServerIron
            raw_log_field: body
    service:
        pipelines:
            logs/source0__chronicle_w_labels-0:
                receivers:
                    - tcplog
                exporters:
                    - chronicle/chronicle_w_labels
    
  3. Mulai ulang Agen Bindplane untuk menerapkan perubahan:

    sudo systemctl restart bindplane
    

Mengonfigurasi Ekspor Syslog dari Brocade ServerIron ADX

  1. Login ke perangkat ADX dan masuk ke mode konfigurasi global:

    enable
    configure terminal
    
  2. Mengaktifkan Logging Syslog:

    logging on
    
  3. Tentukan alamat IP atau nama host dan port server syslog, termasuk protokol yang diinginkan (Bindplane):

    logging host <syslog-server-ip> [udp | tcp] port <port-number>
    

    Contoh untuk TCP di port 54525:

      logging host 10.10.10.10 tcp port 54525
    
  4. Opsional: tetapkan Syslog Facility (local0 hingga local7):

    logging facility local0
    
  5. Tentukan tingkat keparahan minimum log yang akan dikirim ke server syslog:

    logging trap <severity-level>
    
  6. Simpan konfigurasi:

    write memory
    

Tabel Pemetaan UDM

Kolom Log Pemetaan UDM Logika
%{GREEDYDATA} metadata.description Kolom %{GREEDYDATA} dipetakan ke metadata.description jika cocok dengan pola "-- %{GREEDYDATA} --".
%{GREEDYDATA:auth_result} security_result.description Kolom %{GREEDYDATA:auth_result} digabungkan dengan kolom %{GREEDYDATA:desc} untuk membentuk security_result.description jika %{GREEDYDATA:desc} ada.
%{GREEDYDATA:desc} security_result.description Kolom %{GREEDYDATA:desc} digunakan untuk mengisi kolom security_result.description. Kolom ini dapat digabungkan dengan kolom lain, bergantung pada format log mentah.
%{GREEDYDATA:login_to} security_result.description Kolom %{GREEDYDATA:login_to} digabungkan dengan kolom %{GREEDYDATA:desc} untuk membentuk security_result.description jika %{GREEDYDATA:desc} ada.
%{GREEDYDATA:user} target.user.userid Kolom %{GREEDYDATA:user} dipetakan ke target.user.userid.
%{HOST:principal_host} principal.hostname Kolom %{HOST:principal_host} dipetakan ke principal.hostname.
%{HOST:target_host} target.hostname Kolom %{HOST:target_host} dipetakan ke target.hostname.
%{INT:http_port} additional.fields.value.string_value Kolom %{INT:http_port} dipetakan ke additional.fields.value.string_value dengan kunci "HTTP Port".
%{INT:target_port} target.port Kolom %{INT:target_port} dipetakan ke target.port dan dikonversi menjadi bilangan bulat.
%{INT:telnet_port} additional.fields.value.string_value Kolom %{INT:telnet_port} dipetakan ke additional.fields.value.string_value dengan kunci "Telnet Port".
%{INT:tftp_port} additional.fields.value.string_value Kolom %{INT:tftp_port} dipetakan ke additional.fields.value.string_value dengan kunci "TFTP Port".
%{IP:principal_ip} principal.ip Kolom %{IP:principal_ip} dipetakan ke principal.ip.
%{IP:target_ip} target.ip Kolom %{IP:target_ip} dipetakan ke target.ip.
%{IPV4:principal_ip} principal.ip Kolom %{IPV4:principal_ip} dipetakan ke principal.ip.
%{IPV4:target_ip} target.ip Kolom %{IPV4:target_ip} dipetakan ke target.ip.
%{MAC:principal_mac} principal.mac Kolom %{MAC:principal_mac} dipetakan ke principal.mac setelah dikonversi ke format [0-9a-f]{2}:[0-9a-f]{2}:[0-9a-f]{2}:[0-9a-f]{2}:[0-9a-f]{2}:[0-9a-f]{2}.
%{USERNAME:target_host} target.hostname Kolom %{USERNAME:target_host} dipetakan ke target.hostname.
%{USERNAME:user} target.user.userid Kolom %{USERNAME:user} dipetakan ke target.user.userid.
%{WORD:auth_result} security_result.description Kolom %{WORD:auth_result} digabungkan dengan kolom %{GREEDYDATA:desc} untuk membentuk security_result.description jika %{GREEDYDATA:desc} ada.
%{WORD:proto} network.application_protocol Kolom %{WORD:proto} dipetakan ke network.application_protocol jika nilainya adalah 'SSH'.
timestamp metadata.event_timestamp Kolom stempel waktu diuraikan dari data log mentah menggunakan pola grok dan dikonversi menjadi objek stempel waktu.
extensions.auth.type Nilai ditetapkan ke "MACHINE" jika kolom proto tidak kosong dan kolom auth_action adalah "logout" atau "login".
metadata.description Kolom diisi dengan nilai kolom "metadata_description" jika tidak kosong.
metadata.event_type Kolom diisi berdasarkan nilai kolom lain menggunakan logika kondisional:
- STATUS_STARTUP: jika target_port_status adalah "up".
- STATUS_SHUTDOWN: jika target_port_status adalah "down".
- USER_LOGOUT: jika proto tidak kosong dan auth_action adalah "logout".
- USER_LOGIN: jika proto tidak kosong dan auth_action adalah "login".
- STATUS_UPDATE: jika metadata_description cocok dengan "status diubah".
- GENERIC_EVENT: jika tidak ada kondisi di atas yang terpenuhi.
metadata.log_type Nilai di-hardcode menjadi "BROCADE_SERVERIRON".
metadata.product_name Nilai di-hardcode menjadi "ServerIron".
metadata.vendor_name Nilai di-hardcode ke "Brocade".
security_result.action Nilai ditetapkan ke "BLOCK" jika kolom desc berisi "fail", atau kolom auth_result berisi "fail" atau "rejected".

Perubahan

2022-01-13

  • Parser yang baru ditambahkan.

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