Mengumpulkan log Traps Palo Alto Networks

Didukung di:

Dokumen ini menjelaskan cara mengumpulkan log Palo Alto Networks Traps ke Google Security Operations menggunakan BindPlane. Parser menangani log dalam format CSV dan key-value, lalu mengubahnya menjadi UDM. Proses ini menggunakan parsing grok dan CSV untuk mengekstrak kolom, melakukan logika bersyarat berdasarkan pesan log atau nilai kolom tertentu untuk dipetakan ke kolom UDM, dan menangani berbagai jenis peristiwa seperti pembaruan status, pemindaian jaringan, dan pembuatan proses.

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 Cortex XDR.

Mendapatkan file autentikasi penyerapan Google SecOps

  1. Login ke konsol Google SecOps.
  2. Buka Setelan SIEM > Agen Pengumpulan.
  3. Download File Autentikasi Penyerapan. Simpan file dengan aman di sistem tempat BindPlane akan diinstal.

Mendapatkan ID pelanggan Google SecOps

  1. Login ke konsol Google SecOps.
  2. Buka Setelan SIEM > Profil.
  3. Salin dan simpan ID Pelanggan dari bagian Detail Organisasi.

Menginstal agen Bindplane

Penginstalan Windows

  1. Buka Command Prompt atau PowerShell sebagai administrator.
  2. Jalankan perintah berikut:

    msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
    

Penginstalan Linux

  1. Buka terminal dengan hak istimewa root atau sudo.
  2. 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

Mengonfigurasi agen BindPlane untuk menyerap Syslog dan mengirimkannya ke Google SecOps

  1. Akses file konfigurasi:

    1. Cari file config.yaml. Biasanya, file ini berada di direktori /etc/bindplane-agent/ di Linux atau di direktori penginstalan di Windows.
    2. Buka file menggunakan editor teks (misalnya, nano, vi, atau Notepad).
  2. 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: PAN_EDR
                raw_log_field: body
    
    service:
        pipelines:
            logs/source0__chronicle_w_labels-0:
                receivers:
                    - udplog
                exporters:
                    - chronicle/chronicle_w_labels
    
  3. Ganti port dan alamat IP sesuai kebutuhan di infrastruktur Anda.

  4. Ganti <customer_id> dengan ID pelanggan yang sebenarnya.

  5. 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 Traps Palo Alto Networks

  1. Login ke konsol Cortex XDR ESM.
  2. Pilih Settings > ESM > Syslog.
  3. Centang kotak Enable syslog.
  4. Berikan detail konfigurasi berikut:
    • Server syslog: masukkan alamat IP agen Bindplane.
    • Port syslog: masukkan nomor port yang dikonfigurasi di Bindplane; misalnya, 514.
    • Protokol Syslog: pilih CEF.
    • Tetapkan Keep-alive timeout sebagai 0.
    • Protokol komunikasi: pilih UDP.
  5. Di bagian Peristiwa keamanan, centang kotak berikut:
    • Acara pencegahan
    • Peristiwa notifikasi
    • Peristiwa pasca-deteksi
  6. Klik Periksa konektivitas > Simpan.

Tabel Pemetaan UDM

