Mengumpulkan log Sophos Endpoint
Dokumen ini menjelaskan cara mengumpulkan log Sophos Endpoint (sebelumnya Sophos AV/Intercept X) menggunakan agen Bindplane. Parser mengubah log JSON menjadi model data terpadu (UDM). Alat ini mengekstrak kolom dari struktur JSON bertingkat, memetakannya ke kolom UDM, dan melakukan kategorisasi peristiwa berdasarkan kolom jenis, yang memperkaya data dengan detail dan tindakan spesifik untuk berbagai jenis peristiwa Sophos AV.
Sebelum memulai
Pastikan Anda memiliki prasyarat berikut:
- Instance Google SecOps
- Windows 2016 atau yang lebih baru, atau host Linux dengan
systemd - Komputer Windows atau Linux tambahan, yang dapat menjalankan Python secara terus-menerus
- Jika beroperasi dari balik proxy, pastikan port firewall terbuka sesuai dengan persyaratan agen Bindplane
- Akses istimewa ke konsol Admin Sophos Central
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 ini.
Mengonfigurasi Agen BindPlane untuk menyerap Syslog dan mengirimkannya ke Google SecOps
- Akses File Konfigurasi:
- Temukan 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).
- Temukan file
Edit file
config.yamlsebagai 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_AV' raw_log_field: body ingestion_labels: service: pipelines: logs/source0__chronicle_w_labels-0: receivers: - udplog exporters: - chronicle/chronicle_w_labelsGanti port dan alamat IP sesuai kebutuhan di infrastruktur Anda.
Ganti
<customer_id>dengan ID Pelanggan yang sebenarnya.Ganti
/path/to/ingestion-authentication-file.jsondengan jalur file tempat file autentikasi disimpan di Langkah 1.
Mulai ulang Bindplane Agent untuk menerapkan perubahan
Untuk memulai ulang agen Bindplane di Linux, jalankan perintah berikut:
sudo systemctl restart bindplane-agentUntuk memulai ulang agen Bindplane di Windows, Anda dapat menggunakan konsol Services atau memasukkan perintah berikut:
net stop BindPlaneAgent && net start BindPlaneAgent
Mengonfigurasi akses Sophos Central API
- Login ke Sophos Central Admin.
- Pilih Global Settings > API Token Management.
- Klik Add Token untuk membuat token baru.
- Masukkan nama token, lalu klik Simpan. Ringkasan Token API untuk token yang diberikan akan ditampilkan.
- Di bagian API Token Summary, klik Copy untuk menyalin URL dan header akses API.
Instal Python di mesin tambahan
- Buka browser web, lalu buka situs Python.
- Klik Download Python untuk sistem operasi Anda (Windows atau Mac).
Instal Python.
- Di Windows:
- Jalankan penginstal.
- Centang kotak yang bertuliskan Add Python to PATH.
- Klik Instal Sekarang.
Di Mac:
- Python mungkin sudah diinstal, jika belum, Anda dapat menginstal versi terbaru menggunakan terminal.
- Buka Terminal dan ketik perintah berikut:
python --version
- Di Windows:
Download skrip integrasi Sophos
- Buka halaman GitHub untuk Sophos Central SIEM Integration GitHub Repository.
- Klik tombol Code berwarna hijau > Download ZIP.
- Ekstrak file ZIP.
Menyiapkan konfigurasi skrip
- Temukan dan buka file
config.inidengan editor teks. - Edit file konfigurasi:
- Token API: Masukkan Kunci API yang disalin sebelumnya dari Sophos Central.
- Detail Server Syslog: Masukkan detail server syslog Anda.
- Host: Masukkan alamat IP Bindplane.
- Port: Masukkan nomor port Bindplane.
- Protocol: Masukkan UDP (Anda juga dapat menggunakan TCP atau TLS, bergantung pada penyiapan Anda).
- Simpan file.
Jalankan skrip:
Buka folder skrip.
Di Windows:
- Tekan tombol Windows, lalu ketik
cmd. - Klik Command Prompt.
- Buka folder skrip:
cd C:UsersYourNameDownloadsSophos-Central-SIEM-Integration- Tekan tombol Windows, lalu ketik
Di macOS:
- Buka Applications > Utilities.
- Buka Terminal.
- Buka folder skrip:
cd /Users/YourName/Downloads/Sophos-Central-SIEM-Integration
Jalankan skrip:
Ketik perintah berikut untuk memulai skrip:
python siem.py
Mengotomatiskan skrip agar berjalan terus-menerus di Windows (menggunakan Task Scheduler):
- Buka Task Scheduler dengan mengetik Task Scheduler di menu Start.
- Klik Create Task.
- Di tab General:
- Beri nama tugas Anda; misalnya,
Sophos AV Log Export.
- Beri nama tugas Anda; misalnya,
- Di tab Triggers:
- Klik Baru dan tetapkan tugas untuk dijalankan Setiap hari atau Saat startup (bergantung pada preferensi Anda).
- Di tab Tindakan:
- Klik Baru, lalu pilih Mulai program.
- Jelajahi file yang dapat dieksekusi
python.exe(biasanya ditemukan diC:PythonXXpython.exe). - Di kolom Add arguments, ketik jalur ke skrip; misalnya,
C:UsersYourNameDownloadsSophos-Central-SIEM-Integrationsiem.py.
- Klik OK untuk menyimpan tugas.
Mengotomatiskan skrip agar berjalan terus-menerus di Mac (menggunakan Cron Jobs):
- Buka Terminal.
- Ketik
crontab -e, lalu tekanEnter. Tambahkan baris baru di akhir file:
* * * * * /usr/bin/python /Users/YourName/Downloads/Sophos-Central-SIEM-Integration/siem.pySimpan dan keluar dari editor.
Tabel Pemetaan UDM
| Kolom Log | Pemetaan UDM | Logika |
|---|---|---|
s_ip |
intermediary.ip |
Digabung |
description |
metadata.description |
Dipetakan secara langsung |
name |
metadata.description |
Dipetakan secara langsung |
security_result.description |
metadata.description |
Diganti nama/dipetakan |
end |
metadata.event_timestamp |
Diurai sebagai RFC 3339 |
ts |
metadata.event_timestamp |
Diurai sebagai RFC 3339 |
action |
metadata.event_type |
Dipetakan: unknown → NETWORK_CONNECTION, allowed → SCAN_PROCESS, blocked → `SCAN_PROC... |
e_type |
metadata.event_type |
Nilai yang dipetakan (total 11, misalnya NonCompliant → SCAN_HOST, SavDisabled → `SETTING_MODIFIC... |
type |
metadata.event_type |
Nilai yang dipetakan (total 13, misalnya Event::Endpoint::NonCompliant → SCAN_HOST, `Event::Endpoin... |
e_type |
metadata.product_event_type |
Dipetakan secara langsung |
type |
metadata.product_event_type |
Dipetakan secara langsung |
action |
network.direction |
Dipetakan: warned → OUTBOUND, unknown → OUTBOUND |
e_type |
network.direction |
Dipetakan: WindowsFirewall::Blocked → OUTBOUND |
type |
network.direction |
Dipetakan: Event::Endpoint::WindowsFirewall::Blocked → OUTBOUND |
action |
network.ip_protocol |
Dipetakan: warned → TCP, unknown → TCP |
appSha256 |
principal.file.sha256 |
Dipetakan secara langsung |
dhost |
principal.hostname |
Dipetakan secara langsung |
host |
principal.hostname |
Dipetakan secara langsung |
source_info.ip |
principal.ip |
Digabung |
src_ip |
principal.ip |
Digabung |
id |
principal.resource.id |
Dipetakan secara langsung |
suser |
principal.user.user_display_name |
Dipetakan secara langsung |
suser |
principal.user.userid |
Dipetakan secara langsung |
user |
principal.user.userid |
Dipetakan secara langsung |
user_id |
principal.user.userid |
Dipetakan secara langsung |
endpoint_id_label |
security_result.about.labels |
Digabung |
endpoint_type_label |
security_result.about.labels |
Digabung |
action |
security_result.action |
Nilai yang dipetakan (total 5, misalnya allow → sec_action, unknown → sec_action, allowed → `... |
sec_action |
security_result.action |
Digabung |
group |
security_result.category_details |
Digabung |
sub_cat |
security_result.category_details |
Digabung |
desc |
security_result.description |
Dipetakan secara langsung |
e_type |
security_result.description |
Dipetakan: (UpdateRebootRequired/ServiceNotRunning/NonCompliant/OutOfDate) → `security_result... |
type |
security_result.description |
Dipetakan: Event::Endpoint::(UpdateRebootRequired/ServiceNotRunning/NonCompliant/OutOfDate) →... |
rule |
security_result.rule_name |
Dipetakan secara langsung |
rules |
security_result.rule_name |
Dipetakan secara langsung |
severity |
security_result.severity |
Nilai yang dipetakan (total 6, misalnya low → LOW, low → MEDIUM, low → HIGH) |
security_result.description |
security_result.summary |
Diganti nama/dipetakan |
application |
target.application |
Dipetakan secara langsung |
endpoint_id |
target.asset_id |
Dipetakan secara langsung |
f_path |
target.file.full_path |
Dipetakan secara langsung |
f_size |
target.file.size |
Diganti nama/dipetakan |
dhost |
target.hostname |
Dipetakan secara langsung |
host |
target.hostname |
Dipetakan secara langsung |
application |
target.process.file.full_path |
Dipetakan secara langsung |
customer_id |
target.resource.id |
Dipetakan secara langsung |
e_type |
target.resource.name |
Dipetakan: SavDisabled → Real time protection, OutOfDate → Device Registration, `Regist... |
p_device |
target.resource.name |
Dipetakan secara langsung |
scan_name |
target.resource.name |
Dipetakan secara langsung |
type |
target.resource.name |
Dipetakan: Event::Endpoint::SavDisabled → Real time protection, `Event::Endpoint::OutOfDate... |
action |
target.resource.type |
Dipetakan: blocked → Device, restricted to read-only → Device |
e_type |
target.resource.type |
Nilai yang dipetakan (total 5, misalnya SavDisabled → SETTING, OutOfDate → SETTING, `Registered... |
type |
target.resource.type |
Nilai yang dipetakan (total 5, misalnya Event::Endpoint::SavDisabled → SETTING, `Event::Endpoint::O... |
url |
target.url |
Dipetakan secara langsung |
duid |
target.user.userid |
Dipetakan secara langsung |
suser |
target.user.userid |
Dipetakan secara langsung |
user |
target.user.userid |
Dipetakan secara langsung |
| T/A | metadata.event_type |
Konstanta: GENERIC_EVENT |
| T/A | metadata.product_name |
Konstanta: Sophos Anti-Virus |
| T/A | metadata.vendor_name |
Konstanta: Sophos |
| T/A | network.direction |
Konstanta: OUTBOUND |
| T/A | network.ip_protocol |
Konstanta: TCP |
| T/A | security_result.description |
Konstanta: security_result.summary |
| T/A | security_result.severity |
Konstanta: LOW |
| T/A | target.resource.name |
Konstanta: Real time protection |
| T/A | target.resource.type |
Konstanta: SETTING |
Log Perubahan
Melihat Log Perubahan untuk parser ini
Perlu bantuan lain? Dapatkan jawaban dari anggota Komunitas dan profesional Google SecOps.