Mengumpulkan log DHCP Sophos
Dokumen ini menjelaskan cara menyerap log Sophos Dynamic Host Configuration Protocol (DHCP) ke Google Security Operations menggunakan BindPlane. Parser terlebih dahulu menormalisasi pesan syslog DHCP Sophos ke dalam struktur key-value, lalu memetakan kolom yang diekstrak ke skema Model Data Terpadu (UDM). Library ini menangani berbagai jenis pesan DHCP (DHCPREQUEST, DHCPACK, DHCPOFFER, DHCPNAK) dan mengekstrak informasi yang relevan seperti alamat IP, alamat MAC, dan opsi DHCP.
Sebelum memulai
Pastikan Anda memenuhi prasyarat berikut:
- Instance Google SecOps.
- Host Windows 2016 atau yang lebih baru, atau Linux dengan
systemd
. - Jika berjalan di belakang proxy, pastikan port firewall terbuka sesuai dengan persyaratan agen BindPlane.
- Akses istimewa ke konsol pengelolaan Sophos UTM atau konsol Admin Web Sophos Firewall (SFOS).
Mendapatkan file autentikasi penyerapan Google SecOps
- Login ke konsol Google SecOps.
- Buka Setelan SIEM > Agen Pengumpulan.
- Download File Autentikasi Penyerapan.
- Simpan file dengan aman di sistem tempat 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
Instal agen Bindplane di sistem operasi Windows atau Linux Anda sesuai dengan petunjuk berikut.
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.
Mengonfigurasi agen BindPlane untuk menyerap Syslog dan mengirimkannya 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 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: 'SOPHOS_DHCP' 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 observiq-otel-collector
Untuk memulai ulang agen BindPlane di Windows, Anda dapat menggunakan konsol Services atau memasukkan perintah berikut:
sc stop observiq-otel-collector && sc start observiq-otel-collector
Opsi 2: Mengonfigurasi penerusan Syslog di Sophos Firewall
- Login ke Konsol Admin Web Sophos Firewall.
- Buka Konfigurasi > Layanan sistem > Setelan log.
- Klik Tambahkan untuk mengonfigurasi server syslog.
- Berikan detail konfigurasi berikut:
- Name: Masukkan nama unik untuk pengumpul Google SecOps (misalnya,
Google SecOps BindPlane DHCP
). - Alamat IP/Domain: Masukkan alamat IP BindPlane.
- Port: Masukkan nomor port BindPlane (misalnya,
514
). - Fasilitas: Pilih DAEMON.
- Tingkat keparahan: Pilih Informasi.
- Format: Pilih Format standar perangkat.
- Name: Masukkan nama unik untuk pengumpul Google SecOps (misalnya,
- Klik Simpan.
- Kembali ke halaman Setelan Log dan pilih jenis log tertentu yang akan diteruskan ke server syslog.
- Pilih kategori log yang sesuai yang mencakup peristiwa DHCP. Log DHCP dihasilkan oleh layanan dhcpd dan merupakan bagian dari log jaringan atau sistem yang akan diteruskan jika kategori log yang sesuai diaktifkan.
- Klik Terapkan untuk menyimpan konfigurasi.
Opsi 1: Mengonfigurasi penerusan Syslog di Sophos UTM
- Login ke Konsol Pengelolaan Sophos UTM.
- Buka Logging & Reporting > Log Settings > Remote Syslog Server.
- Klik tombol aktif/nonaktif untuk mengaktifkan Syslog jarak jauh. Area Setelan Syslog Jarak Jauh dapat diedit.
- Di kolom Syslog servers, klik + Add syslog server.
- Dalam dialog Tambahkan server syslog, berikan detail konfigurasi berikut:
- Nama: Masukkan nama deskriptif (misalnya,
Google SecOps BindPlane DHCP
). - Server: Klik ikon + (plus) di samping kolom Server. Buat atau pilih Host dari Network Definitions dengan alamat IP BindPlane Agent, lalu klik Save.
- Port: Klik ikon + (plus) di samping kolom Port. Buat atau pilih Service Definition dengan protokol dan port yang sesuai (misalnya, UDP/514), lalu klik Save.
- Nama: Masukkan nama deskriptif (misalnya,
- Klik Simpan di dialog Tambahkan Server Syslog.
- Klik Terapkan di bagian Setelan Syslog Jarak Jauh.
- Opsional: Sesuaikan setelan Remote Syslog Buffer (defaultnya adalah 1000 baris), lalu klik Terapkan.
- Di bagian Remote Syslog Log Selection, pilih DHCP Server dan kategori log yang diperlukan.
- Klik Terapkan untuk menyimpan setelan pemilihan log.
Tabel pemetaan UDM
Kolom log | Pemetaan UDM | Logika |
---|---|---|
tindakan | event.idm.read_only_udm.security_result.action_details | |
attr_address | event.idm.read_only_udm.target.ip | |
attr_addresses | event.idm.read_only_udm.target.ip | |
call | event.idm.read_only_udm.security_result.summary | |
klien | event.idm.read_only_udm.principal.hostname | |
klien | event1.idm.read_only_udm.principal.hostname | |
data | ||
dstip | event.idm.read_only_udm.target.ip | |
dstmac | event.idm.read_only_udm.target.mac | |
dstport | event.idm.read_only_udm.target.port | |
fwrule | event.idm.read_only_udm.security_result.rule_id | |
id | event.idm.read_only_udm.metadata.product_event_type | Digabungkan dengan ulogd - |
id | event1.idm.read_only_udm.metadata.product_event_type | Digabungkan dengan ID - |
info | event.idm.read_only_udm.security_result.description | |
initf | event.idm.read_only_udm.security_result.about.labels.value | Kunci di-hardcode ke In Interface |
msg | event.idm.read_only_udm.metadata.description | Jika process_type bukan confd atau ulogd |
nama | event.idm.read_only_udm.security_result.description | |
objname | event.idm.read_only_udm.principal.resource.name | |
oldattr_address | event.idm.read_only_udm.principal.ip | |
oldattr_addresses | event.idm.read_only_udm.principal.ip | |
outitf | event.idm.read_only_udm.security_result.about.labels.value | Kunci di-hardcode ke Out Interface |
pid | event.idm.read_only_udm.principal.process.pid | |
proto | event.idm.read_only_udm.network.ip_protocol | |
tingkat keseriusan, | event.idm.read_only_udm.security_result.severity | Jika tingkat keparahan adalah info atau debug , maka security_result.severity adalah INFORMATIONAL . Jika tingkat keparahan adalah warn , maka security_result.severity adalah MEDIUM |
tingkat keseriusan, | event1.idm.read_only_udm.security_result.severity | Jika tingkat keparahan adalah info atau debug , maka security_result.severity adalah INFORMATIONAL . Jika tingkat keparahan adalah warn , maka security_result.severity adalah MEDIUM |
sid | event.idm.read_only_udm.security_result.about.labels.value | Kunci di-hardcode ke sid |
src_host | event.idm.read_only_udm.principal.hostname | Jika process_type adalah dhcpd dan dhcp_type adalah DHCPREQUEST atau DHCPACK atau DHCPOFFER |
src_host | event.idm.read_only_udm.observer.hostname | Jika process_type adalah dhcpd dan dhcp_type adalah DHCPREQUEST |
src_host | event.idm.read_only_udm.network.dhcp.client_hostname | Jika process_type adalah dhcpd dan dhcp_type adalah DHCPACK atau DHCPOFFER |
src_ip | event.idm.read_only_udm.network.dhcp.ciaddr | Jika process_type adalah dhcpd dan dhcp_type adalah DHCPREQUEST |
src_ip | event.idm.read_only_udm.network.dhcp.yiaddr | Jika process_type adalah dhcpd dan dhcp_type adalah DHCPACK atau DHCPOFFER atau DHCPNAK |
src_ip | event.idm.read_only_udm.principal.ip | Jika process_type adalah dhcpd dan dhcp_type adalah DHCPREQUEST atau DHCPACK atau DHCPOFFER atau DHCPNAK |
src_ip | event.idm.read_only_udm.observer.ip | Jika process_type adalah dhcpd dan dhcp_type adalah DHCPREQUEST atau DHCPACK atau DHCPOFFER |
src_mac | event.idm.read_only_udm.network.dhcp.chaddr | Jika process_type adalah dhcpd dan dhcp_type adalah DHCPREQUEST atau DHCPACK atau DHCPOFFER atau DHCPNAK |
src_mac | event.idm.read_only_udm.principal.mac | Jika process_type adalah dhcpd dan dhcp_type adalah DHCPREQUEST atau DHCPACK atau DHCPOFFER atau DHCPNAK |
srcip | event.idm.read_only_udm.principal.ip | |
srcip | event1.idm.read_only_udm.principal.ip | |
srcmac | event.idm.read_only_udm.principal.mac | |
srcport | event.idm.read_only_udm.principal.port | |
sub | event.idm.read_only_udm.metadata.description | |
sub | event1.idm.read_only_udm.metadata.description | |
tcpflags | event.idm.read_only_udm.security_result.about.labels.value | Kunci di-hardcode ke TCP Flags |
pengguna | event.idm.read_only_udm.principal.user.userid | |
pengguna | event1.idm.read_only_udm.principal.user.userid | |
event.idm.read_only_udm.metadata.event_type | GENERIC_EVENT jika tidak ada event_type lain yang ditetapkan. NETWORK_CONNECTION jika srcip dan dstip tidak kosong. RESOURCE_WRITTEN jika nama adalah object changed . NETWORK_DHCP jika process_type adalah dhcpd |
|
event.idm.read_only_udm.metadata.log_type | Hardcode ke SOPHOS_DHCP |
|
event.idm.read_only_udm.metadata.product_name | Hardcode ke SOPHOS_DHCP |
|
event.idm.read_only_udm.metadata.vendor_name | Hardcode ke SOPHOS |
|
event.idm.read_only_udm.network.application_protocol | Dikodekan secara permanen ke DHCP jika process_type adalah dhcpd |
|
event.idm.read_only_udm.network.dhcp.opcode | Dikodekan secara permanen ke BOOTREQUEST jika process_type adalah dhcpd dan dhcp_type adalah DHCPREQUEST . Dikodekan secara permanen ke BOOTREPLY jika process_type adalah dhcpd dan dhcp_type adalah DHCPACK atau DHCPOFFER atau DHCPNAK |
|
event.idm.read_only_udm.network.dhcp.type | REQUEST saat process_type adalah dhcpd dan dhcp_type adalah DHCPREQUEST . ACK saat process_type adalah dhcpd dan dhcp_type adalah DHCPACK . OFFER saat process_type adalah dhcpd dan dhcp_type adalah DHCPOFFER . NAK saat process_type adalah dhcpd dan dhcp_type adalah DHCPNAK |
|
event1.idm.read_only_udm.metadata.event_type | Hardcode ke GENERIC_EVENT |
|
event1.idm.read_only_udm.metadata.log_type | Hardcode ke SOPHOS_DHCP |
|
event1.idm.read_only_udm.metadata.product_name | Hardcode ke SOPHOS_DHCP |
|
event1.idm.read_only_udm.metadata.vendor_name | Hardcode ke SOPHOS |
Perlu bantuan lain? Dapatkan jawaban dari anggota Komunitas dan profesional Google SecOps.