Mengumpulkan log audit Cisco Umbrella

Didukung di:

Dokumen ini menjelaskan cara mengumpulkan log audit Cisco Umbrella ke feed Google Security Operations menggunakan bucket AWS S3. Parser menormalisasi data log CSV mentah, menangani berbagai pemisah dan potensi inkonsistensi pemformatan. Kemudian, berdasarkan jenis log (DNS atau Audit), kolom yang diekstrak dipetakan ke skema UDM yang sesuai, sehingga memperkaya data dengan konteks tambahan dan menstandardisasi representasi untuk analisis lebih lanjut.

Sebelum memulai

  • Pastikan Anda memiliki instance Google SecOps.
  • Pastikan Anda memiliki akses istimewa ke AWS IAM dan S3.
  • Pastikan Anda memiliki akses istimewa ke Cisco Umbrella.

Mengonfigurasi bucket Amazon S3 yang dikelola Cisco

  1. Login ke dasbor Cisco Umbrella.
  2. Buka Admin > Pengelolaan log.
  3. Pilih opsi Gunakan bucket Amazon S3 yang dikelola Cisco.
  4. Berikan detail konfigurasi berikut:
    • Pilih region: pilih region yang lebih dekat dengan lokasi Anda untuk latensi yang lebih rendah.
    • Pilih durasi retensi: pilih jangka waktu. Durasi retensi adalah 7, 14, atau 30 hari. Setelah jangka waktu yang dipilih, data akan dihapus dan tidak dapat dipulihkan. Jika siklus penyerapan Anda teratur, gunakan jangka waktu yang lebih singkat. Anda dapat mengubah durasi retensi di lain waktu.
  5. Klik Simpan.
  6. Klik Lanjutkan untuk mengonfirmasi pilihan Anda dan menerima notifikasi aktivasi.
    Di jendela Activation complete yang muncul, nilai Access key dan Secret key ditampilkan.
  7. Salin nilai Access key dan Secret key. Jika Anda kehilangan kunci ini, Anda harus membuatnya ulang.
  8. Klik Oke > Lanjutkan.
  9. Halaman ringkasan menampilkan konfigurasi dan nama bucket Anda. Anda dapat menonaktifkan atau mengaktifkan logging sesuai kebutuhan organisasi Anda. Namun, log dihapus berdasarkan durasi retensi, terlepas dari penambahan data baru.

Opsional: Mengonfigurasi kunci akses pengguna untuk bucket AWS S3 yang dikelola sendiri

  1. Login ke AWS Management Console.
  2. Buat Pengguna dengan mengikuti panduan pengguna ini: Membuat pengguna IAM.
  3. Pilih Pengguna yang dibuat.
  4. Pilih tab Kredensial keamanan.
  5. Klik Create Access Key di bagian Access Keys.
  6. Pilih Layanan pihak ketiga sebagai Kasus penggunaan.
  7. Klik Berikutnya.
  8. Opsional: tambahkan tag deskripsi.
  9. Klik Create access key.
  10. Klik Download CSV file untuk menyimpan Access Key dan Secret Access Key untuk digunakan nanti.
  11. Klik Selesai.
  12. Pilih tab Izin.
  13. Klik Tambahkan izin di bagian Kebijakan izin.
  14. Pilih Tambahkan izin.
  15. Pilih Lampirkan kebijakan secara langsung.
  16. Telusuri dan pilih kebijakan AmazonS3FullAccess.
  17. Klik Berikutnya.
  18. Klik Add permissions.

Opsional: Mengonfigurasi bucket Amazon S3 yang dikelola sendiri

  1. Login ke AWS Management Console.

  2. Buka S3.

  3. Klik Create bucket.

  4. Berikan detail konfigurasi berikut:

    • Nama bucket: berikan nama untuk bucket Amazon S3.
    • Region: pilih region.
  5. Klik Buat.

