Ringkasan Unified Data Model

Didukung di:

Dokumen ini memberikan ringkasan tentang Unified Data Model (UDM). Untuk detail selengkapnya tentang kolom UDM, termasuk deskripsi setiap kolom, lihat daftar kolom UDM. Untuk mengetahui informasi selengkapnya tentang pemetaan parser, lihat Kolom UDM penting untuk pemetaan parser.

UDM adalah struktur data standar Google Security Operations yang menyimpan informasi tentang data yang diterima dari sumber. Ini juga disebut skema. Google Security Operations menyimpan data asli yang diterima dalam dua format, sebagai log mentah asli dan sebagai data UDM terstruktur. Data UDM adalah representasi terstruktur log asli.

Jika parser ada untuk jenis log yang ditentukan, log mentah akan digunakan untuk membuat data UDM. Pelanggan juga dapat mengubah log mentah ke format UDM terstruktur sebelum mengirim data ke Google Security Operations menggunakan Ingestion API.

Beberapa manfaat UDM meliputi:

  • Menyimpan jenis data yang sama dari vendor yang berbeda menggunakan semantik yang sama.
  • Lebih mudah mengidentifikasi hubungan antara pengguna, host, dan alamat IP karena data dinormalisasi ke dalam skema UDM standar.
  • Lebih mudah untuk menulis aturan karena aturan dapat bersifat independen platform.
  • Lebih mudah mendukung jenis log dari perangkat baru.

Meskipun Anda dapat menelusuri peristiwa dengan penelusuran log mentah, penelusuran UDM berfungsi lebih cepat dan dengan presisi yang lebih tinggi karena kekhususannya.

Google Security Operations menggunakan skema UDM untuk semua peristiwa yang dikumpulkannya. UDM menyertakan ribuan kolom yang digunakan untuk mendeskripsikan dan mengategorikan peristiwa. Misalnya, UDM dapat menangani peristiwa proses endpoint semudah peristiwa komunikasi jaringan.

Struktur UDM

Peristiwa UDM terdiri dari beberapa bagian. Bagian pertama yang ditemukan di setiap peristiwa UDM adalah bagian metadata. Laporan ini memberikan deskripsi dasar tentang peristiwa, termasuk stempel waktu saat peristiwa terjadi dan stempel waktu saat peristiwa tersebut ditransfer ke Google Security Operations. Halaman ini juga mencakup informasi, versi, dan deskripsi produk. Parser penyerapan mengklasifikasikan setiap peristiwa berdasarkan jenis peristiwa yang telah ditentukan sebelumnya, terlepas dari log produk tertentu. Dengan kolom metadata saja, Anda dapat mulai menelusuri data dengan cepat.

Selain bagian metadata, bagian lain menjelaskan aspek tambahan peristiwa. Jika tidak diperlukan, bagian tersebut tidak akan disertakan, sehingga menghemat memori.

  • principal: Entitas yang berasal dari aktivitas dalam peristiwa. Bagian yang mereferensikan sumber (src) dan tujuan (target) juga disertakan.
  • intermediary: Sistem yang dilalui peristiwa, seperti server proxy atau relay SMTP.
  • observer: Sistem seperti sniffer paket yang memantau secara pasif melalui traffic.

Contoh penelusuran UDM

Bagian ini memberikan contoh penelusuran UDM yang menunjukkan beberapa sintaksis, fitur, dan kemampuan dasar penelusuran UDM.

Contoh: menelusuri login Microsoft Windows 4624 yang berhasil

Penelusuran berikut mencantumkan peristiwa login yang berhasil Microsoft Windows 4624, bersama dengan waktu peristiwa dibuat, berdasarkan hanya dua kolom UDM:

metadata.event_type = "USER_LOGIN" AND metadata.product_event_type = "4624"

Contoh: telusuri semua login yang berhasil

Penelusuran berikut mencantumkan semua peristiwa login yang berhasil, terlepas dari vendor atau aplikasi:

metadata.event_type = "USER_LOGIN" AND security_result.action = "ALLOW" AND target.user.userid != "SYSTEM" AND target.user.userid != /.*$/

Contoh: menelusuri login pengguna yang berhasil

