Mengumpulkan log Cloudflare WAF

Didukung di:

Dokumen ini menjelaskan cara mengumpulkan log Cloudflare WAF dengan menyiapkan feed Google Security Operations.

Untuk mengetahui informasi selengkapnya, lihat Penambahan data ke Google Security Operations.

Label penyerapan mengidentifikasi parser yang menormalisasi data log mentah ke format UDM terstruktur. Informasi dalam dokumen ini berlaku untuk parser dengan label transfer CLOUDFLARE_WAF.

Mengonfigurasi Cloudflare WAF menggunakan API

Setelah mengaktifkan log Cloudflare, gunakan parameter berikut untuk mengaktifkan integrasi:

  • Email autentikasi - alamat email akun Cloudflare.

  • Kunci autentikasi - token Cloudflare API.

  • ID Zona - ID zona Cloudflare.

Untuk mendapatkan ID Zona dan Kunci Autentikasi, lakukan langkah-langkah berikut:

  1. Login ke dasbor Cloudflare.
  2. Klik situs yang perlu dipantau.
  3. Klik Dapatkan kunci API Anda untuk mendapatkan Kunci Autentikasi.
  4. Pilih API Token.
  5. Klik Create Token.
  6. Berikan nilai berikut di halaman Create Token:
    1. Di kolom Token name, berikan nama token.
    2. Di bagian Permissions, lakukan tindakan berikut:
      1. Pilih Zone, Logs, dan Read di daftar pertama, kedua, dan ketiga.
      2. Klik Tambahkan lainnya. Pilih Zone, Analytics, dan Read di daftar pertama, kedua, dan ketiga.
      3. Klik Tambahkan lainnya. Pilih Zone, Firewall Services, dan Read di daftar pertama, kedua, dan ketiga.
      4. Di bagian Zone Resources, pilih Include dan All zones di daftar pertama dan kedua.
  7. Klik Lanjutkan ke Ringkasan.
  8. Klik Create Token.
  9. Salin token yang ditampilkan, yang diperlukan untuk mengonfigurasi feed Google Security Operations.

Mengonfigurasi Cloudflare WAF menggunakan dasbor Cloudflare

  1. Login ke dasbor Cloudflare.
  2. Klik situs yang perlu dipantau.
  3. Buka Analytics & Logs > Logpush.
  4. Pilih Buat tugas Logpush.
  5. Di Pilih tujuan, pilih Google Cloud Storage.
  6. Masukkan atau pilih detail tujuan berikut:
    • Bucket - Nama bucket Google Cloud
    • Jalur - lokasi bucket dalam penampung penyimpanan
    • Mengatur log ke dalam subfolder harian (direkomendasikan)
    • Untuk Memberi Cloudflare akses untuk mengupload file ke bucket Anda, pastikan bucket Anda telah menambahkan Cloudflare IAM sebagai pengguna dengan peran Storage Object Admin.
    • Setelah selesai memasukkan detail tujuan, pilih Lanjutkan.
  7. Untuk membuktikan kepemilikan, Cloudflare akan mengirimkan file ke tujuan yang Anda tentukan. Untuk menemukan token, pilih tombol Buka di tab Ringkasan pada file verifikasi kepemilikan, lalu tempelkan ke dasbor Cloudflare untuk memverifikasi akses Anda ke bucket. Masukkan Token Kepemilikan, lalu pilih Lanjutkan.
  8. Pilih set data yang akan dikirim ke layanan penyimpanan.
  9. Konfigurasi tugas Logpush Anda:
    • Masukkan Nama tugas.
    • Di bagian Jika log cocok, pilih peristiwa yang akan disertakan atau dihapus dari log Anda. Tidak semua set data memiliki opsi ini.
    • Di Kirim kolom berikut, pilih untuk mengirim semua log ke tujuan penyimpanan atau memilih log yang ingin Anda kirim secara selektif.
  10. Pilih Submit setelah selesai mengonfigurasi tugas Logpush.

Mengonfigurasi feed di Google Security Operations untuk menyerap log Cloudflare WAF

  1. Pilih Setelan SIEM > Feed.
  2. Klik Tambahkan baru.
  3. Masukkan nama unik untuk Nama feed.
  4. Pilih Google Cloud Storage sebagai Source Type.
  5. Pilih Cloudflare WAF sebagai Jenis Log.
  6. Klik Get Service Account. Google Security Operations menyediakan akun layanan unik yang digunakan Google Security Operations untuk menyerap data.
  7. Konfigurasikan akses untuk akun layanan guna mengakses objek Cloud Storage. Untuk mengetahui informasi selengkapnya, lihat Memberikan akses ke akun layanan Google Security Operations.
  8. Klik Berikutnya.
  9. Konfigurasikan parameter input berikut:
    • URI bucket penyimpanan
    • URI adalah
    • Opsi penghapusan sumber
  10. Klik Berikutnya, lalu klik Kirim.

Untuk informasi selengkapnya tentang feed Google Security Operations, lihat dokumentasi feed Google Security Operations. Untuk mengetahui informasi tentang persyaratan untuk setiap jenis feed, lihat Konfigurasi feed menurut jenis.

Jika Anda mengalami masalah saat membuat feed, hubungi dukungan Google Security Operations.

Referensi pemetaan kolom

Parser ini mengekstrak kolom dari log JSON Web Application Firewall (WAF) Cloudflare, yang mengubahnya menjadi Unified Data Model (UDM). Alat ini menangani berbagai kolom log, termasuk informasi jaringan, detail HTTP, hasil keamanan, dan metadata, dengan memetakan kolom tersebut ke kolom UDM yang sesuai untuk representasi dan analisis yang konsisten dalam Google Security Operations.

