Mengumpulkan log DDI BlueCat

Didukung di:

Parser ini menangani pesan syslog berformat LEEF dan non-LEEF dari Bluecat DDI (DNS, DHCP, IPAM). Alat ini mengekstrak kolom dari berbagai jenis log (misalnya, bernama, dhcpd, audit, dan CRON) menggunakan pola grok dan logika kondisional, memetakan kolom tersebut ke UDM berdasarkan jenis log dan mengisi kolom DNS, DHCP, atau terkait pengguna sebagaimana mestinya.

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 Bluecat.

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: bluceat_ddi
            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 Syslog di Bluecat DDI

  1. Login ke Bluecat Address Manager (BAM).
  2. Dari menu konfigurasi, pilih konfigurasi.
  3. Pilih tab Server.
  4. Di bagian Servers, klik nama BDDS.
  5. Tab Details untuk server akan terbuka.
  6. Klik menu nama server.
  7. Pilih Service Configuration.
  8. Klik Service Type > Syslog (Address Manager mengkueri server dan menampilkan nilai saat ini).
  9. Di General, tetapkan nilai berikut:
    • Server Syslog: alamat IP server Syslog Anda (Bindplane).
    • Port Syslog: port server Syslog Anda (Bindplane).
    • Transpor Syslog: pilih TCP atau UDP (bergantung pada konfigurasi Bindplane Anda).
  10. Klik Tambahkan.
    • Server syslog yang baru ditambahkan akan muncul dalam daftar.
  11. Klik Perbarui.

Mengonfigurasi Setelan Syslog di BlueCat DDI

  1. Login ke BlueCat Address Manager.
  2. Buka Konfigurasi > Setelan Sistem > Logging.
  3. Di Setelan Logging, cari bagian Server Syslog.
  4. Klik Tambahkan Server Syslog.
  5. Berikan nilai yang diperlukan:
    • Nama Server: nama unik untuk server syslog (misalnya, BindplaneServer).
    • Alamat IP: alamat IP atau nama host server syslog.
    • Protocol: pilih TCP, UDP (default), atau TLS (berdasarkan konfigurasi syslog Anda).
    • Port: menentukan port untuk komunikasi syslog (default: 514 untuk UDP/TCP, 6514 untuk TLS).
  6. Konfigurasikan Tingkat Logging. Pilih tingkat yang sesuai berdasarkan kebutuhan Anda. Opsi mencakup:
    • Darurat: masalah kritis yang perlu segera ditangani
    • Pemberitahuan: pemberitahuan yang memerlukan tindakan segera
    • Kritis: kondisi kritis
    • Error: peristiwa error
    • Peringatan: peristiwa peringatan
    • Pemberitahuan: peristiwa normal, tetapi signifikan
    • Info: pesan informatif
    • Debug: informasi debug mendetail
  7. Opsional: Tambahkan fasilitas Syslog kustom untuk mengategorikan log (misalnya, local0 atau local1).
  8. Simpan konfigurasi.

Menerapkan Setelan Syslog ke Appliance DDI

  1. Buka Servers > Manage Servers.
  2. Pilih server DNS/DHCP tempat syslog harus diaktifkan.
  3. Klik Edit Server.
  4. Di bagian Logging:
    • Pilih server syslog yang Anda konfigurasi sebelumnya.
    • Aktifkan logging untuk layanan tertentu (Misalnya, kueri DNS atau lease DHCP).
    • Simpan perubahan.

Tabel Pemetaan UDM