Contoh berikut menggambarkan cara menelusuri userid "fkolzig" dan menentukan kapan pengguna dengan ID pengguna ini berhasil login. Anda dapat menyelesaikan penelusuran ini menggunakan bagian target. Bagian target mencakup subbagian dan kolom yang menjelaskan target. Misalnya, target dalam hal ini adalah pengguna dan memiliki sejumlah atribut terkait, tetapi target juga dapat berupa file, setelan registry, atau aset. Contoh ini menelusuri "fkolzig" menggunakan kolom target.user.userid.

metadata.event_type = "USER_LOGIN" AND metadata.product_event_type = "4624" AND target.user.userid = "fkolzig"

Contoh: telusuri data jaringan Anda

Contoh berikut menelusuri data jaringan untuk peristiwa RDP dengan target.port 3389 dan principal.ip 35.235.240.5. Laporan ini juga menyertakan kolom UDM dari bagian jaringan, arah data (network.direction).

metadata.product_event_type = "3" AND target.port = 3389 AND network.direction = "OUTBOUND" and principal.ip = "35.235.240.5"

Contoh: menelusuri proses tertentu

Untuk memeriksa proses yang dibuat di server, telusuri instance perintah net.exe dan telusuri file khusus ini di jalur yang diharapkan. Kolom yang Anda telusuri adalah target.process.file.full_path. Untuk penelusuran ini, Anda menyertakan perintah tertentu yang dikeluarkan di kolom target.process.command_line. Anda juga dapat menambahkan kolom di bagian tentang yang merupakan deskripsi kode peristiwa Microsoft Sysmon 1 (ProcessCreate).

Berikut adalah penelusuran UDM:

metadata.product_event_type = "1" AND target.process.file.full_path = "C:\Windows\System32\net.exe"

Secara opsional, Anda dapat menambahkan kolom penelusuran UDM berikut:

  • principal.user.userid: Identifikasi pengguna yang mengeluarkan perintah.
  • principal.process.file.md5: Identifikasi hash MD5.
  • principal.process.command_line: Command line.

Contoh: menelusuri login pengguna yang berhasil yang terkait dengan departemen tertentu

Contoh berikut menelusuri login oleh pengguna (metadata.event_type adalah USER_LOGIN) yang terkait dengan departemen pemasaran (target.user.department adalah marketing) perusahaan Anda. Meskipun target.user.department tidak terhubung langsung dengan peristiwa login pengguna, peristiwa ini masih ada dalam data LDAP yang ditransfer tentang pengguna Anda.

metadata.event_type = "USER_LOGIN" AND target.user.department = "Marketing"

Objek logis: Peristiwa dan Entitas

Skema UDM menjelaskan semua atribut yang tersedia yang menyimpan data. Setiap data UDM mengidentifikasi apakah data tersebut menjelaskan Peristiwa atau Entitas. Data disimpan di kolom yang berbeda, bergantung pada apakah data menjelaskan Peristiwa atau Entity, dan juga nilai yang ditetapkan di kolom metadata.event_type atau metadata.entity_type.

  • Peristiwa UDM: Menyimpan data untuk tindakan yang terjadi di lingkungan. Log peristiwa asli menjelaskan tindakan saat direkam oleh perangkat, seperti firewall dan proxy web. Ini adalah model data Peristiwa UDM.
  • Entitas UDM: Representasi kontekstual elemen seperti aset, pengguna, dan resource di lingkungan Anda. Data ini diperoleh dari sumber data sumber kebenaran. Ini adalah model data Entity UDM.

Berikut adalah dua representasi visual tingkat tinggi dari Model data peristiwa dan Model data entity.

Model data peristiwa

Gambar: Model data peristiwa

Model data entity

Gambar: Model data entity

Struktur Peristiwa UDM

Peristiwa UDM berisi beberapa bagian yang masing-masing menyimpan subkumpulan data untuk satu kumpulan data. Bagian-bagiannya adalah:

  • metadata
  • utama
  • target
  • src
  • observer
  • perantara
  • tentang
  • jaringan
  • security_result
  • ekstensi

    Model data peristiwa

    Gambar: Model data peristiwa

Bagian metadata menyimpan stempel waktu, menentukan event_type, dan mendeskripsikan perangkat.

