Mengumpulkan log Aqua Security

Didukung di:

Ringkasan

Parser ini mengekstrak kolom dari log Aqua Security, dan mengubahnya menjadi Unified Data Model (UDM). Alat ini mengurai kolom message sebagai JSON, mengekstrak pengguna, IP sumber, dan kolom relevan lainnya, memetakan kolom tersebut ke kolom UDM, dan mengategorikan peristiwa berdasarkan kolom action, memperkaya data dengan konteks keamanan seperti nama aturan, deskripsi, dan detail CVE.

Sebelum memulai

  • Pastikan Anda memiliki instance Google Chronicle.
  • Pastikan Anda memiliki akses dengan hak istimewa ke konsol pengelolaan Aqua Security.

Mengonfigurasi feed di Google SecOps untuk menyerap log Aqua Security

  1. Buka Setelan SIEM > Feed.
  2. Klik Tambahkan baru.
  3. Di kolom Nama feed, masukkan nama untuk feed (misalnya, Aqua Security Logs).
  4. Pilih Webhook sebagai Jenis sumber.
  5. Pilih Aqua Security sebagai Jenis log.
  6. Klik Berikutnya.
  7. Opsional: Tentukan nilai untuk parameter input berikut:
    • Pemisah pemisahan: pembatas yang digunakan untuk memisahkan baris log, seperti \n.
    • Namespace aset: namespace aset.
    • Label penyerapan: label yang diterapkan ke peristiwa dari feed ini.
  8. Klik Berikutnya.
  9. Tinjau konfigurasi feed di layar Finalize, lalu klik Submit.
  10. Klik Buat Kunci Rahasia untuk membuat kunci rahasia guna mengautentikasi feed ini.
  11. Salin dan simpan kunci rahasia. Anda tidak dapat melihat kunci rahasia ini lagi. Jika perlu, Anda dapat membuat ulang kunci rahasia baru, tetapi tindakan ini akan membuat kunci rahasia sebelumnya tidak berlaku lagi.
  12. Dari tab Detail, salin URL endpoint feed dari kolom Endpoint Information. Anda perlu menentukan URL endpoint ini di aplikasi klien.
  13. Klik Done.

Membuat kunci API untuk feed webhook

  1. Buka Konsol Google Cloud > Kredensial.

    Buka Kredensial

  2. Klik Create credentials, lalu pilih API key.

  3. Batasi akses kunci API ke Chronicle API.

Menentukan URL endpoint

  1. Di aplikasi klien, tentukan URL endpoint HTTPS yang diberikan di feed webhook.
  2. Aktifkan autentikasi dengan menentukan kunci API dan kunci secret sebagai bagian dari header kustom dalam format berikut:

    X-goog-api-key = API_KEY
    X-Webhook-Access-Key = SECRET
    

    Rekomendasi: Tentukan kunci API sebagai header, bukan menentukannya di URL.

  3. Jika klien webhook Anda tidak mendukung header kustom, Anda dapat menentukan kunci API dan kunci rahasia menggunakan parameter kueri dalam format berikut:

    ENDPOINT_URL?key=API_KEY&secret=SECRET
    

    Ganti kode berikut:

    • ENDPOINT_URL: URL endpoint feed.
    • API_KEY: kunci API untuk mengautentikasi ke Google SecOps.
    • SECRET: kunci rahasia yang Anda buat untuk mengautentikasi feed.

Membuat Webhook di Aqua Security untuk Google SecOps

  1. Login ke konsol Aqua Security.
  2. Buka Setelan > Webhook Hasil Pemindaian Gambar.
  3. Centang kotak centang Enable sending image scan results.
  4. Masukkan <ENDPOINT_URL>, diikuti dengan <API_KEY> dan <SECRET>.
  5. Klik Simpan.

Tabel Pemetaan UDM

Kolom Log (Menaik) Pemetaan UDM Logika
jsonPayload.action metadata.event_type Dipetakan berdasarkan nilai 'jsonPayload.action'. Lihat kode parser untuk pemetaan tertentu.
jsonPayload.action security_result.summary Dipetakan secara langsung.
jsonPayload.adjective target.file.full_path Dipetakan langsung jika 'jsonPayload.container' kosong.
jsonPayload.category target.asset.category Dipetakan secara langsung.
jsonPayload.cfappname target.application Dipetakan secara langsung.
jsonPayload.cfspace principal.user.userid Dipetakan langsung jika 'jsonPayload.user' kosong.
jsonPayload.command principal.ip Diekstrak menggunakan pola grok "user %{GREEDYDATA:user_id} \(%{IP:src_ip}\)".
jsonPayload.command principal.user.userid Diekstrak menggunakan pola grok "user %{GREEDYDATA:user_id} \(%{IP:src_ip}\)".
jsonPayload.container target.asset.product_object_id Dipetakan secara langsung.
jsonPayload.data security_result.detection_fields Diurai sebagai key-value pair dan dipetakan ke setiap kolom dalam 'security_result.detection_fields'.
jsonPayload.description security_result.description Dipetakan langsung jika 'jsonPayload.reason' kosong.
jsonPayload.host principal.hostname Dipetakan secara langsung.
jsonPayload.hostgroup target.group.group_display_name Dipetakan secara langsung.
jsonPayload.hostid target.asset_id Dipetakan sebagai "ID host: %{jsonPayload.hostid}".
jsonPayload.hostip target.ip Dipetakan secara langsung.
jsonPayload.image target.file.full_path Dipetakan secara langsung.
jsonPayload.level security_result.action Tetapkan ke "ALLOW" jika 'jsonPayload.level' adalah "success".
jsonPayload.reason security_result.description Dipetakan secara langsung.
jsonPayload.rule security_result.rule_name Dipetakan secara langsung.
jsonPayload.user principal.user.userid Dipetakan secara langsung.
jsonPayload.vm_location target.asset.location.name Dipetakan secara langsung.
jsonPayload.vm_name target.resource.name Dipetakan secara langsung.
resource.labels.instance_id target.resource.id Dipetakan secara langsung.
resource.labels.project_id target.asset.attribute.cloud.project.id Dipetakan secara langsung.
resource.labels.zone target.asset.attribute.cloud.availability_zone Dipetakan secara langsung.
timestamp metadata.event_timestamp Dipetakan langsung setelah dikonversi ke format ISO8601.
extensions.auth.type Tetapkan ke "SSO" jika 'jsonPayload.description' berisi "SAML", jika tidak, tetapkan ke "AUTHTYPE_UNSPECIFIED" jika 'jsonPayload.action' adalah "login" atau "Login".
metadata.log_type Tetapkan ke "AQUA_SECURITY".
metadata.product_name Tetapkan ke "AQUA_SECURITY".
metadata.vendor_name Tetapkan ke "AQUA_SECURITY".
target.asset.attribute.cloud.environment Tetapkan ke "GOOGLE_CLOUD_PLATFORM".
target.resource.type Tetapkan ke "VIRTUAL_MACHINE".

Perubahan

2024-10-10

  • Peningkatan:
  • Menambahkan dukungan untuk log baru".