Kolom Log Pemetaan UDM Logika
agentId event.idm.read_only_udm.additional.fields.value.string_value Nilai agentId dari log mentah dipetakan ke kolom string_value dalam struktur bertingkat di bagian additional.fields. key untuk kolom ini ditetapkan ke Agent ID.
agentIp event.idm.read_only_udm.target.ip Nilai agentIp dari log mentah dipetakan ke kolom target.ip.
cat event.idm.read_only_udm.security_result.rule_name Nilai cat dari log mentah dipetakan ke kolom security_result.rule_name.
class event.idm.read_only_udm.security_result.category_details Digunakan bersama dengan subClass untuk mengisi security_result.category_details dengan format class: subClass.
cs1 event.idm.read_only_udm.principal.application, event.idm.read_only_udm.principal.user.email_addresses Jika cs1Label adalah email, dan cs1 adalah alamat email yang valid, maka alamat email tersebut dipetakan ke principal.user.email_addresses. Jika cs1Label adalah Initiated by, maka dipetakan ke principal.application.
cs2 event.idm.read_only_udm.principal.process.command_line, event.idm.read_only_udm.security_result.description Jika cs2Label adalah subtype, maka dipetakan ke security_result.description. Jika cs2Label adalah Initiator CMD, maka dipetakan ke principal.process.command_line.
cs3 event.idm.read_only_udm.security_result.action_details Jika cs3Label adalah result, maka dipetakan ke security_result.action_details.
customerId event.idm.read_only_udm.additional.fields.value.string_value Nilai customerId dari log mentah dipetakan ke kolom string_value dalam struktur bertingkat di bagian additional.fields. key untuk kolom ini ditetapkan ke Customer ID.
date_time event.idm.read_only_udm.metadata.event_timestamp.seconds Diuraikan dan dikonversi menjadi stempel waktu, lalu dipetakan ke metadata.event_timestamp.seconds.
desc event.idm.read_only_udm.metadata.description Nilai desc dari log mentah dipetakan ke kolom metadata.description.
deviceName event.idm.read_only_udm.target.hostname Nilai deviceName dari log mentah dipetakan ke kolom target.hostname.
email_receiver event.idm.read_only_udm.network.email.to Diekstrak dari kolom msg jika berisi alamat email dan dipetakan ke network.email.to.
endpoint_desc event.idm.read_only_udm.target.resource.attribute.labels.value Berasal dari isEndpoint: Yes, host is an endpoint. jika isEndpoint adalah 1, No, host is not an endpoint jika isEndpoint adalah 0. key disetel ke Is Endpoint.
eventType event.idm.read_only_udm.metadata.product_event_type, event.idm.read_only_udm.metadata.event_type Nilai eventType dari log mentah dipetakan ke kolom metadata.product_event_type. Juga digunakan untuk mendapatkan metadata.event_type berdasarkan nilainya (misalnya, Management Audit Logs menghasilkan EMAIL_TRANSACTION, XDR Analytics BIOC, atau Behavioral Threat menghasilkan SCAN_NETWORK).
facility event.idm.read_only_udm.additional.fields.value.string_value Nilai facility dari log mentah dipetakan ke kolom string_value dalam struktur bertingkat di bagian additional.fields. key untuk kolom ini ditetapkan ke Facility.
fileHash event.idm.read_only_udm.principal.process.file.sha256 Nilai fileHash dari log mentah, yang dikonversi menjadi huruf kecil, dipetakan ke kolom principal.process.file.sha256.
filePath event.idm.read_only_udm.principal.process.file.full_path Nilai filePath dari log mentah dipetakan ke kolom principal.process.file.full_path.
friendlyName event.idm.read_only_udm.metadata.description Nilai friendlyName dari log mentah dipetakan ke kolom metadata.description.
interm_ip event.idm.read_only_udm.intermediary.ip Nilai interm_ip dari log mentah dipetakan ke kolom intermediary.ip.
isEndpoint event.idm.read_only_udm.target.resource.attribute.labels.value Digunakan untuk mendapatkan target.resource.attribute.labels.value.
isVdi event.idm.read_only_udm.target.resource.resource_type Jika isVdi adalah 1, target.resource.resource_type akan ditetapkan ke VIRTUAL_MACHINE.
msg event.idm.read_only_udm.security_result.summary Nilai msg dari log mentah dipetakan ke kolom security_result.summary. Juga digunakan untuk mengekstrak email_receiver.
msgTextEn event.idm.read_only_udm.security_result.description Nilai msgTextEn dari log mentah dipetakan ke kolom security_result.description.
osType event.idm.read_only_udm.target.platform, event.idm.read_only_udm.target.resource.attribute.labels.value Jika osType adalah 1, target.platform akan ditetapkan ke WINDOWS. Jika osType adalah 2, target.platform disetel ke MAC. Jika osType adalah 4, target.platform ditetapkan ke LINUX. Jika osType adalah 3, nilainya dipetakan ke target.resource.attribute.labels.value dengan key OS.
osVersion event.idm.read_only_udm.target.platform_version Nilai osVersion dari log mentah dipetakan ke kolom target.platform_version.
product_version event.idm.read_only_udm.metadata.product_version Nilai product_version dari log mentah dipetakan ke kolom metadata.product_version.
proto event.idm.read_only_udm.network.ip_protocol Jika proto adalah udp, network.ip_protocol ditetapkan ke UDP.
recordType event.idm.read_only_udm.additional.fields.value.string_value Nilai recordType dari log mentah dipetakan ke kolom string_value dalam struktur bertingkat di bagian additional.fields. key untuk kolom ini ditetapkan ke Record Type.
regionId event.idm.read_only_udm.principal.location.country_or_region Jika regionId adalah 10, principal.location.country_or_region ditetapkan ke Americas (N. Virginia). Jika regionId adalah 70, principal.location.country_or_region ditetapkan ke EMEA (Frankfurt).
request event.idm.read_only_udm.target.url Nilai request dari log mentah dipetakan ke kolom target.url.
sec_category_details event.idm.read_only_udm.security_result.category_details Nilai sec_category_details dari log mentah dipetakan ke kolom security_result.category_details.
sec_desc event.idm.read_only_udm.security_result.description Nilai sec_desc dari log mentah dipetakan ke kolom security_result.description.
serverHost event.idm.read_only_udm.principal.hostname Nilai serverHost dari log mentah dipetakan ke kolom principal.hostname.
severity event.idm.read_only_udm.security_result.severity Dipetakan ke security_result.severity dengan logika berikut: 2 -> KRITIS, 3 -> ERROR, 4 -> SEDANG, 5 -> RENDAH, 6 -> INFORMASI.
severity_val event.idm.read_only_udm.security_result.severity, event.idm.read_only_udm.security_result.severity_details Jika severity_val adalah 0, security_result.severity_details disetel ke UNKNOWN_SEVERITY. Jika tidak, akan dipetakan ke security_result.severity dengan logika berikut: 6 -> RENDAH, 8 -> SEDANG, 9 -> TINGGI.
shost event.idm.read_only_udm.principal.hostname Nilai shost dari log mentah dipetakan ke kolom principal.hostname.
src_ip event.idm.read_only_udm.principal.ip Nilai src_ip dari log mentah dipetakan ke kolom principal.ip.
subClass event.idm.read_only_udm.security_result.category_details Digunakan bersama dengan class untuk mengisi security_result.category_details.
suser event.idm.read_only_udm.principal.user.user_display_name Nilai suser dari log mentah, dengan tanda kurung, garis miring terbalik, dan tanda petik tunggal dihapus, dipetakan ke kolom principal.user.user_display_name.
targetprocesscmd event.idm.read_only_udm.target.process.command_line Nilai targetprocesscmd dari log mentah dipetakan ke kolom target.process.command_line.
targetprocessname event.idm.read_only_udm.target.application Nilai targetprocessname dari log mentah dipetakan ke kolom target.application.
targetprocesssha256 event.idm.read_only_udm.target.process.file.sha256 Nilai targetprocesssha256 dari log mentah, yang dikonversi menjadi huruf kecil, dipetakan ke kolom target.process.file.sha256.
tenantname event.idm.read_only_udm.target.resource.attribute.labels.value Nilai tenantname dari log mentah dipetakan ke kolom value dalam struktur bertingkat di bagian target.resource.attribute.labels. key untuk kolom ini ditetapkan ke Tenant name.
event.idm.read_only_udm.metadata.event_type Setel ke STATUS_UPDATE secara default. Diubah menjadi EMAIL_TRANSACTION jika eventType adalah Management Audit Logs. Diubah menjadi SCAN_NETWORK jika eventType adalah XDR Analytics BIOC atau Behavioral Threat, atau jika desc adalah Behavioral Threat. Diubah menjadi SCAN_PROCESS jika desc adalah Suspicious Process Creation. Tetapkan ke Palo Alto Networks. Tetapkan ke Cortex XDR. Tetapkan ke PAN_EDR. Setel ke NETWORK_SUSPICIOUS jika eventType adalah XDR Analytics BIOC atau Behavioral Threat, atau jika desc adalah Behavioral Threat.

Perlu bantuan lain? Dapatkan jawaban dari anggota Komunitas dan profesional Google SecOps.