Bagian principal, target, src, observer, dan intermediary menyimpan informasi tentang objek yang terlibat dalam peristiwa. Objek dapat berupa perangkat, pengguna, atau proses. Biasanya, hanya sebagian dari bagian ini yang digunakan. Kolom yang menyimpan data ditentukan oleh jenis peristiwa dan peran yang dimainkan setiap objek dalam peristiwa.

Bagian jaringan menyimpan informasi terkait aktivitas jaringan, seperti email dan komunikasi terkait jaringan.

  • Data email: Informasi di kolom email to, from, cc, bcc, dan lainnya.
  • Data HTTP: Seperti method, referral_url, dan useragent.

Bagian security_result menyimpan tindakan atau klasifikasi yang dicatat oleh produk keamanan, seperti produk antivirus.

Bagian tentang dan ekstensi menyimpan informasi peristiwa khusus vendor tambahan yang tidak diambil oleh bagian lain. Bagian extensions adalah kumpulan pasangan nilai kunci dalam bentuk bebas.

Setiap peristiwa UDM menyimpan nilai dari satu peristiwa log mentah asli. Bergantung pada jenis peristiwa, atribut tertentu wajib ada, sedangkan yang lainnya bersifat opsional. Atribut wajib versus opsional ditentukan oleh nilai metadata.event_type. Google Security Operations membaca metadata.event_type dan melakukan validasi kolom khusus untuk jenis peristiwa tersebut setelah log diterima.

Jika tidak ada data yang disimpan di bagian data UDM, misalnya bagian ekstensi, bagian tersebut tidak akan muncul di data UDM.

Kolom metadata

Bagian ini menjelaskan kolom yang diperlukan dalam peristiwa UDM.

Kolom event_timestamp

Peristiwa UDM harus menyertakan data untuk metadata.event_timestamp yang merupakan stempel waktu GMT saat peristiwa terjadi. Nilai harus dienkode menggunakan salah satu standar berikut: stempel waktu RFC 3339 atau Proto3.

Contoh berikut mengilustrasikan cara menentukan stempel waktu menggunakan format RFC 3339, yyyy-mm-ddThh:mm:ss+hh:mm (tahun, bulan, hari, jam, menit, detik, dan offset dari waktu UTC). Selisih waktu dari UTC adalah minus 8 jam, yang menunjukkan PST.

metadata {
  "event_timestamp": "2019-09-10T20:32:31-08:00"
}

metadata {
  event_timestamp: "2021-02-23T04:00:00.000Z"
}

Anda juga dapat menentukan nilai menggunakan format epoch.

metadata {
event_timestamp: {
  "seconds": 1588180305
 }
}

Kolom event_type

Kolom yang paling penting dalam peristiwa UDM adalah metadata.event_type. Nilai ini mengidentifikasi jenis tindakan yang dilakukan dan tidak bergantung pada vendor, produk, atau platform. Contoh nilainya meliputi PROCESS_OPEN, FILE_CREATION, USER_CREATION, dan NETWORK_DNS. Untuk mengetahui daftar lengkapnya, lihat dokumen daftar kolom UDM.

Nilai metadata.event_type menentukan kolom wajib dan opsional tambahan yang harus disertakan dalam data UDM. Untuk mengetahui informasi tentang kolom yang akan disertakan untuk setiap jenis peristiwa, lihat panduan penggunaan UDM.

Atribut principal, target, src, intermediary, observer, dan about

Atribut principal, target, src, intermediary, dan observer menjelaskan aset yang terlibat dalam peristiwa. Setiap log menyimpan informasi tentang objek yang terlibat dalam aktivitas, seperti yang dicatat oleh log mentah asli. Ini dapat berupa perangkat atau pengguna yang melakukan aktivitas, perangkat atau pengguna yang menjadi target aktivitas. Ini juga dapat mendeskripsikan perangkat keamanan yang mengamati aktivitas, seperti proxy email atau router jaringan.

Atribut yang paling umum digunakan adalah:

  • principal: Objek yang melakukan aktivitas.
  • src: Objek yang memulai aktivitas, jika berbeda dengan prinsipal.
  • target: Objek yang ditindaklanjuti.

Setiap jenis peristiwa mewajibkan setidaknya satu kolom ini berisi data.

