Mengumpulkan log Akeyless Vault

Didukung di:

Dokumen ini menjelaskan cara menyerap log Akeyless Vault ke Google Security Operations menggunakan penyerapan langsung atau Bindplane. Parser terlebih dahulu menormalisasi pesan log, yang dapat berupa format key-value atau JSON, ke dalam struktur yang konsisten. Kemudian, kolom yang relevan diekstrak dan dipetakan ke skema Model Data Terpadu (UDM), yang mengategorikan jenis peristiwa berdasarkan keberadaan alamat IP dan tindakan yang dilakukan.

Sebelum memulai

Pastikan Anda memenuhi prasyarat berikut:

  • Instance Google SecOps
  • Akses istimewa ke Akeyless Vault

Mendapatkan file autentikasi penyerapan Google SecOps

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

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.

Mengonfigurasi penerusan log untuk penyerapan langsung ke Google SecOps di Akeyless Vault

  1. Login ke UI web Akeyless Gateway Anda.
  2. Buka Penerusan Log.
  3. Pilih Aktifkan.
  4. Berikan detail konfigurasi berikut:
    • Format Log: Pilih JSON.
    • Server Log Audit: Masukkan https://audit.akeyless.io/.
    • Layanan: Pilih Google Chronicle.
    • Kunci Akun Layanan: Berikan file JSON yang menyimpan kredensial akun layanan.
    • Customer ID: Masukkan ID unik Google SecOps Anda.
    • Region: Masukkan region tempat Google SecOps Anda disediakan.
    • Log Type: Masukkan AKEYLESS_VAULT.
  5. Klik Simpan Perubahan.

Opsional: Mengirimkan Syslog melalui Bindplane

Penginstalan Bindplane 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 Bindplane 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

Untuk opsi penginstalan tambahan, lihat panduan penginstalan.

Mengonfigurasi agen BindPlane untuk menyerap Syslog dan mengirimkannya ke Google SecOps

  1. 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).
  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: 'AKEYLESS_VAULT'
                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 Bindlane 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 penerusan Syslog ke Bindplane di Akeyless Vault

  1. Login ke UI web Akeyless Gateway Anda.
  2. Buka Penerusan Log.
  3. Pilih Aktifkan.
  4. Berikan detail konfigurasi berikut:
    • Format Log: Pilih JSON.
    • Server Log Audit: Masukkan https://audit.akeyless.io/.
    • Layanan: Pilih Syslog.
    • Jaringan Syslog: Pilih UDP. (Anda dapat memilih opsi lain, bergantung pada konfigurasi agen Bindplane).
    • Host Syslog: Masukkan alamat IP agen Bindplane.
    • Syslog Formatter: Pilih Text.
    • (Opsional) TLS: Centang kotak TLS dan upload Sertifikat TLS.
  5. Klik Simpan Perubahan.

Tabel pemetaan UDM