Opsional: Mengonfigurasi kebijakan bucket untuk bucket AWS S3 yang dikelola sendiri

  1. Klik bucket yang baru dibuat untuk membukanya.
  2. Pilih Properti > Izin.
  3. Di daftar Permissions, klik Add bucket policy.
  4. Masukkan kebijakan bucket yang telah dikonfigurasi sebelumnya sebagai berikut:

    {
      "Version": "2008-10-17",
      "Statement": [
        {
          "Sid": "",
          "Effect": "Allow",
          "Principal": {
            "AWS": "arn:aws:iam::568526795995:user/logs"
          },
          "Action": "s3:PutObject",
          "Resource": "arn:aws:s3:::BUCKET_NAME/*"
        },
        {
          "Sid": "",
          "Effect": "Deny",
          "Principal": {
            "AWS": "arn:aws:iam::568526795995:user/logs"
          },
          "Action": "s3:GetObject",
          "Resource": "arn:aws:s3:::BUCKET_NAME/*"},
        {
          "Sid": "",
          "Effect": "Allow",
          "Principal": {
            "AWS": "arn:aws:iam::568526795995:user/logs"
          },
          "Action": "s3:GetBucketLocation",
          "Resource": "arn:aws:s3:::BUCKET_NAME"
        },
        {
          "Sid": "",
          "Effect": "Allow",
          "Principal": {
            "AWS": "arn:aws:iam::568526795995:user/logs"
          },
          "Action": "s3:ListBucket",
          "Resource": "arn:aws:s3:::BUCKET_NAME"
        }
      ]
    }
    
    • Ganti BUCKET_NAME dengan nama bucket Amazon S3 yang Anda berikan.
  5. Klik Simpan.

Opsional: Verifikasi yang Diperlukan untuk bucket Amazon S3 yang dikelola sendiri

  1. Di dasbor Cisco Umbrella, pilih Admin > Log management > Amazon S3.
  2. Di kolom Bucket name, tentukan nama bucket Amazon S3 Anda yang tepat, lalu klik Verify.
  3. Sebagai bagian dari proses verifikasi, file bernama README_FROM_UMBRELLA.txt diupload dari Cisco Umbrella ke bucket Amazon S3 Anda. Anda mungkin perlu memuat ulang browser untuk melihat file readme saat diupload.
  4. Download file README_FROM_UMBRELLA.txt, lalu buka menggunakan editor teks.
  5. Salin dan simpan token Cisco Umbrella unik dari file.
  6. Buka dasbor Cisco Umbrella.
  7. Di kolom Token number, tentukan token, lalu klik Save.
  8. Jika berhasil, Anda akan menerima pesan konfirmasi di dasbor yang menunjukkan bahwa bucket telah berhasil diverifikasi. Jika Anda menerima error yang menunjukkan bahwa bucket Anda tidak dapat diverifikasi, periksa kembali sintaks nama bucket dan tinjau konfigurasi.

Mengonfigurasi feed di Google SecOps untuk menyerap log Audit Cisco Umbrella

  1. Buka Setelan SIEM > Feed.
  2. Klik Tambahkan baru.
  3. Di kolom Feed name, masukkan nama untuk feed; misalnya, Cisco Umbrella Audit Logs.
  4. Pilih Amazon S3 V2 sebagai Jenis sumber.
  5. Pilih Cisco Umbrella Audit sebagai Jenis log.
  6. Klik Berikutnya.
  7. Tentukan nilai untuk parameter input berikut:

    • URI S3: URI bucket.
      • s3:/BUCKET_NAME
        • Ganti BUCKET_NAME dengan nama bucket yang sebenarnya.
    • Opsi penghapusan sumber: pilih opsi penghapusan sesuai preferensi Anda.
  8. Klik Berikutnya.

  9. Tinjau konfigurasi feed baru Anda di layar Selesaikan, lalu klik Kirim.

Tabel Pemetaan UDM