Kolom tambahan adalah:

  • intermediary: Objek apa pun yang bertindak sebagai perantara dalam peristiwa. Hal ini dapat mencakup objek seperti server proxy dan server email.
  • observer: Setiap objek yang tidak berinteraksi langsung dengan traffic yang dimaksud. Perangkat ini mungkin berupa pemindai kerentanan atau perangkat sniffer paket.
  • about: Objek lain yang berperan dalam peristiwa dan bersifat opsional.

Atribut utama

Mewakili entitas yang bertindak atau perangkat yang memicu aktivitas. Prinsipal harus menyertakan minimal satu detail mesin (nama host, alamat MAC, alamat IP, ID khusus produk seperti GUID mesin CrowdStrike) atau detail pengguna (misalnya, nama pengguna), dan secara opsional menyertakan detail proses. Kolom ini tidak boleh menyertakan salah satu kolom berikut: email, file, kunci atau nilai registry.

Jika peristiwa terjadi di satu mesin, mesin tersebut hanya dijelaskan dalam atribut utama. Mesin tidak perlu dijelaskan dalam atribut target atau src.

Cuplikan JSON berikut menggambarkan cara atribut principal diisi.

"principal": {
  "hostname": "jane_win10",
  "asset_id" : "Sophos.AV:C070123456-ABCDE",
    "ip" : "10.10.2.10",
    "port" : 60671,
    "user": {  "userid" : "john.smith" }
}

Atribut ini menjelaskan semua yang diketahui tentang perangkat dan pengguna yang merupakan pelaku utama dalam peristiwa. Contoh ini mencakup alamat IP, nomor port, dan nama host perangkat. Laporan ini juga menyertakan ID aset khusus vendor, dari Sophos, yang merupakan ID unik yang dihasilkan oleh produk keamanan pihak ketiga.

Atribut target

Mewakili perangkat target yang dirujuk oleh peristiwa, atau objek di perangkat target. Misalnya, dalam koneksi firewall dari perangkat A ke perangkat B, perangkat A diambil sebagai akun utama dan perangkat B diambil sebagai target.

Untuk injeksi proses oleh proses C ke dalam proses target D, proses C adalah prinsipal dan proses D adalah target.

akun utama versus
target

Gambar: Akun utama versus target

Contoh berikut mengilustrasikan cara mengisi kolom target.

target {
   ip: "192.0.2.31"
   port: 80
}

Jika ada informasi lain dalam log mentah asli, seperti nama host, alamat IP tambahan, alamat MAC, dan ID aset eksklusif, informasi tersebut juga harus disertakan dalam kolom target dan utama.

Prinsipal dan target dapat mewakili aktor di mesin yang sama. Misalnya, proses A (prinsipal) yang berjalan di mesin X dapat bertindak pada proses B (target) juga di mesin X.

Atribut src

Merepresentasikan objek sumber yang ditindaklanjuti oleh peserta beserta konteks perangkat atau proses untuk objek sumber (mesin tempat objek sumber berada). Misalnya, jika pengguna U menyalin file A di komputer X ke file B di komputer Y, file A dan komputer X akan ditentukan di bagian src peristiwa UDM.

Atribut perantara

Menampilkan detail tentang satu atau beberapa aktivitas pemrosesan perangkat perantara yang dijelaskan dalam peristiwa. Hal ini dapat mencakup detail perangkat tentang perangkat seperti server proxy dan server relay SMTP.

Atribut observer

Mewakili perangkat pengamat yang bukan perantara langsung, tetapi mengamati dan melaporkan peristiwa yang dimaksud. Hal ini dapat mencakup sniffer paket atau pemindai kerentanan berbasis jaringan.

Atribut tentang

Penyimpanan ini menyimpan detail tentang objek yang dirujuk oleh peristiwa yang tidak dijelaskan di kolom utama, src, target, perantara, atau observer. Misalnya, data tersebut dapat merekam hal berikut:

  • Lampiran file email.
  • Domain, URL, atau alamat IP yang disematkan dalam isi email.
  • DLL yang dimuat selama peristiwa PROCESS_LAUNCH.

Atribut security_result

Bagian ini berisi informasi tentang risiko dan ancaman keamanan yang ditemukan oleh sistem keamanan serta tindakan yang dilakukan untuk mengurangi risiko dan ancaman tersebut.

