Mengumpulkan log CyberArk PAM

Didukung di:

Kode parser ini pertama-tama mengekstrak kolom dari pesan syslog CyberArk Privileged Access Manager (PAM) menggunakan ekspresi reguler. Kemudian, alat ini memetakan kolom yang diekstrak ke model data terpadu (UDM), memperkaya data dengan konteks tambahan, dan menstandarkan jenis peristiwa berdasarkan kriteria tertentu.

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 balik proxy, pastikan port firewall terbuka.

Mendapatkan file autentikasi penyerapan Google SecOps

  1. Login ke konsol Google SecOps.
  2. Buka Setelan SIEM > Agen Pengumpulan.
  3. Download File Autentikasi Proses Transfer.

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

  1. Untuk penginstalan Windows, jalankan skrip berikut:
    msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
  2. Untuk penginstalan Linux, jalankan skrip berikut:
    sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
  3. Opsi penginstalan tambahan dapat ditemukan di panduan penginstalan ini.

Mengonfigurasi Agen BindPlane untuk menyerap Syslog dan mengirim ke Google SecOps

  1. Akses komputer tempat BindPlane diinstal.
  2. Edit file config.yaml sebagai berikut:

    receivers:
        tcplog:
            # Replace the below port <54525> and IP <0.0.0.0> with your specific values
            listen_address: "0.0.0.0:54525" 
    
    exporters:
        chronicle/chronicle_w_labels:
            compression: gzip
            # Adjust the creds location below according the placement of the credentials file you downloaded
            creds: '{ json file for creds }'
            # Replace <customer_id> below with your actual ID that you copied
            customer_id: <customer_id>
            endpoint: malachiteingestion-pa.googleapis.com
            # You can apply ingestion labels below as preferred
            ingestion_labels:
            log_type: SYSLOG
            namespace: Cyberark_PAM
            raw_log_field: body
    service:
        pipelines:
            logs/source0__chronicle_w_labels-0:
                receivers:
                    - tcplog
                exporters:
                    - chronicle/chronicle_w_labels
    
  3. Mulai ulang Agen BindPlane untuk menerapkan perubahan:

    sudo systemctl restart bindplane
    

Mengonfigurasi Ekspor Syslog untuk CyberArk Vault

  1. Login ke server Vault.
  2. Buka file konfigurasi dbparm.ini, yang terletak di: C:\Program Files (x86)\CyberArk\Vault\Server\dbparm.ini.
  3. Tambahkan atau ubah parameter berikut:

    SyslogServer=<syslog_server_ip>
    SyslogPort=<syslog_server_port>
    SyslogProtocol=<TCP or UDP>
    SyslogFormat=Syslog
    
  4. Simpan file dbparm.ini.

  5. Mulai ulang Server Vault:

    net stop CyberArkVault
    net start CyberArkVault
    

Mengonfigurasi Ekspor Syslog di PVWA

  1. Login ke Server PVWA.
  2. Buka file Web.config, yang terletak di: C:\inetpub\wwwroot\PasswordVault\
  3. Tambahkan atau ubah kunci berikut:

    <add key="SyslogServer" value="<syslog_server_ip>" />
    <add key="SyslogPort" value="<syslog_server_port>" />
    <add key="SyslogProtocol" value="<TCP or UDP>" />
    <add key="SyslogFormat" value="Syslog" />
    
  4. Simpan perubahan ke file Web.config.

  5. Mulai ulang layanan IIS:

    iisreset
    

Mengonfigurasi Ekspor Syslog di PTA

  1. Akses server PTA menggunakan SSH.
  2. Buka file application.properties, yang terletak di: /opt/cta/config/application.properties
  3. Tambahkan atau ubah baris berikut:

    syslog.server.ip=<syslog_server_ip>
    syslog.server.port=<syslog_server_port>
    syslog.protocol=<TCP or UDP>
    
  4. Simpan file application.properties.

  5. Mulai ulang layanan PTA untuk menerapkan perubahan:

    sudo service pta restart
    

Tabel Pemetaan UDM

