Menggunakan data Sensitive Data Protection dalam analisis yang memahami konteks
Dokumen ini menunjukkan cara menggunakan data konteks entitas dari Perlindungan Data Sensitif dan sumber log tambahan untuk menambahkan pemahaman kontekstual tentang dampak dan cakupan potensi ancaman saat melakukan investigasi.
Kasus penggunaan yang dijelaskan dalam dokumen ini mendeteksi eksekusi file berbahaya oleh pengguna (Teknik MITRE ATT&CK T1204.002) dan apakah pengguna tersebut juga memiliki akses ke data sensitif di tempat lain di jaringan.
Contoh ini mengharuskan data berikut telah diserap dan dinormalisasi di Google Security Operations:
- Data aktivitas pengguna menggunakan log jaringan dan EDR.
- Hubungan resource dari sumber data seperti Google Cloud Analisis IAM.
- Log Sensitive Data Protection yang berisi label tentang jenis dan sensitivitas data yang disimpan.
Google SecOps harus dapat mengurai data mentah ke dalam catatan peristiwa dan entitas Model Data Terpadu (UDM).
Untuk mengetahui informasi tentang penyerapan data Perlindungan Data Sensitif ke Google SecOps, lihat Mengekspor data Perlindungan Data Sensitif ke Google SecOps.
Google Cloud Data Analisis IAM
Data log Analisis IAM Google Cloud dalam contoh ini mengidentifikasi pengguna dalam organisasi dan merekam hubungan setiap pengguna dengan sistem lain di jaringan. Berikut adalah cuplikan log Analisis IAM yang disimpan sebagai rekaman entitas UDM. Tabel ini menyimpan informasi tentang pengguna, mikeross
, yang mengelola tabel BigQuery bernama analytics:claim.patients
.
metadata.vendor_name: "Google Cloud Platform"
metadata.product_name: "GCP IAM Analysis"
metadata.entity_type: "USER"
entity.user.userid: "mikeross"
relations[2].entity.resource.name: "analytics:claim.patients"
relations[2].entity.resource.resource_type: "TABLE"
relations[2].entity_type: "RESOURCE"
relations[2].relationship: "ADMINISTERS"
Data Sensitive Data Protection
Data log Sensitive Data Protection dalam contoh ini menyimpan informasi tentang tabel BigQuery. Berikut adalah cuplikan log Perlindungan Data Sensitif yang disimpan sebagai rekaman entitas UDM. Hal ini merepresentasikan tabel BigQuery bernama analytics:claim.patients
dengan
label Predicted InfoType
US_SOCIAL_SECURITY_NUMBER
, yang menunjukkan bahwa
tabel menyimpan nomor Jaminan Sosial Amerika Serikat.
metadata.vendor_name: "Google Cloud Platform"
metadata.product_name: "GCP DLP CONTEXT"
metadata.entity_type: "RESOURCE"
metadata.description: "RISK_HIGH"
entity.resource.resource_type: "TABLE"
entity.resource.resource_subtype: "BigQuery Table"
entity.resource.attribute.cloud.environment"GOOGLE_CLOUD_PLATFORM"
entity.resource.attribute.labels[0].key: "Sensitivity Score"
entity.resource.attribute.labels[0].value: "SENSITIVITY_HIGH"
entity.resource.attribute.labels[1].key: "Predicted InfoType"
entity.resource.attribute.labels[1].value: "US_SOCIAL_SECURITY_NUMBER"
entity.resource.product_object_id: "analytics:claim.patients"
Peristiwa proxy web
Peristiwa proxy web dalam contoh ini merekam aktivitas jaringan. Cuplikan berikut adalah log proxy web Zscaler yang disimpan sebagai rekaman peristiwa UDM. Peristiwa ini mencatat peristiwa download jaringan file yang dapat dieksekusi oleh pengguna dengan nilai userid
mikeross
dengan nilai received_bytes
adalah 514605.
metadata.log_type = "ZSCALER_WEBPROXY"
metadata.product_name = "NSS"
metadata.vendor_name = "Zscaler"
metadata.event_type = "NETWORK_HTTP"
network.http.response_code = 200
network.received_bytes = 514605
principal.user.userid = "mikeross"
target.url = "http://manygoodnews.com/dow/Client%20Update.exe"
Peristiwa EDR
Peristiwa EDR dalam contoh ini merekam aktivitas di perangkat endpoint. Cuplikan berikut adalah log CrowdStrike Falcon EDR yang disimpan sebagai rekaman peristiwa UDM. Peristiwa ini merekam peristiwa jaringan yang melibatkan aplikasi Microsoft Excel dan pengguna dengan nilai userid
mikeross
.
metadata.log_type = "CS_EDR"
metadata.product_name = "Falcon"
metadata.vendor_name = "Crowdstrike"
metadata.event_type = "NETWORK_HTTP"
target.process.file.full_path = "\\Device\\HarddiskVolume1\\Program Files\\C:\\Program Files\\Microsoft Office\\Office16\\EXCEL.exe"
target.url = "http://manygoodnews.com/dow/Client%20Update.exe"
target.user.userid = "mikeross"
Perhatikan bahwa ada informasi umum di seluruh catatan ini, baik ID pengguna
mikeross
maupun nama tabel, analytics:claim.patients
. Bagian berikutnya dalam dokumen ini
menunjukkan cara nilai ini digunakan dalam aturan untuk menggabungkan data.
Aturan mesin deteksi dalam contoh ini
Contoh aturan ini mendeteksi eksekusi file berbahaya oleh pengguna (Teknik MITRE ATT&CK T1204.002.
Aturan menetapkan skor risiko yang lebih tinggi untuk deteksi saat pengguna juga memiliki akses ke data sensitif di tempat lain dalam jaringan. Aturan mengorelasikan informasi berikut:
- Aktivitas pengguna, seperti mendownload atau meluncurkan file yang dapat dieksekusi.
- Hubungan antara resource, misalnya hubungan pengguna dengan tabel BigQuery.
- Keberadaan informasi sensitif dalam resource yang dapat diakses pengguna, misalnya jenis data yang disimpan dalam tabel BigQuery.
Berikut deskripsi setiap bagian dalam contoh aturan.
Bagian
events
menentukan pola data yang dicari aturan dan mencakup hal berikut:- Grup 1 dan Grup 2 mengidentifikasi peristiwa jaringan dan EDR yang mencatat download sejumlah besar data atau file yang dapat dieksekusi yang juga terkait dengan aktivitas di aplikasi Excel.
- Grup 3 mengidentifikasi data saat pengguna yang diidentifikasi dalam peristiwa jaringan dan EDR juga memiliki izin ke tabel BigQuery.
- Grup 4 mengidentifikasi catatan Perlindungan Data Sensitif untuk tabel BigQuery yang dapat diakses pengguna.
Setiap grup ekspresi menggunakan variabel
$table_name
atau variabel$user
untuk menggabungkan rekaman yang terkait dengan pengguna dan tabel database yang sama.Di bagian
outcome
, aturan membuat variabel$risk_score
dan menetapkan nilai berdasarkan sensitivitas data dalam tabel. Dalam hal ini, arsitektur akan memeriksa apakah data diberi label denganUS_SOCIAL_SECURITY_NUMBER
infoType Sensitive Data Protection.Bagian
outcome
juga menetapkan variabel tambahan seperti$principalHostname
dan$entity_resource_name
. Variabel ini ditampilkan dan disimpan dengan deteksi, sehingga saat Anda melihatnya di Google SecOps, Anda juga dapat menampilkan nilai variabel sebagai kolom.Bagian
condition
menunjukkan bahwa pola mencari semua rekaman UDM yang ditentukan di bagianevents
.
rule high_risk_user_download_executable_from_macro {
meta:
author = "Google Cloud Security Demos"
description = "Executable downloaded by Microsoft Excel from High Risk User"
severity = "High"
technique = "T1204.002"
events:
//Group 1. identify a proxy event with suspected executable download
$proxy_event.principal.user.userid = $user
$proxy_event.target.url = /.*\.exe$/ or
$proxy_event.network.received_bytes > 102400
//Group 2. correlate with an EDR event indicating Excel activity
$edr_event.target.user.userid = $user
$edr_event.target.process.file.full_path = /excel/ nocase
$edr_event.metadata.event_type = "NETWORK_HTTP"
//Group 3. Use the entity to find the permissions
$user_entity.graph.entity.user.userid = $user
$user_entity.graph.relations.entity.resource.name = $table_name
//Group 4. the entity is from Cloud DLP data
$table_context.graph.entity.resource.product_object_id = $table_name
$table_context.graph.metadata.product_name = "GCP DLP CONTEXT"
match:
$user over 5m
outcome:
//calculate risk score
$risk_score = max(
if( $table_context.graph.entity.resource.attribute.labels.value = "US_SOCIAL_SECURITY_NUMBER", 80)
)
$technique = array_distinct("T1204.002")
$principalHostname = array_distinct($proxy_event.principal.hostname)
$principalIp = array_distinct($proxy_event.principal.ip)
$principalMac = array_distinct($proxy_event.principal.mac)
$targetHostname = array_distinct($proxy_event.target.hostname)
$target_url = array_distinct($proxy_event.target.url)
$targetIp = array_distinct($proxy_event.target.ip)
$principalUserUserid = array_distinct($proxy_event.principal.user.userid)
$entity_resource_name = array_distinct($table_context.graph.entity.resource.name)
condition:
$proxy_event and $edr_event and $user_entity and $table_context
}
Tentang deteksi
Jika Anda menguji aturan terhadap data yang ada dan aturan tersebut mengidentifikasi pola aktivitas yang ditentukan dalam definisi, aturan tersebut akan menghasilkan deteksi. Panel Deteksi menampilkan deteksi yang dihasilkan setelah menguji aturan. Panel Deteksi juga menampilkan catatan peristiwa dan entity yang menyebabkan aturan membuat deteksi. Dalam contoh ini, data berikut ditampilkan:
- Google Cloud Entitas UDM Analisis IAM
- Entitas UDM Sensitive Data Protection
- Peristiwa UDM proxy web Zscaler
- Peristiwa UDM CrowdStrike Falcon EDR
Di panel Deteksi, pilih rekaman peristiwa atau entity untuk melihat detailnya.
Deteksi juga menyimpan variabel yang ditentukan di bagian outcome
aturan. Untuk menampilkan variabel di panel Deteksi, pilih
Kolom, lalu pilih satu atau beberapa nama variabel dari menu
Kolom. Kolom yang dipilih akan muncul di panel Deteksi.
Langkah berikutnya
Untuk menulis aturan kustom, lihat Ringkasan bahasa YARA-L 2.0.
Untuk membuat analisis kontekstual kustom, lihat Membuat analisis kontekstual
Untuk menggunakan analisis ancaman standar, lihat Menggunakan deteksi pilihan Google SecOps.
Perlu bantuan lain? Dapatkan jawaban dari anggota Komunitas dan profesional Google SecOps.