Mengumpulkan log SecureAuth Identity Platform
Dokumen ini menjelaskan cara menyerap log SecureAuth Identity Platform ke Google Security Operations menggunakan Bindplane. Parser mengekstrak kolom dari berbagai format log (SYSLOG, XML, pasangan nilai kunci) menggunakan filter grok dan xml. Kemudian, kolom yang diekstrak dipetakan ke atribut UDM (Unified Data Model) yang sesuai, sehingga memperkaya data dengan konteks peristiwa keamanan dan menstandardisasi output untuk analisis lebih lanjut.
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 belakang proxy, pastikan port firewall terbuka.
- Pastikan Anda memiliki akses istimewa ke SecureAuth.
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
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:
- 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: '/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 ingestion_labels: log_type: SECUREAUTH_SSO raw_log_field: body 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 bindplane-agent
Untuk memulai ulang agen Bindplane di Windows, Anda dapat menggunakan konsol Services atau memasukkan perintah berikut:
net stop BindPlaneAgent && net start BindPlaneAgent
Mengonfigurasi SecureAuth Identity Platform
- Login ke konsol SecureAuth Identity.
- Pilih Log.
- Berikan detail konfigurasi berikut di bagian Opsi log:
- ID instance log: masukkan ID instance log, Nama Aplikasi, atau nama realm; misalnya,
SecureAuth1
. - Log audit: centang kotak Syslog.
- Log error: centang kotak Syslog.
- Server Syslog: masukkan Alamat IP agen Bindplane Anda.
- Syslog Port: masukkan nomor port agen Bindplane; misalnya,
514
. - Spesifikasi RFC Syslog: pilih RFC 5424.
- ID instance log: masukkan ID instance log, Nama Aplikasi, atau nama realm; misalnya,
- Klik Simpan.
Tabel Pemetaan UDM
Kolom log | Pemetaan UDM | Logika |
---|---|---|
action_msg | read_only_udm.target.process.command_line | Nilai kolom action_msg |
Perangkat | read_only_udm.principal.domain.name | Nilai kolom Appliance |
Perangkat | read_only_udm.target.administrative_domain | Nilai kolom Appliance |
BrowserSession | read_only_udm.network.session_id | Nilai kolom BrowserSession |
kucing | read_only_udm.metadata.product_event_type | Nilai kolom cat |
Kategori | read_only_udm.metadata.product_event_type | Nilai kolom Category |
cn1 | security_result.severity | Dipetakan berdasarkan nilai cn1 saat cn1Label adalah 'Priority': 1 - HIGH, 2 - MEDIUM, 3 atau 4 - LOW |
Perusahaan | read_only_udm.additional.fields.value.string_value | Nilai kolom Company |
cs1 | read_only_udm.network.session_id | Nilai kolom cs1 saat cs1Label adalah 'BrowserSession' |
cs3 | read_only_udm.additional.fields.value.string_value | Nilai kolom cs3 saat cs3Label adalah 'CompanyName' |
dst | read_only_udm.target.ip | Nilai kolom dst |
domain | read_only_udm.principal.domain.name | Nilai kolom domain |
dvc | read_only_udm.intermediary.ip | Nilai kolom dvc |
EventID | read_only_udm.metadata.product_log_id | Nilai kolom EventID |
HostName | read_only_udm.principal.hostname | Nilai kolom HostName saat grok gagal mencocokkan alamat IP |
HostName | read_only_udm.principal.ip | Nilai kolom HostName saat grok cocok dengan alamat IP |
ip | read_only_udm.principal.ip | Nilai kolom ip |
Pesan | read_only_udm.metadata.description | Nilai kolom Message |
Pesan | security_result.description | Nilai kolom Message |
nat_ip | read_only_udm.principal.nat_ip | Nilai kolom nat_ip |
Prioritas | security_result.severity | Dipetakan berdasarkan nilai Priority : 1 - TINGGI, 2 - SEDANG, 3 atau 4 - RENDAH |
SAMLConsumerURL | read_only_udm.target.url | Nilai kolom SAMLConsumerURL |
sec_msg | security_result.description | Nilai kolom sec_msg |
SecureAuthIdPAppliance | read_only_udm.target.administrative_domain | Nilai kolom SecureAuthIdPAppliance |
SecureAuthIdPApplianceMachineName | read_only_udm.target.hostname | Nilai kolom SecureAuthIdPApplianceMachineName |
SecureAuthIdPDestinationSiteUrl | read_only_udm.target.url | Nilai kolom SecureAuthIdPDestinationSiteUrl |
SecureAuthIdPProductType | read_only_udm.additional.fields.value.string_value | Nilai kolom SecureAuthIdPProductType |
sesi | read_only_udm.network.session_id | Nilai kolom session |
spid | read_only_udm.target.process.pid | Nilai kolom spid |
src | read_only_udm.principal.ip | Nilai kolom src |
suser | read_only_udm.target.user.userid | Nilai kolom suser |
UserAgent | read_only_udm.network.http.user_agent | Nilai kolom UserAgent |
UserHostAddress | read_only_udm.principal.nat_ip | Nilai kolom UserHostAddress |
UserHostAddress | read_only_udm.target.ip | Nilai kolom UserHostAddress |
UserID | read_only_udm.principal.user.userid | Nilai kolom UserID |
Versi | read_only_udm.metadata.product_version | Nilai kolom Version |
read_only_udm.additional.fields.key | Nilai yang di-hardcode - 'CompanyName' | |
read_only_udm.additional.fields.key | Nilai yang di-hardcode - 'Perusahaan' | |
read_only_udm.additional.fields.key | Nilai hardcode - 'SecureAuthIdPProductType' | |
read_only_udm.extensions.auth.type | Nilai yang dikodekan secara permanen - 'SSO' | |
read_only_udm.metadata.event_type | 'USER_LOGIN' jika SecureAuthIdPAuthGuiMode == 0 dan auth_result == Success , 'USER_CHANGE_PERMISSIONS' jika SecureAuthIdPAuthGuiMode == 0 dan auth_result ==WS-Trust success. , 'USER_LOGOUT' jika SecureAuthIdPAuthGuiMode == 0 dan auth_result == Session Aborted , 'NETWORK_CONNECTION' jika UserHostAddress != and `HostName` != , 'STATUS_UPDATE' jika ip != or `HostName` != , 'USER_UNCATEGORIZED' jika UserHostAddress != and `HostName` == dan UserID != ``, jika tidak - 'GENERIC_EVENT' |
|
read_only_udm.metadata.log_type | Nilai hardcode - 'SECUREAUTH_SSO' | |
read_only_udm.metadata.product_name | Nilai hardcode - 'SECUREAUTH_SSO' | |
read_only_udm.metadata.vendor_name | Nilai hardcode - 'SECUREAUTH_SSO' | |
read_only_udm.target.user.email_addresses | Nilai kolom user_email saat not_email salah (false) |
|
security_result.severity | 'HIGH' jika cn1Label == Priority dan cn1 == 1 , 'MEDIUM' jika cn1Label == Priority dan cn1 == 2 , 'LOW' jika cn1Label == Priority dan cn1 in [3 , 4 ], 'HIGH' jika Priority == 1 , 'MEDIUM' jika Priority == 2 , 'LOW' jika Priority in [3 , 4 ] |
Perlu bantuan lain? Dapatkan jawaban dari anggota Komunitas dan profesional Google SecOps.