Mengumpulkan log Peristiwa Palo Alto Cortex XDR
Dokumen ini menjelaskan cara menyerap log Peristiwa Palo Alto Cortex XDR ke
Google Security Operations menggunakan Google Cloud Storage. Parser mengekstrak data peristiwa keamanan dari log JSON Palo Alto Networks Cortex XDR. Proses ini menormalisasi
data ke dalam Model Data Terpadu (UDM) dengan memetakan kolom, mengonversi jenis data, dan memperkaya peristiwa dengan metadata seperti vendor, produk, dan jenis peristiwa
berdasarkan logika bersyarat yang terkait dengan kolom event_type
dan event_sub_type
. Selain itu, aplikasi ini juga menangani koneksi jaringan, operasi file dan registry, informasi proses, dan aktivitas pengguna.
Sebelum memulai
Pastikan Anda memenuhi prasyarat berikut:
- Instance Google SecOps
- Google Cloud Storage disiapkan dan aktif di lingkungan Google Cloud Anda
- Akses istimewa ke Google Cloud dan izin yang sesuai
- Akses istimewa ke Palo Alto Cortex XDR
Membuat Google Cloud Bucket Storage
- Login ke konsol Google Cloud .
Buka halaman Cloud Storage Buckets.
Klik Buat.
Di halaman Buat bucket, masukkan informasi bucket Anda. Setelah setiap langkah berikut, klik Lanjutkan untuk melanjutkan ke langkah berikutnya:
Di bagian Mulai, lakukan hal berikut: * Masukkan nama unik yang memenuhi persyaratan nama bucket (misalnya, cortex-xdr-events-googlesecops). * Untuk mengaktifkan namespace hierarkis, klik panah peluas untuk meluaskan bagian Optimalkan untuk beban kerja berorientasi file dan intensif data, lalu pilih Aktifkan namespace hierarkis di bucket ini.
Note: You can't enable hierarchical namespace in an existing bucket. * To add a bucket label, click the expander arrow to expand the **Labels** section. * Click **Add label** and specify a key and a value for your label.
Di bagian Pilih tempat untuk menyimpan data Anda, lakukan hal berikut: * Pilih Jenis lokasi. * Gunakan menu jenis lokasi untuk memilih Location tempat data objek dalam bucket Anda akan disimpan secara permanen.
Note: If you select the **dual-region** location type, you can also choose to enable **turbo replication** by selecting the relevant checkbox. * To set up cross-bucket replication, expand the **Set up cross-bucket replication** section.
Di bagian Pilih kelas penyimpanan untuk data Anda, pilih kelas penyimpanan default untuk bucket, atau pilih Autoclass untuk pengelolaan kelas penyimpanan otomatis untuk data bucket Anda.
Di bagian Pilih cara mengontrol akses ke objek, pilih tidak untuk menerapkan pencegahan akses publik, dan pilih model kontrol akses untuk objek bucket Anda.
Di bagian Pilih cara melindungi data objek, lakukan hal berikut: * Pilih salah satu opsi di bagian Perlindungan data yang ingin Anda tetapkan untuk bucket. * Untuk memilih cara mengenkripsi data objek Anda, klik panah peluas Enkripsi data, lalu pilih Metode enkripsi data.
Klik Buat.
Mengonfigurasi Penerusan Peristiwa Cortex XDR
- Login ke UI web Cortex XDR.
- Buka Setelan > Konfigurasi > Pengelolaan Data > Penerusan Peristiwa.
- Aktifkan lisensi di bagian Aktivasi.
- Aktifkan Penerusan Peristiwa GB untuk mengekspor log yang diuraikan untuk Cortex XDR Pro per GB ke SIEM eksternal untuk penyimpanan.
- Aktifkan Penerusan Peristiwa Endpoints untuk mengekspor data endpoint mentah untuk Cortex XDR Pro EP dan Cloud Endpoints.
- Simpan pilihan.
- Salin jalur penyimpanan yang ditampilkan.
- Buat dan download TOKEN WEB JSON Akun Layanan, yang berisi kunci akses.
- Simpan di lokasi yang aman.
Mengonfigurasi Google Cloud Secret Manager
- Login ke GCP Anda.
- Buka halaman Secret Manager.
- Jika ini pertama kalinya, Anda akan diminta untuk Mengaktifkan Secret Manager API.
- Buat secret bernama EVENT_FRWD_CRTX_KEY dan salin konten JSON xdr_sa_key.json yang Anda download sebagai nilai secret.
Menyiapkan feed
Untuk mengonfigurasi feed, ikuti langkah-langkah berikut:
- Buka Setelan SIEM > Feed.
- Klik Tambahkan Feed Baru.
- Di halaman berikutnya, klik Konfigurasi satu feed.
- Di kolom Nama feed, masukkan nama untuk feed (misalnya, PANW Cortex XDR Event Logs).
- Pilih Google Cloud Storage sebagai Jenis sumber.
- Pilih Palo Alto Cortex XDR Events sebagai Log type.
- Klik Dapatkan Akun Layanan sebagai Akun Layanan Chronicle.
- Klik Berikutnya.
Tentukan nilai untuk parameter input berikut:
- URI Bucket Penyimpanan: Google Cloud URL bucket penyimpanan (misalnya,
gs://cortex-xdr-events-chronicle
). - URI Adalah: Pilih Direktori yang menyertakan subdirektori.
- Opsi penghapusan sumber: Pilih opsi penghapusan sesuai preferensi Anda.
- URI Bucket Penyimpanan: Google Cloud URL bucket penyimpanan (misalnya,
Klik Berikutnya.
Tinjau konfigurasi feed baru Anda di layar Selesaikan, lalu klik Kirim.
Setelah Feed dibuat, temukan di daftar Feed dan klik tiga titik tindakan di sisi kanan baris.
Pilih Nonaktifkan Feed.
Mengonfigurasi Akses JSON Rahasia ke Cloud Storage
- Login ke GCP Anda.
- Buka halaman Secret Manager.
- Pilih rahasia EVENT_FRWD_CRTX_KEY.
- Buka tab Izin.
- Berikan akses Storage Object Admin dan Storage Legacy Bucket Reader ke bucket cortex-xdr-events-chronicle yang dibuat sebelumnya.
Mengonfigurasi Izin Google SecOps untuk Cloud Storage
- Buka IAM & Admin > IAM.
- Temukan Akun Layanan Chronicle.
- Berikan akses Storage Object Viewer (roles/storage.objectViewer) ke bucket cortex-xdr-events-chronicle yang dibuat sebelumnya.
Mengonfigurasi penyerapan log Peristiwa PANW Cortex XDR ke Project Cloud Storage
- Di Google Cloud, buka APIs & Services > Library.
- Aktifkan API Cloud Run dan Artifact Registry.
- Buka Cloud Shell dengan mengklik ikon di menu navigasi atas.
Download kode kustom menggunakan perintah berikut:
git clone https://github.com/PaloAltoNetworks/google-cloud-cortex-chronicle.git
Buka direktori dengan menjalankan perintah berikut:
cd google-cloud-cortex-chronicle/
Buka file
env.properties
dengan editor sepertivi
.Berikan detail konfigurasi berikut:
REGION=us-central1 # Update according to your project region REPO_NAME=panw-chronicle IMAGE_NAME=sync_cortex_bucket GCP_PROJECT_ID=chrxxxxxxxxx # Update according to your project ID JOB_NAME=cloud-run-job-cortex-data-sync # The Cloud Job name ROJECT_NUMBER=80xxxxx9 # Update according to your project number # JOB ENV VARIABLES SRC_BUCKET=xdr-us-xxxxx-event-forwarding # Update with the Cortex XDR GCS bucket name DEST_BUCKET=cortex-xdr-events-chronicle # Update with the GCS name of the bucket you created SECRET_NAME=EVENT_FRWD_CRTX_KEY # Need to match the secret you created JOB_SCHEDULE_MINS=30
Berikan izin yang diperlukan ke skrip
deploy.sh
:chmod 744 deploy.sh
Jalankan skrip
deploy.sh
:./deploy.sh
Identifikasi akun layanan Cloud Job yang digunakan dari output skrip.
Beri akun layanan Cloud Job izin Secret Manager Secret Ancestor untuk mengakses Secret yang Anda buat sebelumnya (seperti dalam contoh kami, EVENT_FRWD_CRTX_KEY).
Buka Secret Manager > EVENT_FRWD_CRTX_KEY (secret) > Permissions.
Di platform SecOps Google, buka SIEM Settings > Feeds > XDR Events Feed Name > Enable Feed.
Tabel pemetaan UDM
Kolom Log | Pemetaan UDM | Logika |
---|---|---|
action_file_path |
target.file.full_path |
Dipetakan secara langsung |
action_file_size |
target.file.size |
Dipetakan dan dikonversi langsung ke bilangan bulat tidak bertanda |
action_local_ip |
principal.ip |
Dipetakan dan digabungkan secara langsung dengan alamat IP lainnya |
action_local_port |
principal.port |
Dipetakan dan dikonversi langsung ke bilangan bulat |
action_module_path |
target.process.file.full_path |
Dipetakan secara langsung |
action_network_connection_id |
network.session_id |
Dipetakan secara langsung |
action_network_protocol |
network.ip_protocol |
Diganti namanya menjadi protocol_number_src , diuraikan menggunakan parse_ip_protocol.include , dan dipetakan ke network.ip_protocol |
action_process_image_command_line |
target.process.command_line |
Dipetakan secara langsung |
action_process_image_md5 |
target.process.file.md5 |
Dipetakan secara langsung |
action_process_image_path |
target.process.file.full_path |
Dipetakan secara langsung |
action_process_image_sha256 |
target.process.file.sha256 |
Dipetakan secara langsung |
action_process_os_pid |
target.process.pid |
Dipetakan dan dikonversi langsung ke string |
action_process_user_sid |
target.user.windows_sid |
Dipetakan secara langsung |
action_process_username |
target.user.userid , target.administrative_domain |
Huruf kecil, diuraikan untuk domain dan pengguna, serta dipetakan dengan tepat |
action_registry_data |
target.registry.registry_value_data |
Dipetakan secara langsung |
action_registry_key_name |
target.registry.registry_key |
Dipetakan secara langsung |
action_registry_value_name |
target.registry.registry_value_name |
Dipetakan secara langsung |
action_remote_ip |
target.ip |
Dipetakan dan digabungkan secara langsung dengan alamat IP lainnya |
action_remote_port |
target.port |
Dipetakan dan dikonversi langsung ke bilangan bulat |
action_total_download |
network.received_bytes |
Dipetakan dan dikonversi langsung ke bilangan bulat tidak bertanda |
action_total_upload |
network.sent_bytes |
Dipetakan dan dikonversi langsung ke bilangan bulat tidak bertanda |
agent_hostname |
principal.hostname , observer.hostname |
Huruf kecil dan dipetakan |
agent_ip_addresses |
observer.ip |
Diuraikan sebagai JSON, dibagi menjadi IP individual, dan digabungkan |
agent_os_sub_type |
target.platform_version |
Dipetakan secara langsung |
event_id |
metadata.product_log_id |
Dipetakan secara langsung |
event_sub_type |
metadata.product_event_type |
Dikonversi menjadi string dan digunakan untuk pemetaan bersyarat metadata.event_type dan metadata.product_event_type |
event_timestamp |
metadata.event_timestamp , timestamp |
Dikonversi menjadi string, diuraikan sebagai stempel waktu UNIX_MS, dan dipetakan |
event_type |
metadata.event_type |
Dikonversi menjadi string dan digunakan untuk pemetaan bersyarat metadata.event_type dan metadata.product_event_type |
os_actor_process_command_line |
principal.process.command_line |
Dipetakan secara langsung |
os_actor_process_image_md5 |
principal.process.file.md5 |
Dipetakan secara langsung |
os_actor_process_image_path |
principal.process.file.full_path |
Dipetakan secara langsung |
os_actor_process_image_sha256 |
principal.process.file.sha256 |
Dipetakan secara langsung |
os_actor_process_instance_id |
principal.process.product_specific_process_id |
Diawali dengan "PAN:" dan dipetakan |
os_actor_process_os_pid |
principal.process.pid |
Dikonversi menjadi string dan dipetakan |
os_actor_primary_user_sid |
principal.user.windows_sid |
Dipetakan jika dimulai dengan "S-" atau "s-" |
os_actor_primary_username |
principal.user.userid , principal.administrative_domain |
Huruf kecil, diuraikan untuk domain dan pengguna, serta dipetakan dengan tepat |
_action |
security_result.action |
Digabungkan ke _security_result , lalu dipetakan |
metadata.log_type |
metadata.log_type |
Dikodekan secara permanen ke "PAN_CORTEX_XDR_EVENTS" |
metadata.product_name |
metadata.product_name |
Dikodekan secara permanen ke "Cortex XDR" |
metadata.vendor_name |
metadata.vendor_name |
Dikodekan secara permanen ke "PAN" |
target.platform |
target.platform |
Ditetapkan ke "WINDOWS" jika agent_os_sub_type berisi "Windows" |
Perlu bantuan lain? Dapatkan jawaban dari anggota Komunitas dan profesional Google SecOps.