Mengumpulkan log AWS Elastic MapReduce

Didukung di:

Dokumen ini menjelaskan cara menyerap log AWS Elastic MapReduce (EMR) ke Google Security Operations. AWS EMR adalah platform big data native cloud yang memproses data dalam jumlah besar dengan cepat. Dengan mengintegrasikan log EMR ke Google SecOps, Anda dapat menganalisis aktivitas cluster dan mendeteksi potensi ancaman keamanan.

Sebelum Memulai

  • Pastikan Anda memiliki instance Google Chronicle.
  • Pastikan Anda memiliki akses dengan hak istimewa ke AWS.

Mengonfigurasi bucket Amazon S3

  1. Buat bucket Amazon S3 dengan mengikuti panduan pengguna ini: Membuat bucket
  2. Simpan Nama dan Region bucket untuk digunakan nanti.
  3. Buat pengguna dengan mengikuti panduan pengguna ini: Membuat pengguna IAM.
  4. Pilih Pengguna yang dibuat.
  5. Pilih tab Kredensial keamanan.
  6. Klik Create Access Key di bagian Access Keys.
  7. Pilih Layanan pihak ketiga sebagai Kasus penggunaan.
  8. Klik Berikutnya.
  9. Opsional: tambahkan tag deskripsi.
  10. Klik Create access key.
  11. Klik Download file CSV untuk menyimpan Kunci Akses dan Kunci Akses Rahasia untuk digunakan nanti.
  12. Klik Selesai.
  13. Pilih tab Izin.
  14. Klik Tambahkan izin di bagian Kebijakan izin.
  15. Pilih Tambahkan izin.
  16. Pilih Lampirkan kebijakan secara langsung.
  17. Telusuri dan pilih kebijakan AmazonS3FullAccess dan CloudWatchLogsFullAccess.
  18. Klik Berikutnya.
  19. Klik Tambahkan izin.

Mengonfigurasi AWS EMR untuk Meneruskan Log

  1. Login ke AWS Management Console.
  2. Di kotak penelusuran, ketik EMR, lalu pilih Amazon EMR dari daftar layanan.
  3. Klik Cluster.
  4. Cari dan pilih cluster EMR yang ingin Anda aktifkan logging-nya.
  5. Klik Edit di halaman Cluster details.
  6. Di layar Edit Cluster, buka bagian Logging.
  7. Pilih Aktifkan logging.
  8. Tentukan bucket S3 tempat log akan disimpan.
  9. Tentukan URI S3 dalam format s3://your-bucket-name/ (ini akan menyimpan semua log EMR di root bucket).
  10. Pilih jenis log berikut:
    • Step logs
    • Application logs
    • YARN logs
    • System logs
    • HDFS Logs (jika Anda menggunakan Hadoop)
  11. Klik Simpan.

Mengonfigurasi feed di Google SecOps untuk menyerap log AWS EMR

  1. Buka Setelan SIEM > Feed.
  2. Klik Tambahkan baru.
  3. Di kolom Feed name, masukkan nama untuk feed (misalnya, AWS EMR Logs).
  4. Pilih Amazon S3 sebagai Source type.
  5. Pilih AWS EMR sebagai Jenis log.
  6. Klik Berikutnya.
  7. Tentukan nilai untuk parameter input berikut:

    • Region: region tempat bucket Amazon S3 berada.
    • S3 URI: URI bucket.
      • s3://your-log-bucket-name/
        • Ganti your-log-bucket-name dengan nama bucket yang sebenarnya.
    • URI adalah: pilih Direktori atau Direktori yang menyertakan subdirektori.
    • Opsi penghapusan sumber: pilih opsi penghapusan sesuai preferensi Anda.

    • Access Key ID: Kunci akses pengguna dengan akses ke bucket S3.

    • Kunci Akses Rahasia: kunci rahasia Pengguna dengan akses ke bucket S3.

    • Namespace aset: namespace aset.

    • Label penyerapan: label yang akan diterapkan ke peristiwa dari feed ini.

  8. Klik Berikutnya.

  9. Tinjau konfigurasi feed baru Anda di layar Finalize, lalu klik Submit.