Kolom log Pemetaan UDM Logika
action_type security_result.action_details Dipetakan langsung dari kolom log mentah action_type.
action_type security_result.action Jika action_type berisi allow (tidak peka huruf besar/kecil), tetapkan ke ALLOW. Jika action_type berisi block (tidak peka huruf besar/kecil), tetapkan ke BLOCK.
additionalValue additional.fields{}.key Tetapkan ke Additional Value.
additionalValue additional.fields{}.value.string_value Dipetakan langsung dari kolom log mentah additionalValue.
blocked_categories additional.fields{}.key Tetapkan ke blocked_categories.
blocked_categories additional.fields{}.value.string_value Dipetakan langsung dari kolom log mentah blocked_categories.
kategori security_result.category_details Dipetakan langsung dari kolom log mentah categories, setelah dipisahkan dengan koma.
kolom1 metadata.product_log_id Dipetakan dari kolom log mentah column1 jika log adalah log audit.
kolom1 date_time Dipetakan dari kolom log mentah column1 jika log adalah log DNS.
column10 kategori Dipetakan langsung dari kolom log mentah column10.
column11 most_granular_identity_type Dipetakan langsung dari kolom log mentah column11.
column12 identity_types Dipetakan langsung dari kolom log mentah column12.
column13 blocked_categories Dipetakan langsung dari kolom log mentah column13.
kolom2 date_time Dipetakan dari kolom log mentah column2 jika log adalah log audit.
kolom2 most_granular_identity Dipetakan dari kolom log mentah column2 jika log adalah log DNS.
kolom3 principal.user.email_addresses Dipetakan dari kolom log mentah column3 jika log adalah log audit.
kolom3 identitas Dipetakan dari kolom log mentah column3 jika log adalah log DNS.
column4 principal.user.userid Dipetakan dari kolom log mentah column4 jika log adalah log audit.
column4 internal_ip Dipetakan dari kolom log mentah column4 jika log adalah log DNS.
column5 security_result.rule_name Dipetakan dari kolom log mentah column5 jika log adalah log audit.
column5 external_ip Dipetakan dari kolom log mentah column5 jika log adalah log DNS.
column6 action_type Dipetakan langsung dari kolom log mentah column6.
column7 principal.ip Dipetakan dari kolom log mentah column7 jika log adalah log audit.
column7 dns_query_type Dipetakan dari kolom log mentah column7 jika log adalah log DNS.
column8 additionalValue Dipetakan dari kolom log mentah column8 jika log adalah log audit.
column8 dns_response_code Dipetakan dari kolom log mentah column8 jika log adalah log DNS.
column9 domain Dipetakan langsung dari kolom log mentah column9.
date_time metadata.event_timestamp.seconds Stempel waktu epoch yang diekstrak dari kolom date_time.
dns_query_type network.dns.questions.type Diekstrak dari kolom dns_query_type menggunakan ekspresi reguler, dikonversi menjadi bilangan bulat.
dns_response_code network.dns.response_code Dipetakan dari kolom dns_response_code, dikonversi menjadi bilangan bulat berdasarkan nilai kode respons DNS.
domain network.dns.questions.name Dipetakan langsung dari kolom domain.
external_ip principal.ip Dipetakan dari kolom external_ip jika tidak kosong dan berbeda dari internal_ip.
identitas principal.location.name Dipetakan dari kolom identities jika kolom identity_types yang sesuai adalah Networks.
identitas principal.hostname Dipetakan dari kolom identities jika kolom identity_types yang sesuai adalah AD Computers, Roaming Computers, atau Anyconnect Roaming Client.
identitas principal.asset.hostname Dipetakan dari kolom identities jika kolom identity_types yang sesuai adalah AD Computers, Roaming Computers, atau Anyconnect Roaming Client.
identitas principal.location.city Dipetakan dari kolom identities jika kolom identity_types yang sesuai adalah Sites.
identity_types additional.fields{}.key Tetapkan ke identities_types.
identity_types additional.fields{}.value.string_value Dipetakan langsung dari kolom log mentah identity_types.
internal_ip principal.ip Dipetakan dari kolom internal_ip jika tidak kosong.
most_granular_identity additional.fields{}.key Tetapkan ke most_granular_identity.
most_granular_identity additional.fields{}.value.string_value Dipetakan langsung dari kolom log mentah most_granular_identity.
most_granular_identity_type additional.fields{}.key Tetapkan ke most_granular_identity_type.
most_granular_identity_type additional.fields{}.value.string_value Dipetakan langsung dari kolom log mentah most_granular_identity_type.
metadata.event_type Tetapkan ke NETWORK_DNS jika log adalah log DNS.
metadata.event_type Disetel ke STATUS_UPDATE jika log adalah log audit dan principal_ip tidak kosong.
metadata.event_type Disetel ke GENERIC_EVENT jika log adalah log audit dan principal_ip kosong.
metadata.vendor_name Tetapkan ke CISCO UMBERLLA.
metadata.product_name Tetapkan ke CISCO UMBERLLA.
metadata.log_type Tetapkan ke AUDITD.
network.application_protocol Tetapkan ke DNS jika log adalah log DNS.

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