Kolom log Pemetaan UDM Logika
client_ip network.dhcp.ciaddr Diekstrak dari pesan DHCPREQUEST. Hanya diisi untuk pesan DHCPREQUEST.
client_mac principal.mac Diekstrak dari pesan DHCP (DHCPDISCOVER, DHCPREQUEST, DHCPRELEASE).
client_mac target.mac Diekstrak dari pesan DHCP (DHCPOFFER, DHCPNAK).
client_mac network.dhcp.chaddr Diekstrak dari pesan DHCP (DHCPREQUEST, DHCPOFFER, DHCPACK, DHCPNAK, DHCPRELEASE).
cmd target.process.command_line Diekstrak dari log CRON. Tanda & dan spasi dihapus.
description metadata.description Diekstrak dari berbagai jenis log, yang memberikan konteks tambahan.
description metadata.description Diekstrak dari log syslog-ng, yang memberikan konteks tambahan.
file_path target.file.full_path Diekstrak dari berbagai jenis log, yang mewakili jalur lengkap ke file.
file_path target.process.file.full_path Diekstrak dari log agetty, yang mewakili jalur lengkap ke file yang terkait dengan proses.
inner_message metadata.description Digunakan sebagai deskripsi untuk GENERIC_EVENT saat jenis operasi tidak ditentukan dan untuk log MEM-MON.
metadata.event_type Ditentukan oleh parser berdasarkan jenis dan konten log. Nilai yang memungkinkan mencakup: NETWORK_DNS, NETWORK_DHCP, USER_LOGIN, USER_LOGOUT, USER_UNCATEGORIZED, GENERIC_EVENT, STATUS_UPDATE, NETWORK_CONNECTION. Selalu "BLUECAT_DDI".
metadata.vendor_name Selalu "Bluecat Networks".
metadata.product_name Selalu "Bluecat DDI".
metadata.event_timestamp Disalin dari stempel waktu yang diuraikan dari entri log.
network.protocol Tetapkan ke "DNS" untuk log DNS, "DHCP" untuk log DHCP.
network.dns.answers Array yang berisi data jawaban. Kolom data dalam answers diisi dengan target_ip jika ada.
network.dns.questions Array yang berisi kumpulan data pertanyaan. Kolom name diisi dengan target_host, kolom type berasal dari kolom query_type atau question_type, dan kolom class berasal dari kolom qclass.
network.dns.recursive Tetapkan ke "true" jika rec_flag adalah "+".
qclass network.dns.questions.class Diekstrak dari log kueri DNS dan dipetakan ke nilai bilangan bulat menggunakan file dns_query_class_mapping.include.
query_type network.dns.questions.type Diekstrak dari log kueri DNS dan dipetakan ke nilai bilangan bulat menggunakan file dhcp_qtype_mapping.include.
relay_ip intermediary.ip Diekstrak dari log DNS dan DHCP, yang mewakili alamat IP server perantara atau relay.
server_host target.hostname Diekstrak dari berbagai jenis log, yang mewakili nama host server.
server_host network.dhcp.sname Diekstrak dari log DHCP, yang mewakili nama host server.
server_host principal.hostname Diekstrak dari systemd, agetty, dan beberapa log audit, yang mewakili nama host akun utama.
server_ip target.ip Diekstrak dari log berformat LEEF, yang mewakili alamat IP server.
src_ip principal.ip Diekstrak dari berbagai jenis log, yang mewakili alamat IP sumber.
src_ip network.dhcp.yiaddr Digunakan dalam pesan DHCPINFORM untuk mengisi kolom yiaddr.
src_port principal.port Diekstrak dari berbagai jenis log, yang mewakili port sumber.
src_user principal.user.userid Diekstrak dari CRON dan log audit, yang mewakili ID pengguna.
target_host target.hostname Diekstrak dari berbagai jenis log, yang mewakili nama host target.
target_host network.dns.questions.name Digunakan dalam log DNS untuk mengisi nama pertanyaan.
target_ip target.ip Diekstrak dari berbagai jenis log, yang mewakili alamat IP target.
target_ip network.dhcp.ciaddr Digunakan dalam pesan BOOTREQUEST untuk mengisi kolom ciaddr.
target_ip network.dns.answers.data Digunakan dalam log DNS untuk mengisi data jawaban.
tgt_port target.port Diekstrak dari log syslog-ng, yang mewakili port target.

Perubahan

2022-11-08

  • Menambahkan grok untuk log yang baru ditransfer untuk log_type - "agetty", "syslog-ng", "systemd".
  • Menambahkan pola grok untuk log_type - "named", "systemd", "CRON", "agetty", "syslog-ng" dan pemetaan masing-masing untuk kolom dalam log_type yang disebutkan di atas.

2022-09-01

  • Mengubah event_type dari "GENERIC_EVENT" menjadi "USER_UNCATEGORIZED" untuk mengurangi persentase umum.

2022-08-16

  • Menambahkan pemetaan UDM
  • metadata.vendor_name ke "Bluecat Networks"
  • metadata.product_name ke "Bluecat DDI"

2022-05-05

  • Menambahkan pemeriksaan untuk kolom query_type.