Mengumpulkan log Pulse Secure
Dokumen ini menjelaskan cara mengumpulkan log Pulse Secure menggunakan forwarder Google Security Operations.
Untuk mengetahui informasi selengkapnya, lihat Ringkasan penyerapan data ke Google Security Operations.
Label penyerapan mengidentifikasi parser yang menormalisasi data log mentah ke
format UDM terstruktur. Informasi dalam dokumen ini berlaku untuk parser
dengan label transfer PULSE_SECURE_VPN
.
Mengonfigurasi VPN Pulse Secure
Untuk mengonfigurasi VPN Pulse Secure, lakukan salah satu hal berikut:
- Mengonfigurasi VPN Pulse Secure versi 8.3R3 dan yang lebih lama
- Mengonfigurasi VPN Pulse Secure versi 8.3R4 dan yang lebih baru
Mengonfigurasi VPN Pulse Secure versi 8.3R3 dan yang lebih lama
- Login ke konsol Pulse Connect Secure.
- Di konsol Pulse Connect Secure, pilih System > Log/monitoring > Settings. Anda dapat memilih Setelan dari tab Peristiwa, tab Akses pengguna, atau tab Akses admin.
- Di bagian Select events to log, pilih semua kotak centang yang sesuai dengan peristiwa.
- Di bagian Syslog servers, lakukan tindakan berikut:
- Di kolom Server name/IP, tentukan alamat IP forwarder Operasi Keamanan Google.
- Dalam daftar Fasilitas, pilih LOCAL0. Daftar Fasilitas menyediakan delapan fasilitas:
LOCAL0
hinggaLOCAL7
. Anda dapat menggunakan salah satu setelan ini untuk memetakan fasilitas di server syslog. - Dalam daftar Type, pilih UDP atau TCP.
- Klik Tambahkan.
- Opsional: Untuk menambahkan beberapa server syslog untuk log peristiwa, akses admin, atau akses pengguna, ulangi langkah 2 hingga 4.
- Klik Simpan perubahan.
- Untuk memastikan format log standar ditetapkan sebagai default, lakukan hal berikut:
- Buka konsol Pulse connect secure.
- Di tab Peristiwa, tab Akses pengguna, dan tab Akses admin, tetapkan Filter ke Standar.
- Jika filter standar tidak ditentukan sebagai filter default, klik Jadikan default.
- Klik Simpan.
Mengonfigurasi VPN Pulse Secure versi 8.3R4 dan yang lebih baru
- Di konsol Pulse connect secure, klik tab Peristiwa, tab Akses pengguna, atau tab Akses admin, lalu tetapkan Filter ke Filter baru.
- Di kolom Filter name, masukkan nama untuk filter.
Di bagian Export format, pilih Custom dan masukkan format berikut di kolom:
[SecureConnect] %date% %time% - %node% - [%sourceip%] %user%(%realm%)[%role%] - %msg%
Klik Simpan.
Berdasarkan versi perangkat Anda untuk mengaktifkan konfigurasi syslog, lakukan salah satu hal berikut:
- Mengaktifkan logging syslog di Pulse Secure VPN
- Mengaktifkan logging syslog di Ivanti Connect Secure
Mengaktifkan logging syslog di VPN Pulse Secure
- Di konsol Pulse connect secure, pilih System > Log/monitoring > Settings. Anda dapat memilih Setelan dari tab Peristiwa, tab Akses pengguna, atau tab Akses admin.
- Di bagian Pilih peristiwa untuk dicatat ke dalam log, centang semua kotak centang kecuali kotak centang Akses HTML5, Pesan kontrol akses, dan Permintaan tanpa autentikasi.
- Di kolom Server syslog, masukkan informasi tentang server syslog.
- Di bagian Syslog servers, lakukan tindakan berikut:
- Di kolom Server name/IP, masukkan nama server atau alamat IP forwarder Operasi Keamanan Google.
- Dalam daftar Fasilitas, pilih LOCAL0.
- Dalam daftar Filter, pilih filter yang Anda buat sebelumnya.
- Klik Tambahkan.
- Opsional: Untuk menambahkan beberapa server syslog untuk peristiwa, akses administrator, atau log akses pengguna, ulangi langkah 2 hingga 4.
- Klik Simpan perubahan.
Mengaktifkan logging syslog di Ivanti Connect Secure
- Di konsol Pulse connect secure, klik tab Peristiwa, tab Akses pengguna, atau tab Akses admin, lalu pilih Filter.
- Klik tab Filter baru.
Di bagian Export format, pilih Custom dan masukkan format berikut di kolom:
[SecureConnect] %date% %time% - %node% - [%sourceip%] %user%(%realm%)[%role%] - %msg%
Klik Simpan.
Klik System > Log/monitoring, lalu pilih tab Settings.
Di kolom Maximum log size, tentukan ukuran log maksimum dan pilih peristiwa yang akan dicatat ke dalam log.
Tentukan konfigurasi server sebagai berikut:
Di kolom Server name/IP, tentukan nama domain yang sepenuhnya memenuhi syarat atau alamat IP penerusan Google Security Operations untuk server syslog.
Jika Anda memilih Transport Layer Security (TLS) dari daftar jenis, nama server harus cocok dengan CN di subjectDN dalam sertifikat yang diperoleh dari server.
Dalam daftar Fasilitas, pilih tingkat fasilitas server syslog.
Dalam daftar Type, pilih jenis koneksi ke server syslog sebagai UDP, TCP, atau TLS. TLS menggunakan protokol kriptografi untuk menyediakan komunikasi yang aman.
Jika Anda memilih TLS, pilih sertifikat klien yang diinstal untuk digunakan guna mengautentikasi server syslog. Sertifikat klien ditentukan di jendela Configuration > Certificates > Client auth certificates. Sertifikat klien harus diinstal di perangkat sebelum dapat digunakan. Hubungi certificate authority Anda untuk mendapatkan sertifikat.
Dalam daftar Filter, pilih Custom.
Klik Tambahkan.
Mengonfigurasi forwarder Google Security Operations untuk menyerap log Pulse Secure
- Pilih Setelan SIEM > Penerima.
- Klik Tambahkan penerusan baru.
- Di kolom Nama pengirim, masukkan nama unik untuk pengirim.
- Klik Kirim, lalu klik Konfirmasi. Pengirim ditambahkan dan jendela Tambahkan konfigurasi kolektor akan muncul.
- Di kolom Nama kolektor, ketik nama unik untuk kolektor.
- Pilih Pulse Secure sebagai Jenis log.
- Pilih Syslog sebagai Jenis kolektor.
- Konfigurasikan parameter input wajib berikut:
- Protokol: tentukan protokol koneksi yang digunakan kolektor untuk memproses data syslog.
- Address: tentukan alamat IP atau nama host target tempat kolektor berada dan memproses data syslog.
- Port: menentukan port target tempat kolektor berada dan memproses data syslog.
- Klik Kirim.
Untuk informasi selengkapnya tentang forwarder Google Security Operations, lihat Mengelola konfigurasi forwarder melalui UI Google Security Operations.
Jika Anda mengalami masalah saat membuat penerusan, hubungi dukungan Google Security Operations.
Referensi pemetaan kolom
Parser ini mengekstrak kolom dari log VPN Pulse Secure, yang menangani format Windows Event Logs dan syslog. Log Normalizer menstandarkan berbagai struktur log ke dalam format umum, mengategorikan peristiwa seperti login, logout, koneksi, dan perubahan kebijakan, serta memperkayanya dengan data kontekstual seperti agen pengguna, alamat IP, dan stempel waktu.
Tabel pemetaan UDM
Kolom Log | Pemetaan UDM | Logika |
---|---|---|
action | security_result.action_details |
Dipetakan langsung dari kolom action . |
application | principal.application |
Dipetakan langsung dari kolom application . |
bytes_read | network.received_bytes |
Dipetakan langsung dari kolom bytes_read dan dikonversi menjadi bilangan bulat tanpa tanda tangan. |
bytes_written | network.sent_bytes |
Dipetakan langsung dari kolom bytes_written dan dikonversi menjadi bilangan bulat tanpa tanda tangan. |
client_host | principal.hostname , principal.asset.hostname |
Dipetakan langsung dari kolom client_host . |
cmd | principal.process.command_line |
Dipetakan langsung dari kolom cmd . |
connection_status | security_result.detection_fields.value.string_value |
Dipetakan langsung dari kolom connection_status . |
data_time | metadata.event_timestamp.seconds |
Diurai dari kolom data_time menggunakan berbagai format stempel waktu (MM-dd-yyyy HH:mm:ss Z, RFC 3339, ISO8601, MMM d HH:mm:ss, MMM d HH:mm:ss). |
devname | principal.hostname , principal.asset.hostname |
Dipetakan langsung dari kolom devname . |
dstip | target.ip , target.asset.ip |
Dipetakan langsung dari kolom dstip . |
dstport | target.port |
Dipetakan langsung dari kolom dstport dan dikonversi menjadi bilangan bulat. |
dstcountry | target.location.country_or_region |
Dipetakan langsung dari kolom dstcountry jika tidak "Ditangguhkan" atau kosong. |
durasi | network.session_duration.seconds |
Dipetakan langsung dari kolom duration dan dikonversi menjadi bilangan bulat. |
dvc | intermediary.hostname atau intermediary.ip |
Jika dapat dikonversi menjadi alamat IP, kolom dvc akan dipetakan ke intermediary.ip . Jika tidak, kolom akan dipetakan ke intermediary.hostname . |
dvc_hostname | intermediary.hostname , principal.hostname , principal.asset.hostname , atau intermediary.ip , principal.ip , principal.asset.ip |
Jika dapat dikonversi menjadi alamat IP, kolom dvc_hostname akan dipetakan ke kolom IP masing-masing. Jika tidak, nama host akan dipetakan ke kolom nama host masing-masing. |
event_type | metadata.product_event_type |
Dipetakan langsung dari kolom event_type . |
failure_reason | security_result.description |
Dipetakan langsung dari kolom failure_reason . Jika pesan berisi "because host", teks "host" akan ditambahkan di awal alasan kegagalan. |
has_principal | event.idm.read_only_udm.principal (kehadiran) |
Tetapkan ke "true" jika ada kolom utama yang diisi, "false" jika tidak. Diderivasikan oleh logika parser. |
has_target | event.idm.read_only_udm.target (kehadiran) |
Tetapkan ke "true" jika ada kolom target yang diisi, "false" jika tidak. Diderivasikan oleh logika parser. |
has_target_user | event.idm.read_only_udm.target.user.userid (kehadiran) |
Tetapkan ke "true" jika target.user.userid diisi, "false" jika tidak. Diderivasikan oleh logika parser. |
host_ip | principal.ip , principal.asset.ip |
Dipetakan langsung dari kolom host_ip . |
host_mac | principal.mac |
Dipetakan langsung dari kolom host_mac , mengganti tanda hubung dengan titik dua. |
http_method | network.http.method |
Dipetakan langsung dari kolom http_method . |
http_response | network.http.response_code |
Dipetakan langsung dari kolom http_response dan dikonversi menjadi bilangan bulat. |
info_desc | about.labels.value |
Dipetakan langsung dari kolom info_desc . |
ip_new | target.ip , target.asset.ip |
Dipetakan langsung dari kolom ip_new . |
level | security_result.severity , security_result.severity_details |
security_result.severity berasal dari kolom level ("error"/"warning" -> TINGGI, "notice" -> SEDANG, "information"/"info" -> RENDAH). Nilai mentah level juga dipetakan ke security_result.severity_details . |
logid | metadata.product_log_id |
Dipetakan langsung dari kolom logid . |
locip | principal.ip , principal.asset.ip |
Dipetakan langsung dari kolom locip . |
message | metadata.description |
Digunakan untuk mengekstrak berbagai kolom menggunakan filter grok dan kv. Jika pesan berisi "EventID", pesan tersebut akan diproses sebagai log aktivitas Windows. |
message_info | metadata.description |
Dipetakan langsung ke metadata.description jika tidak digunakan dalam pola grok yang lebih spesifik. |
msg | metadata.product_event_type , metadata.description |
Jika kolom msg ada, jenis produk akan diekstrak dan dipetakan ke metadata.product_event_type , dan pesan yang tersisa akan dipetakan ke metadata.description . |
msg_hostname | principal.hostname , principal.asset.hostname |
Dipetakan langsung dari kolom msg_hostname . |
msg_ip | principal.ip , principal.asset.ip |
Dipetakan langsung dari kolom msg_ip . |
msg_user_agent | network.http.user_agent , network.http.parsed_user_agent , metadata.product_version |
String agen pengguna dipetakan ke network.http.user_agent , agen pengguna yang diuraikan dipetakan ke network.http.parsed_user_agent , dan versi produk (jika ada) dipetakan ke metadata.product_version . |
network_duration | network.session_duration.seconds |
Dipetakan langsung dari kolom network_duration dan dikonversi menjadi bilangan bulat. |
policyid | security_result.rule_id |
Dipetakan langsung dari kolom policyid . |
policyname | security_result.rule_name |
Dipetakan langsung dari kolom policyname . |
policytype | security_result.rule_type |
Dipetakan langsung dari kolom policytype . |
priority_code | about.labels.value |
Dipetakan langsung dari kolom priority_code dan juga digunakan untuk mendapatkan about.labels.value untuk kunci "Severity" (lihat Logika). |
prod_name | metadata.product_name |
Dipetakan langsung dari kolom prod_name . |
product_type | metadata.product_event_type |
Dipetakan langsung dari kolom product_type . |
product_version | metadata.product_version |
Dipetakan langsung dari kolom product_version . |
proto | network.ip_protocol |
Dipetakan ke network.ip_protocol setelah dikonversi menjadi nama protokol IP menggunakan pencarian. |
pwd | principal.process.file.full_path |
Dipetakan langsung dari kolom pwd . |
realm | principal.group.attribute.labels.value |
Dipetakan langsung dari kolom realm . |
rcvdbyte | network.received_bytes |
Dipetakan langsung dari kolom rcvdbyte dan dikonversi menjadi bilangan bulat tanpa tanda tangan. |
remip | target.ip |
Dipetakan langsung dari kolom remip . |
resource_name | target.resource.name |
Dipetakan langsung dari kolom resource_name setelah menghapus spasi kosong di awal/akhir dan tanda hubung. |
resource_status | security_result.description |
Dipetakan langsung dari kolom resource_status . |
resource_user_group | principal.user.group_identifiers |
Dipetakan langsung dari kolom resource_user_group . |
resource_user_name | principal.user.userid |
Dipetakan langsung dari kolom resource_user_name . |
roles | principal.user.group_identifiers |
Dipetakan langsung dari kolom roles . |
sentbyte | network.sent_bytes |
Dipetakan langsung dari kolom sentbyte dan dikonversi menjadi bilangan bulat tanpa tanda tangan. |
session_id | network.session_id |
Dipetakan langsung dari kolom session_id . |
sessionid | network.session_id |
Dipetakan langsung dari kolom sessionid . |
srcip | principal.ip , principal.asset.ip |
Dipetakan langsung dari kolom srcip . |
srcport | principal.port |
Dipetakan langsung dari kolom srcport dan dikonversi menjadi bilangan bulat. |
srccountry | principal.location.country_or_region |
Dipetakan langsung dari kolom srccountry jika tidak "Ditangguhkan" atau kosong. |
subjenis | metadata.product_event_type |
Digunakan bersama dengan type untuk membentuk metadata.product_event_type . |
target_file | target.file.full_path |
Dipetakan langsung dari kolom target_file . |
target_host | target.hostname , target.asset.hostname |
Dipetakan langsung dari kolom target_host . |
target_ip | target.ip , target.asset.ip |
Dipetakan langsung dari kolom target_ip . |
target_port | target.port |
Dipetakan langsung dari kolom target_port dan dikonversi menjadi bilangan bulat. |
target_url | target.url |
Dipetakan langsung dari kolom target_url . |
waktu | metadata.event_timestamp.seconds |
Diurai dari kolom time menggunakan format "yyyy-MM-dd HH:mm:ss". |
jenis | metadata.product_event_type |
Digunakan bersama dengan subtype untuk membentuk metadata.product_event_type . |
u_event_source_ip | principal.ip , principal.asset.ip , atau target.ip |
Jika target_ip atau target_host ada, u_event_source_ip akan dipetakan ke principal.ip dan principal.asset.ip . Jika tidak, jika target_ip , target_host , dan target_url semuanya kosong, u_event_source_ip akan dipetakan ke target.ip . |
u_observer_ip | observer.ip |
Dipetakan langsung dari kolom u_observer_ip . |
u_prin_ip | principal.ip , principal.asset.ip |
Dipetakan langsung dari kolom u_prin_ip . |
pengguna | target.user.userid |
Dipetakan langsung dari kolom user . |
user_agent | network.http.user_agent , network.http.parsed_user_agent |
String agen pengguna dipetakan ke network.http.user_agent , dan agen pengguna yang diuraikan dipetakan ke network.http.parsed_user_agent . |
user_group_identifier | target.user.group_identifiers atau principal.user.group_identifiers |
Dalam sebagian besar kasus, dipetakan ke target.user.group_identifiers . Dipetakan ke principal.user.group_identifiers dalam peristiwa perubahan IP (USER_UNCATEGORIZED) dan pembatasan Realm. |
user_ip | principal.ip , principal.asset.ip |
Dipetakan langsung dari kolom user_ip . Jika kosong dan u_event_source_ip tidak kosong, nilai u_event_source_ip akan digunakan. |
nama pengguna | principal.user.userid atau target.user.userid |
Dalam sebagian besar kasus, dipetakan ke principal.user.userid . Dipetakan ke target.user.userid dalam beberapa skenario tertentu (misalnya, saat detect_user_logout_failed bernilai salah dan detect_policy_change_failed bernilai salah). |
username_removed | target.user.userid |
Dipetakan langsung dari kolom username_removed . |
vd | principal.administrative_domain |
Dipetakan langsung dari kolom vd . |
metadata.vendor_name
, metadata.product_name
, metadata.event_type
, metadata.log_type
, network.ip_protocol
, security_result.action
, security_result.severity
, dan extensions.auth.type
berasal atau ditetapkan oleh logika parser berdasarkan kondisi yang dijelaskan di kolom Logika.
Perubahan
2024-05-27
- Memetakan "observer_hostname" ke "observer.hostname".
- Jika "dvc_hostname" adalah alamat IP yang valid, petakan ke "principal.ip", jika tidak, petakan ke "principal.hostname".
- Memetakan "priority_code", "Syslog_version", dan "info_desc" ke "about.labels".
- Memetakan "prod_name" ke "metadata.product_event_type".
2024-04-16
- Menambahkan pola GROK baru untuk mengurai pola baru log SYSLOG.
- Memetakan "connection_status" ke "security_result.detection_fields".
2024-02-26
- Menambahkan blok "kv" untuk mengurai data nilai kunci.
- Memetakan "username" ke "target.user.userid".
- Menambahkan pemeriksaan bersyarat untuk "message_info".
- Memetakan "u_prin_ip" ke "principal.ip".
- Memetakan "u_observer_ip" ke "observer.ip".
2023-11-07
- Perbaikan bug:
- Pemetaan yang diubah untuk "observer_host" dari "observer.hostname" menjadi "additional.fields".
2023-08-19
- Menambahkan pola Grok untuk mengurai log yang gagal.
2023-05-26
- Menambahkan pola Grok untuk mendukung log syslog baru.
2023-01-06
- Grok dimodifikasi untuk mengurai "product_type" dan dipetakan ke "metadata.product_event_type".
2022-10-25
- Menambahkan pola grok baru untuk "message_info" guna mengekstrak session_id.
- Memetakan "session_id" ke "network.session_id".
- Mengubah target.ip menjadi principal.ip jika detect_policy_change_failed bernilai salah.
- Mengubah target.mac menjadi principal.mac saat detect_policy_change_failed bernilai salah (false).
2022-10-12
- Peningkatan- Menambahkan pemetaan untuk kolom berikut:
- Mengekstrak nilai IP dari kolom "msg" dan memetakan ke "principal.ip".
- Mengekstrak nilai nama host dari kolom "msg" dan memetakan ke "principal.hostname".
- Memetakan "user" ke "target.user.userid".
- Memetakan "realm" ke "principal.group.attribute.labels".
- Memetakan "roles" ke "principal.user.group_identifiers".
- Nilai yang diubah untuk "metadata.event_type" dari "GENERIC_EVENT" menjadi "USER_UNCATEGORIZED".
2022-10-03
- Peningkatan- Mengurai log yang berisi "sudo" dan mengurainya.
- Menambahkan Dukungan untuk format log jenis Pasangan Nilai Kunci baru.
2022-07-01
- Peningkatan- Membuat peristiwa baru untuk EventID: 4624
- Mengubah metadata.event_type dari "GENERIC_EVENT" menjadi "STATUS_UPDATE" atau "NETWORK_CONNECTION" dengan "principal.ip" atau "target.ip" atau "principal.hostname" tidak null.
13-04-2022
- Peningkatan-Pemetaan yang ditambahkan untuk kolom baru di GENERIC_EVENT event_type:
- user_ip ke event.idm.read_only_udm.principal.ip.
- user_group_identifier ke event.idm.read_only_udm.target.user.group_identifiers.
- Stempel waktu diubah di semua event_type untuk menyertakan zona waktu.
- Mengubah kolom user_ip, target_ip untuk jenis peristiwa GENERIC dan NETWORK_CONNECTION.