Tabel Pemetaan UDM

Kolom Log Pemetaan UDM Logika
app_id additional.fields[].key Nilai "APP" ditetapkan melalui parser
app_id additional.fields[].value.string_value Dipetakan langsung dari kolom APP dalam log mentah.
app_name additional.fields[].key Nilai "APPNAME" ditetapkan melalui parser
app_name additional.fields[].value.string_value Dipetakan langsung dari kolom APPNAME dalam log mentah.
blockid additional.fields[].key Nilai "blockid" ditetapkan melalui parser
blockid additional.fields[].value.string_value Dipetakan langsung dari kolom blockid dalam log mentah.
bytes network.received_bytes Dipetakan langsung dari kolom bytes dalam log mentah, yang dikonversi menjadi bilangan bulat tanpa tanda tangan.
cliID additional.fields[].key Nilai "cliID" ditetapkan melalui parser
cliID additional.fields[].value.string_value Dipetakan langsung dari kolom cliID dalam log mentah.
cmd target.process.command_line Dipetakan langsung dari kolom cmd dalam log mentah.
comp_name additional.fields[].key Nilai "COMP" ditetapkan melalui parser
comp_name additional.fields[].value.string_value Dipetakan langsung dari kolom COMP dalam log mentah.
configuration_version additional.fields[].key Nilai "configuration_version" ditetapkan melalui parser
configuration_version additional.fields[].value.string_value Dipetakan langsung dari kolom configuration_version dalam log mentah, yang dikonversi menjadi string.
containerID additional.fields[].key Nilai "containerID" ditetapkan melalui parser
containerID additional.fields[].value.string_value Dipetakan langsung dari kolom CONTAINERID dalam log mentah.
description security_result.description Dipetakan langsung dari kolom description dalam log mentah.
dfs.FSNamesystem.* additional.fields[].key Kunci dibuat dengan menggabungkan "dfs.FSNamesystem." dengan kunci dari data JSON.
dfs.FSNamesystem.* additional.fields[].value.string_value Nilai dipetakan langsung dari nilai yang sesuai dalam objek JSON dfs.FSNamesystem, yang dikonversi menjadi string.
duration additional.fields[].key Nilai "duration" ditetapkan melalui parser
duration additional.fields[].value.string_value Dipetakan langsung dari kolom duration dalam log mentah.
duration network.session_duration.seconds Dipetakan langsung dari kolom duration dalam log mentah, yang dikonversi menjadi bilangan bulat.
environment additional.fields[].key Nilai "environment" ditetapkan melalui parser
environment additional.fields[].value.string_value Dipetakan langsung dari kolom environment dalam log mentah. Diekstrak dari kolom ip_port menggunakan grok dan manipulasi string. Diekstrak dari kolom ip_port menggunakan grok dan manipulasi string, yang dikonversi menjadi bilangan bulat.
event_type metadata.event_type Ditentukan oleh logika parser berdasarkan keberadaan informasi principal dan target. Dapat berupa NETWORK_CONNECTION, USER_RESOURCE_ACCESS, STATUS_UPDATE, atau GENERIC_EVENT.
file_path target.file.full_path Dipetakan langsung dari kolom file_path dalam log mentah.
host principal.hostname Dipetakan langsung dari kolom host dalam log mentah.
host target.hostname Dipetakan langsung dari kolom host dalam log mentah.
host_ip principal.ip Dipetakan langsung dari kolom host_ip dalam log mentah.
host_port principal.port Dipetakan langsung dari kolom host_port dalam log mentah, yang dikonversi menjadi bilangan bulat.
http_url target.url Dipetakan langsung dari kolom http_url dalam log mentah.
index additional.fields[].key Nilai "index" ditetapkan melalui parser
index additional.fields[].value.string_value Dipetakan langsung dari kolom index dalam log mentah.
kind metadata.product_event_type Dipetakan langsung dari kolom kind dalam log mentah. Nilai "AWS_EMR" ditetapkan melalui parser Nilai "AWS EMR" ditetapkan melalui parser Nilai "AMAZON" ditetapkan melalui parser
offset additional.fields[].key Nilai "offset" ditetapkan melalui parser
offset additional.fields[].value.string_value Dipetakan langsung dari kolom offset dalam log mentah.
op metadata.product_event_type Dipetakan langsung dari kolom op atau OPERATION dalam log mentah.
proto network.application_protocol Diekstrak dari kolom http_url menggunakan grok, dikonversi ke huruf besar.
puppet_version additional.fields[].key Nilai "puppet_version" ditetapkan melalui parser
puppet_version additional.fields[].value.string_value Dipetakan langsung dari kolom puppet_version dalam log mentah.
queue_name additional.fields[].key Nilai "queue_name" ditetapkan melalui parser
queue_name additional.fields[].value.string_value Dipetakan langsung dari kolom queue_name dalam log mentah.
report_format additional.fields[].key Nilai "report_format" ditetapkan melalui parser
report_format additional.fields[].value.string_value Dipetakan langsung dari kolom report_format dalam log mentah, yang dikonversi menjadi string.
resource additional.fields[].key Nilai "resource" ditetapkan melalui parser
resource additional.fields[].value.string_value Dipetakan langsung dari kolom resource dalam log mentah.
result security_result.action_details Dipetakan langsung dari kolom RESULT dalam log mentah.
security_id additional.fields[].key Nilai "security_id" ditetapkan melalui parser
security_id additional.fields[].value.string_value Dipetakan langsung dari kolom security_id dalam log mentah.
severity security_result.severity Dipetakan dari kolom severity dalam log mentah. INFO dipetakan ke INFORMATIONAL, WARN dipetakan ke MEDIUM.
srvID additional.fields[].key Nilai "srvID" ditetapkan melalui parser
srvID additional.fields[].value.string_value Dipetakan langsung dari kolom srvID dalam log mentah.
status additional.fields[].key Nilai "status" ditetapkan melalui parser
status additional.fields[].value.string_value Dipetakan langsung dari kolom status dalam log mentah.
summary security_result.summary Dipetakan langsung dari kolom summary dalam log mentah.
target_app target.application Dipetakan langsung dari kolom TARGET dalam log mentah.
target_ip target.ip Dipetakan langsung dari kolom target_ip atau IP dalam log mentah.
target_port target.port Dipetakan langsung dari kolom target_port dalam log mentah, yang dikonversi menjadi bilangan bulat.
timestamp metadata.event_timestamp Dipetakan langsung dari kolom timestamp dalam log mentah, diuraikan sebagai stempel waktu ISO8601.
timestamp event.timestamp Dipetakan langsung dari kolom timestamp dalam log mentah, diuraikan sebagai stempel waktu ISO8601.
trade_date additional.fields[].key Nilai "trade_date" ditetapkan melalui parser
trade_date additional.fields[].value.string_value Dipetakan langsung dari kolom trade_date dalam log mentah.
transaction_uuid additional.fields[].key Nilai "transaction_uuid" ditetapkan melalui parser
transaction_uuid additional.fields[].value.string_value Dipetakan langsung dari kolom transaction_uuid dalam log mentah.
type additional.fields[].key Nilai "type" ditetapkan melalui parser
type additional.fields[].value.string_value Dipetakan langsung dari kolom type dalam log mentah.
user target.user.userid Dipetakan langsung dari kolom USER atau ugi dalam log mentah.

Perubahan

2023-12-19

  • Perbaikan Bug: Memperbaiki hasil yang tidak stabil untuk pola Grok.

2023-10-30

  • Parser yang baru dibuat.

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