Kolom Log Pemetaan UDM Logika
tindakan metadata.description Dipetakan langsung dari kolom act.
cn1 additional.fields.value.string_value Dipetakan langsung dari kolom cn1 jika cn1Label tidak kosong.
cn1Label additional.fields.key Dipetakan langsung dari kolom cn1Label jika cn1 tidak kosong.
cn2 additional.fields.value.string_value Dipetakan langsung dari kolom cn2 jika cn2Label tidak kosong.
cn2Label additional.fields.key Dipetakan langsung dari kolom cn2Label jika cn2 tidak kosong.
cs1 additional.fields.value.string_value Dipetakan langsung dari kolom cs1 jika cs1Label tidak kosong.
cs1Label additional.fields.key Dipetakan langsung dari kolom cs1Label jika cs1 tidak kosong.
cs2 additional.fields.value.string_value Dipetakan langsung dari kolom cs2 jika cs2Label tidak kosong.
cs2Label additional.fields.key Dipetakan langsung dari kolom cs2Label jika cs2 tidak kosong.
cs3 additional.fields.value.string_value Dipetakan langsung dari kolom cs3 jika cs3Label tidak kosong.
cs3Label additional.fields.key Dipetakan langsung dari kolom cs3Label jika cs3 tidak kosong.
cs4 additional.fields.value.string_value Dipetakan langsung dari kolom cs4 jika cs4Label tidak kosong.
cs4Label additional.fields.key Dipetakan langsung dari kolom cs4Label jika cs4 tidak kosong.
cs5 additional.fields.value.string_value Dipetakan langsung dari kolom cs5 jika cs5Label tidak kosong.
cs5Label additional.fields.key Dipetakan langsung dari kolom cs5Label jika cs5 tidak kosong.
dhost target.hostname Dipetakan dari kolom dhost jika bukan alamat IP. Jika kosong, dhost akan dipetakan dari shost (IP atau nama host).
dhost target.asset.hostname Dipetakan dari kolom dhost jika bukan alamat IP. Jika kosong, dhost akan dipetakan dari shost (IP atau nama host).
dhost target.ip Dipetakan dari kolom dhost jika berupa alamat IP.
dhost target.asset.ip Dipetakan dari kolom dhost jika berupa alamat IP.
duser target.user.userid Dipetakan langsung dari kolom duser.
dvc intermediary.ip Dipetakan dari kolom dvc jika berupa alamat IP.
externalId metadata.product_log_id Dipetakan langsung dari kolom externalId.
fname target.file.full_path Dipetakan langsung dari kolom fname.
nama metadata.event_type Digunakan untuk menentukan event_type berdasarkan kombinasi kolom name, shost, dan dhost. Nilai yang mungkin: USER_CHANGE_PASSWORD, FILE_READ, USER_LOGIN, FILE_OPEN, FILE_DELETION. Jika tidak ditemukan kecocokan, dan has_principal bernilai benar dan has_target bernilai salah, event_type akan ditetapkan ke STATUS_UPDATE. Jika tidak, nilai defaultnya adalah GENERIC_EVENT.
prin_hostname principal.hostname Dipetakan langsung dari kolom prin_hostname. Jika kosong, alamat ini akan dipetakan dari shost jika shost bukan alamat IP.
prin_hostname principal.asset.hostname Dipetakan langsung dari kolom prin_hostname. Jika kosong, alamat ini akan dipetakan dari shost jika shost bukan alamat IP.
prin_ip principal.ip Dipetakan langsung dari kolom prin_ip. Jika kosong, alamat akan dipetakan dari shost jika shost adalah alamat IP.
prin_ip principal.asset.ip Dipetakan langsung dari kolom prin_ip. Jika kosong, alamat akan dipetakan dari shost jika shost adalah alamat IP.
produk metadata.product_name Dipetakan langsung dari kolom product. Setelan defaultnya adalah "PAM" jika tidak ada dalam log.
alasan security_result.description Dipetakan langsung dari kolom reason.
tingkat keseriusan, security_result.severity Dipetakan dari kolom severity berdasarkan logika berikut: 1-3: INFORMASI, 4: ERROR, 5: KRITIS.
shost principal.hostname Dipetakan ke prin_hostname jika prin_hostname kosong dan shost bukan alamat IP.
shost principal.asset.hostname Dipetakan ke prin_hostname jika prin_hostname kosong dan shost bukan alamat IP.
shost principal.ip Dipetakan ke prin_ip jika prin_ip kosong dan shost adalah alamat IP.
shost principal.asset.ip Dipetakan ke prin_ip jika prin_ip kosong dan shost adalah alamat IP.
shost target.hostname Dipetakan ke target.hostname jika dhost kosong dan shost bukan alamat IP.
shost target.asset.hostname Dipetakan ke target.hostname jika dhost kosong dan shost bukan alamat IP.
shost target.ip Dipetakan ke target.ip jika dhost kosong dan shost adalah alamat IP.
shost target.asset.ip Dipetakan ke target.ip jika dhost kosong dan shost adalah alamat IP.
status additional.fields.value.string_value Dipetakan langsung dari kolom status.
pengguna principal.user.userid Dipetakan dari kolom suser. Jika kosong, duser akan dianggap sebagai ID pengguna target.
waktu metadata.event_timestamp.seconds Dipetakan langsung dari kolom time setelah dikonversi ke format stempel waktu.
waktu metadata.event_timestamp.nanos Dipetakan langsung dari kolom time setelah dikonversi ke format stempel waktu.
vendor metadata.vendor_name Dipetakan langsung dari kolom vendor. Defaultnya adalah "CYBERARK" jika tidak ada dalam log.
versi metadata.product_version Dipetakan langsung dari kolom version.
metadata.log_type Di-hardcode ke "CYBERARK_PAM".
extensions.auth.mechanism Tetapkan ke "USERNAME_PASSWORD" jika event_type adalah "USER_LOGIN".

Perubahan

2024-05-05

  • Parser yang baru dibuat.