Mengumpulkan log tombol Brocade

Didukung di:

Parser ini mengekstrak kolom dari log tombol Brocade menggunakan pola grok yang cocok dengan berbagai format log. Kemudian, alat ini memetakan kolom yang diekstrak ini ke kolom UDM, menangani struktur log yang berbeda, dan memperkaya data dengan metadata seperti informasi vendor dan produk. Parser juga melakukan transformasi data, seperti mengonversi tingkat keparahan dan menangani pesan berulang, sebelum menghasilkan output UDM akhir.

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 Admin CLI ke Switch Brocade.

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 mengirim 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_Switch
            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 Switch Brocade

  1. Hubungkan ke tombol Brocade menggunakan SSH atau Telnet dengan kredensial yang sesuai.
  2. Jalankan perintah berikut untuk menentukan alamat IP atau nama host dan Port server syslog (Bindplane):

    syslogadmin --set -ip <IP> -port <Port>
    

    Contoh:

    syslogadmin --set -ip 10.10.10.10 -port 54525
    
  3. Jalankan perintah berikut untuk menampilkan server syslog yang dikonfigurasi:

    syslogadmin --show -ip
    

Tabel Pemetaan UDM

Kolom Log Pemetaan UDM Logika
application additional.fields[].key: "application"
additional.fields[].value.string_value:
Nilai yang diekstrak dari kolom application@1588 dalam log mentah jika kolom KV_DATA ada.
class additional.fields[].key: "class"
additional.fields[].value.string_value:
Nilai yang diekstrak dari kolom class@1588 dalam log mentah jika kolom KV_DATA ada.
domain principal.administrative_domain Nilai yang diekstrak dari pola grok yang cocok dengan kolom domain.
Event additional.fields[].key: "event_category"
additional.fields[].value.string_value:
Nilai yang diekstrak dari kolom arg0@1588 dalam log mentah jika kolom KV_DATA ada.
event_id metadata.product_log_id Nilai yang diekstrak dari pola grok yang cocok dengan kolom event_id.
event_type metadata.product_event_type Nilai yang diekstrak dari pola grok yang cocok dengan kolom event_type.
flags additional.fields[].key: "flags"
additional.fields[].value.string_value:
Nilai yang diekstrak dari pola grok yang cocok dengan kolom flags.
Info metadata.description Nilai yang diekstrak dari kolom Info, diuraikan menggunakan grok.
interface app_protocol_src Nilai yang diekstrak dari kolom interface@1588 dalam log mentah jika kolom KV_DATA ada. Digunakan untuk mendapatkan network.application_protocol.
ip principal.ip Nilai yang diekstrak dari kolom ip, diuraikan menggunakan grok. Digabung ke principal.ip jika tidak sama dengan IP yang diekstrak dari kolom Info.
Info, IP Addr principal.ip Nilai yang diekstrak dari kolom IP Addr dalam kolom Info, diuraikan menggunakan grok.
log additional.fields[].key: "log"
additional.fields[].value.string_value:
Nilai yang diekstrak dari kolom log@1588 dalam log mentah jika kolom KV_DATA ada.
msg metadata.description Nilai yang diekstrak dari kolom msg, diuraikan menggunakan grok.
msgid additional.fields[].key: "msgid"
additional.fields[].value.string_value:
Nilai yang diekstrak dari kolom msgid@1588 dalam log mentah jika kolom KV_DATA ada.
prin_host principal.hostname
principal.asset.hostname
Nilai yang diekstrak dari pola grok yang cocok dengan kolom prin_host.
product_version metadata.product_version Nilai yang diekstrak dari pola grok yang cocok dengan kolom product_version.
repeat_count additional.fields[].key: "repeat_count"
additional.fields[].value.string_value:
Nilai yang diekstrak dari kolom msg, diuraikan menggunakan grok.
role, user_role principal.user.attribute.roles[].name Nilai yang diekstrak dari kolom role@1588 atau user_role. Jika nilainya "admin", nilai tersebut akan diganti dengan "Admin".
sequence_number additional.fields[].key: "sequence_number"
additional.fields[].value.string_value:
Nilai yang diekstrak dari pola grok yang cocok dengan kolom sequence_number.
severity security_result.severity Nilai yang diekstrak dari kolom severity, diuraikan menggunakan grok. Dipetakan ke nilai keparahan UDM (INFORMATIONAL, ERROR, CRITICAL, MEDIUM).
Status security_result.summary Nilai yang diekstrak dari kolom Status.
switch_name additional.fields[].key: "switch_name"
additional.fields[].value.string_value:
Nilai yang diekstrak dari pola grok yang cocok dengan kolom switch_name.
target_application target.application Nilai yang diekstrak dari pola grok yang cocok dengan kolom target_application.
time additional.fields[].key: "time"
additional.fields[].value.string_value:
Nilai yang diekstrak dari kolom time dalam kolom kv_data3.
timestamp metadata.event_timestamp.seconds Nilai yang diekstrak dari kolom timestamp, diuraikan menggunakan filter tanggal.
user principal.user.userid
principal.user.user_display_name
Nilai yang diekstrak dari kolom user atau user@1588, diuraikan menggunakan grok. Disalin dari principal.hostname. Disalin dari principal.ip. Disalin dari metadata.product_event_type atau ditetapkan ke "STATUS_UPDATE" berdasarkan kondisi. Disalin dari create_time.nanos log. Ditentukan oleh logika parser berdasarkan nilai has_principal, has_target, has_userid, dan event_type. Dapat berupa "SYSTEM_AUDIT_LOG_UNCATEGORIZED", "STATUS_UPDATE", atau "GENERIC_EVENT". Di-hardcode ke "BROCADE_SWITCH". Di-hardcode ke "BROCADE". Di-hardcode ke "BROCADE_SWITCH". Berasal dari kolom interface atau ditetapkan ke "SSH" jika kolom interface berisi "SSH".

Perubahan

2024-04-15

  • Menambahkan dukungan untuk log khusus pelanggan.

2023-12-01

  • Parser yang baru dibuat.