Kolom Log Pemetaan UDM Logika
access_id read_only_udm.metadata.product_log_id Dipetakan langsung dari kolom access_id. Jika tidak ada, diekstrak dari kolom message menggunakan regex access_id:\s+(?<accessid>[\w-]+).
account_id read_only_udm.target.user.userid Dipetakan langsung dari kolom account_id.
tindakan read_only_udm.security_result.action_details Dipetakan langsung dari kolom action.
komponen read_only_udm.target.resource.name Dipetakan langsung dari kolom component.
durasi read_only_udm.network.session_duration.seconds Dipetakan langsung dari kolom duration dan dikonversi menjadi bilangan bulat.
remote_addr read_only_udm.principal.ip Diekstrak dari kolom remote_addr, dipisahkan dengan koma, dan ditambahkan ke array principal.ip.
request_parameters.access_type read_only_udm.target.resource.attribute.labels.value (dengan key adalah 'access_type') Dipetakan langsung dari kolom request_parameters.access_type. Jika tidak ada, diekstrak dari kolom message menggunakan regex access_type:\s+(?<accesstype>[\S]+).
request_parameters.comment read_only_udm.target.resource.attribute.labels.value (dengan kunci adalah 'comment') Dipetakan langsung dari kolom request_parameters.comment.
request_parameters.operation read_only_udm.target.resource.attribute.labels.value (dengan kunci adalah 'operation') Dipetakan langsung dari kolom request_parameters.operation.
request_parameters.product read_only_udm.target.resource.attribute.labels.value (dengan kunci 'product') Dipetakan langsung dari kolom request_parameters.product. Jika tidak ada, diekstrak dari kolom message menggunakan regex product:\s+(?<product>[\w\s]+).
request_parameters.token_id read_only_udm.target.resource.attribute.labels.value (dengan kunci adalah 'token_id') Dipetakan langsung dari kolom request_parameters.token_id.
request_parameters.transaction_type read_only_udm.target.resource.attribute.labels.value (dengan key adalah 'transaction_type') Dipetakan langsung dari kolom request_parameters.transaction_type dan dikonversi menjadi string. Jika tidak ada, diekstrak dari kolom message menggunakan regex transaction_type:\s+(?<transactiontype>[\S]+).
request_parameters.unique_id read_only_udm.target.resource.attribute.labels.value (dengan kunci 'unique_id') Dipetakan langsung dari kolom request_parameters.unique_id. Jika tidak ada, diekstrak dari kolom message menggunakan regex unique_id:\s+(?<uniqueid>[\w-]+).
request_parameters.universal_identity_rotate_type read_only_udm.target.resource.attribute.labels.value (dengan key adalah 'universal_identity_rotate_type') Dipetakan langsung dari kolom request_parameters.universal_identity_rotate_type.
request_parameters.user_agent read_only_udm.target.resource.attribute.labels.value (dengan kunci adalah 'user_agent') Dipetakan langsung dari kolom request_parameters.user_agent.
tingkat keseriusan, Dipetakan langsung dari kolom severity.
status read_only_udm.network.http.response_code Dipetakan langsung dari kolom status dan dikonversi menjadi bilangan bulat.
timestamp read_only_udm.metadata.event_timestamp Dipetakan langsung dari kolom timestamp entri log.
read_only_udm.metadata.log_type Hardcode ke AKEYLESS_VAULT.
read_only_udm.metadata.event_type Ditetapkan ke STATUS_UPDATE jika ip_present benar (true), jika tidak, secara default akan ditetapkan ke GENERIC_EVENT.
read_only_udm.metadata.vendor_name Diekstrak dari kolom message menggunakan regex CEF:0|%{DATA:device_vendor}|%{DATA:device_product}|%{DATA:device_version}|%{DATA:device_event_class_id}\s+%{WORD}\[%{INT}\]:\s+%{GREEDYDATA:kv_data}.
read_only_udm.metadata.product_name Diekstrak dari kolom message menggunakan regex CEF:0|%{DATA:device_vendor}|%{DATA:device_product}|%{DATA:device_version}|%{DATA:device_event_class_id}\s+%{WORD}\[%{INT}\]:\s+%{GREEDYDATA:kv_data}.
read_only_udm.metadata.product_version Diekstrak dari kolom message menggunakan regex CEF:0|%{DATA:device_vendor}|%{DATA:device_product}|%{DATA:device_version}|%{DATA:device_event_class_id}\s+%{WORD}\[%{INT}\]:\s+%{GREEDYDATA:kv_data}.
read_only_udm.metadata.product_event_type Diekstrak dari kolom message menggunakan regex <%{INT}>%{TIMESTAMP_ISO8601:time}\s+%{DATA}\s+(?P<product_event_type>[\w-]+)\[%{INT}\]:\s+(?P<time2>\d{1,2}-%{MONTH}-\d{1,4}\s+\d{1,2}:\d{1,2}:\d{1,2}.\d+)\s+%{WORD}\s+%{WORD:severity}\s+CEF:0|%{DATA:device_vendor}|%{DATA:device_product}|%{DATA:device_version}|%{DATA:device_event_class_id}\s+%{WORD}\[%{INT}\]:\s+%{GREEDYDATA:kv_data}.
read_only_udm.target.namespace Diekstrak dari kolom message menggunakan regex namespace:\s+(?<namespace>[\S]+).
read_only_udm.security_result.severity Dipetakan dari kolom severity: Info ke INFORMATIONAL, Error ke ERROR, Warning ke MEDIUM, atau UNKNOWN_SEVERITY.
read_only_udm.network.http.method Dipetakan dari kolom action: get ke GET, put dan Authentication ke PUT, post ke POST, delete ke DELETE.

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