Berikut adalah jenis informasi yang akan disimpan dalam atribut security_result:

  • Proxy keamanan email mendeteksi upaya phishing (security_result.category = MAIL_PHISHING) dan memblokir (security_result.action = BLOCK) email.
  • Firewall proxy keamanan email mendeteksi dua lampiran yang terinfeksi (security_result.category = SOFTWARE_MALICIOUS) dan mengarantina serta mendisinfeksi (security_result.action = QUARANTINE atau security_result.action = ALLOW_WITH_MODIFICATION) lampiran ini, lalu meneruskan email yang telah dibersihkan.
  • Sistem SSO mengizinkan login (security_result.category = AUTH_VIOLATION) yang diblokir (security_result.action = BLOCK).
  • Sandbox malware mendeteksi spyware (security_result.category = SOFTWARE_MALICIOUS) dalam lampiran file lima menit setelah file dikirim (security_result.action = ALLOW) kepada pengguna di kotak masuknya.

Atribut jaringan

Atribut jaringan menyimpan data tentang peristiwa terkait jaringan dan detail tentang protokol dalam sub-pesan. Hal ini mencakup aktivitas, seperti email yang dikirim dan diterima, serta permintaan HTTP.

Atribut ekstensi

Kolom di bagian atribut ini menyimpan metadata tambahan tentang peristiwa yang direkam dalam log mentah asli. File ini dapat berisi informasi tentang kerentanan atau informasi terkait autentikasi tambahan.

Struktur Entity UDM

Data entitas UDM menyimpan informasi tentang entitas apa pun dalam organisasi. Jika metadata.entity_type adalah USER, kumpulan data akan menyimpan informasi tentang pengguna di bagian atribut entity.user. Jika metadata.entity_type adalah ASSET, data akan menyimpan informasi tentang aset, seperti workstation, laptop, ponsel, dan virtual machine.

Model data entity

Gambar: Model data peristiwa

Kolom metadata

Bagian ini berisi kolom yang diperlukan dalam Entitas UDM, seperti:

  • collection_timestamp: tanggal & waktu data dikumpulkan.
  • entity_type: jenis entity, seperti aset, pengguna, dan resource.

Atribut entity

Kolom di bagian atribut entity menyimpan informasi tentang entity tertentu, seperti nama host dan alamat IP jika berupa aset, atau windows_sid dan alamat email jika berupa pengguna. Perhatikan bahwa nama kolomnya adalah 'entity', tetapi jenis kolomnya adalah Kata Benda. Kata Benda adalah struktur data yang umum digunakan dan menyimpan informasi dalam entity dan peristiwa.

  • Jika metadata.entity_type adalah USER, data akan disimpan di bawah atribut entity.user.
  • Jika metadata.entity_type adalah ASSET, data akan disimpan di atribut entity.asset.

Atribut hubungan

Kolom di bagian atribut hubungan menyimpan informasi tentang entity lain yang terkait dengan entity utama. Misalnya, jika entitas utama adalah Pengguna dan pengguna telah diberi laptop. Laptop adalah entitas terkait. Informasi tentang laptop disimpan sebagai kumpulan data 'entity' dengan metadata.entity_type = ASSET. Informasi tentang pengguna disimpan sebagai data 'entity' dengan metadata.entity_type = USER.

Data entity pengguna juga merekam hubungan antara pengguna dan laptop, menggunakan kolom pada atribut "relation". Kolom relation.relationship menyimpan hubungan yang dimiliki pengguna dengan laptop, khususnya bahwa pengguna memiliki laptop. Kolom relation.entity_type menyimpan nilai ASSET, karena laptop adalah perangkat.

Kolom di bagian atribut relations.entity menyimpan informasi tentang laptop, seperti nama host dan alamat MAC. Perhatikan lagi bahwa nama kolomnya adalah 'entity' dan jenis kolomnya adalah Kata Benda. Kata Benda adalah struktur data yang umum digunakan. Kolom di bagian atribut relation.entity menyimpan informasi tentang laptop.

Kolom relation.direction menyimpan arah hubungan antara pengguna dan laptop, khususnya apakah hubungan tersebut dua arah atau satu arah.

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