Tabel pemetaan UDM

Kolom Log Pemetaan UDM Logika
Tindakan security_result.action_details Nilai kolom "Action" log mentah dipetakan ke security_result.action_details.
Tindakan security_result.action Kolom security_result.action berasal dari nilai kolom "Action". "allow" memetakan ke ALLOW. "challengeSolved", "jschallengeSolved", "managedchallengenoninteractivesolved", dan "managedchallengeinteractivesolved" dipetakan ke ALLOW_WITH_MODIFICATION. "drop", "block", dan "connectionclose" dipetakan ke BLOCK. "challengefailed" dan "jschallengefailed" dipetakan ke FAIL. Nilai lain yang tidak kosong atau "tidak diketahui" akan dipetakan ke UNKNOWN_ACTION.
ClientASN network.asn Nilai kolom "ClientASN" log mentah dikonversi menjadi string dan dipetakan ke network.asn.
ClientASNDescription additional.fields.key Tetapkan ke "ClientASNDescription".
ClientASNDescription additional.fields.value.string_value Nilai kolom "ClientASNDescription" log mentah dipetakan ke additional.fields.value.string_value.
ClientCountry principal.location.country_or_region Nilai kolom "ClientCountry" log mentah dipetakan ke principal.location.country_or_region.
ClientIP principal.ip Nilai kolom "ClientIP" log mentah dipetakan ke principal.ip.
ClientRefererHost intermediary.hostname Nilai kolom "ClientRefererHost" log mentah dipetakan ke intermediary.hostname.
ClientRefererPath network.http.referral_url Nilai kolom "ClientRefererPath" log mentah dipetakan ke network.http.referral_url.
ClientRequestMethod network.http.method Nilai kolom "ClientRequestMethod" log mentah dipetakan ke network.http.method.
ClientRequestHost target.hostname Nilai kolom "ClientRequestHost" log mentah dipetakan ke target.hostname.
ClientRequestPath target.file.full_path Nilai kolom "ClientRequestPath" log mentah dipetakan ke target.file.full_path jika tidak kosong atau "/".
ClientRequestProtocol network.application_protocol Bagian protokol dari nilai kolom "ClientRequestProtocol" (mis., "HTTP" dari "HTTP/1.1") diekstrak, dikonversi ke huruf besar, dan dipetakan ke network.application_protocol.
ClientRequestUserAgent network.http.user_agent Nilai kolom "ClientRequestUserAgent" log mentah dipetakan ke network.http.user_agent.
Datetime metadata.event_timestamp Nilai kolom "Datetime" log mentah diuraikan sebagai stempel waktu RFC 3339 dan dipetakan ke metadata.event_timestamp.
EdgeColoCode additional.fields.key Tetapkan ke "EdgeColoCode".
EdgeColoCode additional.fields.value.string_value Nilai kolom "EdgeColoCode" log mentah dipetakan ke additional.fields.value.string_value.
EdgeResponseStatus network.http.response_code Nilai kolom "EdgeResponseStatus" log mentah dikonversi menjadi bilangan bulat dan dipetakan ke network.http.response_code.
Jenis metadata.product_event_type Nilai kolom "Jenis" log mentah dipetakan ke metadata.product_event_type.
Metadata.filter target.resource.attribute.labels.key Tetapkan ke "Filter metadata".
Metadata.filter target.resource.attribute.labels.value Nilai kolom "Metadata.filter" log mentah dipetakan ke target.resource.attribute.labels.value.
Metadata.type target.resource.attribute.labels.key Tetapkan ke "Jenis metadata".
Metadata.type target.resource.attribute.labels.value Nilai kolom "Metadata.type" log mentah dipetakan ke target.resource.attribute.labels.value.
RayID metadata.product_log_id Nilai kolom "RayID" log mentah dipetakan ke metadata.product_log_id.
RuleID security_result.rule_id Nilai kolom "RuleID" log mentah dipetakan ke security_result.rule_id.
Sumber security_result.rule_name Nilai kolom "Sumber" log mentah dipetakan ke security_result.rule_name.
T/A metadata.vendor_name Di-hardcode ke "Cloudflare".
T/A metadata.product_name Di-hardcode ke "Aggregator log Cloudflare".
T/A metadata.log_type Di-hardcode ke "CLOUDFLARE_WAF".
T/A metadata.event_type Ditentukan oleh logika parser berdasarkan keberadaan "ClientIP", "ClientRequestHost", dan nilai "app_protocol". Kemungkinan nilainya adalah NETWORK_HTTP, NETWORK_CONNECTION, STATUS_UPDATE, dan GENERIC_EVENT.

Perubahan

2023-08-30

  • Memulai kolom "ClientRequestPath".

2023-02-02

  • Memvalidasi nilai 'security_result' sebelum digabungkan ke peristiwa.

16-09-2022

  • Memetakan kolom 'Action' ke 'security_result.action_details'.
  • Memetakan 'security_result.action' ke 'ALLOW_WITH_MODIFICATION' saat tindakan berisi "challengeSolved", "jschallengeSolved", "managedchallengenoninteractivesolved", "managedchallengeinteractivesolved".
  • Memetakan 'security_result.action' ke 'BLOCK' saat tindakan berisi "drop", "block", "connectionclose".
  • Memetakan 'security_result.action' ke 'GAGAL' jika tindakan berisi "challengefailed", "jschallengefailed".

2022-07-25

  • Deskripsi- Parser yang baru dibuat