Bagikan melalui


Migrasikan aturan deteksi Splunk ke Microsoft Sentinel

Aturan deteksi Splunk adalah komponen informasi keamanan dan manajemen peristiwa (SIEM) yang dibandingkan dengan aturan analitik di Microsoft Azure Sentinel. Artikel ini menjelaskan konsep untuk mengidentifikasi, membandingkannya, dan memigrasikannya ke Microsoft Sentinel. Cara terbaik adalah memulai dengan pengalaman migrasi SIEM, yang mengidentifikasi aturan analitik out-of-the-box (OOTB) untuk diterjemahkan secara otomatis.

Jika Anda ingin memigrasikan penyebaran Splunk Observability Anda, pelajari selengkapnya tentang cara bermigrasi dari Splunk ke Log Azure Monitor.

Aturan audit

Microsoft Sentinel menggunakan analitik pembelajaran mesin untuk menciptakan insiden dengan keakuratan tinggi dan dapat ditindaklanjuti. Beberapa deteksi Splunk yang ada mungkin berlebihan di Microsoft Azure Sentinel, jadi jangan migrasikan semuanya secara membabi buta. Ulas pertimbangan ini saat Anda mengidentifikasi aturan deteksi yang ada.

  • Pastikan untuk memilih kasus penggunaan yang membenarkan migrasi aturan, mempertimbangkan prioritas dan efisiensi bisnis.
  • Pastikan Anda memahami jenis aturan Microsoft Sentinel.
  • Pastikan Anda memahami terminologi aturan.
  • Tinjau aturan usang yang tidak memiliki pemberitahuan selama 6-12 bulan terakhir, dan tentukan apakah aturan tersebut masih relevan.
  • Hilangkan ancaman atau peringatan tingkat rendah yang secara rutin Anda abaikan.
  • Konfirmasikan sumber data yang terhubung dan ulas metode koneksi data Anda. Microsoft Sentinel Analytics mengharuskan jenis data ada di ruang kerja Analitik Log sebelum aturan diaktifkan. Tinjau kembali percakapan kumpulan data untuk memastikan kedalaman dan keluasan data di seluruh kasus penggunaan yang Anda rencanakan untuk dideteksi. Kemudian gunakan pengalaman migrasi SIEM untuk memastikan sumber data dipetakan dengan tepat.

Aturan migrasi

Setelah Anda mengidentifikasi deteksi Splunk untuk dimigrasikan, tinjau pertimbangan ini untuk proses migrasi:

  • Bandingkan fungsionalitas aturan analitik OOTB Microsoft Sentinel yang ada dengan kasus penggunaan Anda saat ini. Gunakan pengalaman migrasi SIEM untuk melihat deteksi Splunk mana yang secara otomatis dikonversi ke templat OOTB.
  • Terjemahkan deteksi yang tidak selaras dengan aturan analitik OOTB. Cara terbaik untuk menerjemahkan deteksi Splunk secara otomatis adalah dengan pengalaman migrasi SIEM.
  • Temukan lebih banyak algoritma untuk kasus penggunaan Anda dengan menjelajahi sumber daya komunitas seperti SOC Prime Threat Detection Marketplace.
  • Terjemahkan deteksi secara manual jika aturan bawaan tidak tersedia atau tidak diterjemahkan secara otomatis. Buat kueri KQL baru dan tinjau pemetaan aturan.

Untuk informasi selengkapnya, lihat praktik terbaik untuk memigrasikan aturan deteksi.

Langkah-langkah migrasi aturan

  1. Verifikasi bahwa Anda memiliki sistem pengujian untuk setiap aturan yang ingin Anda migrasikan.

    1. Siapkan proses validasi untuk aturan Anda yang dimigrasikan, termasuk skrip dan skenario pengujian lengkap.

    2. Pastikan tim Anda memiliki sumber daya yang bermanfaat untuk menguji aturan Anda yang dimigrasikan.

    3. Konfirmasikan bahwa Anda memiliki sumber data yang diperlukan yang tersambung, dan tinjau metode koneksi data Anda.

  2. Verifikasi apakah deteksi Anda tersedia sebagai templat OOTB di Microsoft Azure Sentinel:

    • Gunakan pengalaman migrasi SIEM untuk mengotomatiskan terjemahan dan penginstalan templat OOTB.

      Untuk informasi selengkapnya, lihat Menggunakan pengalaman migrasi SIEM.

    • Jika Anda memiliki kasus penggunaan yang tidak tercermin dalam deteksi, buat aturan untuk ruang kerja Anda sendiri dengan templat aturan OOTB.

      Di Microsoft Azure Sentinel, buka Hub konten.

      Filter Jenis konten untuk templat aturan Analitik.

      Temukan dan Instal/Perbarui setiap solusi Hub konten yang sesuai atau templat aturan analitik mandiri.

      Untuk informasi selengkapnya, lihat Mendeteksi ancaman yang tidak biasa.

    • Jika Anda memiliki deteksi yang tidak tercakup oleh aturan OOTB Microsoft Sentinel, pertama-tama coba pengalaman migrasi SIEM untuk terjemahan otomatis.

    • Jika aturan OOTB atau migrasi SIEM tidak sepenuhnya menerjemahkan deteksi, buat aturan secara manual. Dalam kasus seperti itu, gunakan langkah-langkah berikut untuk membuat aturan Anda:

      1. Mengidentifikasi sumber data yang ingin Anda gunakan dalam aturan Anda. Identifikasi tabel Microsoft Azure Sentinel yang ingin Anda kueri dengan membuat tabel pemetaan antara sumber data dan tabel data.

      2. Mengidentifikasi atribut, bidang, atau entitas dalam data Anda yang ingin Anda gunakan dalam aturan Anda.

      3. Mengidentifikasi kriteria dan logika aturan Anda. Pada tahap ini, pertimbangkan untuk menemukan templat aturan sebagai sampel cara membuat kueri KQL Anda.

        Pertimbangkan filter, aturan korelasi, daftar aktif, set referensi, daftar tonton, anomali deteksi, agregasi, dan sebagainya. Anda dapat menggunakan referensi yang disediakan oleh SIEM lama Anda untuk memahami cara terbaik memetakan sintaks kueri Anda.

      4. Identifikasi kondisi pemicu dan tindakan aturan, lalu bangun dan tinjau kueri KQL Anda.l. Saat meninjau kueri Anda, pertimbangkan sumber daya panduan pengoptimalan KQL.

  3. Uji aturan dengan masing-masing kasus penggunaan yang relevan. Jika tidak memberikan hasil yang diharapkan, tinjau dan edit KQL dan uji lagi.

  4. Saat Anda puas, pertimbangkan aturan yang dimigrasikan. Buat playbook untuk tindakan aturan Anda sesuai kebutuhan. Untuk mengetahui informasi selengkapnya, lihat Mengotomatiskan respons ancaman dengan playbook di Microsoft Sentinel.

Pelajari lebih lanjut tentang aturan analitik:

Membandingkan terminologi aturan

Tabel ini membantu Anda mengklarifikasi konsep aturan berdasarkan Bahasa Kueri Kusto (KQL) di Microsoft Azure Sentinel dibandingkan dengan deteksi Splunk berdasarkan Search Processing Language (SPL).

Splunk Microsoft Sentinel
Jenis aturan • Terjadwal
• Waktu nyata
• Kueri terjadwal
• Fusi
• Keamanan Microsoft
• Analitik Perilaku Pembelajaran Mesin (ML)
Kriteria Tentukan dalam SPL Ditentukan dalam KQL
Kondisi pemicu • Jumlah hasil
• Jumlah host
• Jumlah sumber
• Kustom
Ambang: Jumlah hasil kueri
Perbuatan • Tambahkan ke peringatan yang dipicu
• Catat Peristiwa
• Hasil output untuk mencari
• Dan banyak lagi
• Membuat peringatan atau insiden
• Mengintegrasi dengan Logic Apps

Memetakan dan membandingkan sampel aturan

Gunakan contoh ini untuk membandingkan dan memetakan aturan dari Splunk ke Microsoft Sentinel dalam berbagai skenario.

Perintah pencarian umum

Perintah SPL Deskripsi Operator KQL Contoh KQL
chart/ timechart Mengembalikan hasil dalam output tabel untuk pembuatan charting rangkaian waktu. operator render … | render timechart
dedup Menghapus hasil berikutnya yang cocok dengan kriteria yang ditentukan. berbeda
ringkas
… | summarize by Computer, EventID
eval Menghitung ekspresi. Pelajari tentang eval umum. perpanjang T | extend duration = endTime - startTime
fields Menghapus bidang dari hasil pencarian. proyek
meluncurkan proyek
T | project cost=price*quantity, price
head/tail Mengembalikan hasil N pertama atau terakhir. top T | top 5 by Name desc nulls last
lookup Menambahkan nilai bidang dari sumber eksternal. data eksternal
pencarian
Contoh KQL
rename Mengganti nama bidang. Gunakan wildcard untuk menentukan beberapa bidang. proyek-ganti nama T | project-rename new_column_name = column_name
rex Menentukan nama grup menggunakan ekspresi reguler untuk mengekstrak bidang. kecocokan regex … | where field matches regex "^addr.*"
search Memfilter hasil ke hasil yang cocok dengan ekspresi penelusuran. cari search "X"
sort Mengurutkan hasil pencarian berdasarkan bidang yang ditentukan. urutkan T | sort by strlen(country) asc, price desc
stats Menyediakan statistik, dikelompokkan secara opsional berdasarkan bidang. Pelajari selengkapnya tentang perintah statistik umum. meringkas Contoh KQL
mstats Mirip dengan statistik, digunakan pada metrik, bukan peristiwa. meringkas Contoh KQL
table Menentukan bidang mana yang akan disimpan dalam tataan hasil, dan menyimpan data dalam format tabel. proyek T | project columnA, columnB
top/rare Menampilkan nilai paling umum atau paling tidak umum dari suatu bidang. top T | top 5 by Name desc nulls last
transaction Mengelompokkan hasil pencarian ke dalam transaksi.

Contoh SPL
Contoh: row_window_session Contoh KQL
eventstats Menghasilkan statistik ringkasan dari bidang peristiwa Anda dan menyimpan statistik tersebut di bidang baru.

Contoh SPL
Contoh:
bergabung
make_list
MV-Perluas
Contoh KQL
streamstats Temukan jumlah kumulatif bidang.

Contoh SPL:
... | streamstats sum(bytes) as bytes _ total \| timechart
row_cumsum ...\| serialize cs=row_cumsum(bytes)
anomalydetection Temukan anomali di bidang yang ditentukan.

Contoh SPL
series_decompose_anomalies() Contoh KQL
where Filter hasil penelusuran menggunakan evalekspresi. Digunakan untuk membandingkan dua bidang yang berbeda. di mana T | where fruit=="apple"

lookup perintah: Contoh KQL

Users 
| where UserID in ((externaldata (UserID:string) [
@"https://storageaccount.blob.core.windows.net/storagecontainer/users.txt" 
h@"?...SAS..." // Secret token to access the blob 
])) | ... 

stats perintah: Contoh KQL

Sales 
| summarize NumTransactions=count(), 
Total=sum(UnitPrice * NumUnits) by Fruit, 
StartOfMonth=startofmonth(SellDateTime) 

mstats perintah: Contoh KQL

T | summarize count() by price_range=bin(price, 10.0) 

transaction perintah: Contoh SPL

sourcetype=MyLogTable type=Event
| transaction ActivityId startswith="Start" endswith="Stop"
| Rename timestamp as StartTime
| Table City, ActivityId, StartTime, Duration

transaction perintah: Contoh KQL

let Events = MyLogTable | where type=="Event";
Events
| where Name == "Start"
| project Name, City, ActivityId, StartTime=timestamp
| join (Events
| where Name == "Stop"
| project StopTime=timestamp, ActivityId)
on ActivityId
| project City, ActivityId, StartTime, 
Duration = StopTime – StartTime

Gunakan row_window_session() untuk menghitung nilai mulai sesi untuk kolom dalam kumpulan baris berseri.

...| extend SessionStarted = row_window_session(
Timestamp, 1h, 5m, ID != prev(ID))

eventstats perintah: Contoh SPL

… | bin span=1m _time
|stats count AS count_i by _time, category
| eventstats sum(count_i) as count_total by _time

eventstats perintah: Contoh KQL

Berikut ini contoh dengan pernyataan join:

let binSize = 1h;
let detail = SecurityEvent 
| summarize detail_count = count() by EventID,
tbin = bin(TimeGenerated, binSize);
let summary = SecurityEvent
| summarize sum_count = count() by 
tbin = bin(TimeGenerated, binSize);
detail 
| join kind=leftouter (summary) on tbin 
| project-away tbin1

Berikut ini contoh dengan pernyataan make_list:

let binSize = 1m;
SecurityEvent
| where TimeGenerated >= ago(24h)
| summarize TotalEvents = count() by EventID, 
groupBin =bin(TimeGenerated, binSize)
|summarize make_list(EventID), make_list(TotalEvents), 
sum(TotalEvents) by groupBin
| mvexpand list_EventID, list_TotalEvents

anomalydetection perintah: Contoh SPL

sourcetype=nasdaq earliest=-10y
| anomalydetection Close _ Price

anomalydetection perintah: Contoh KQL

let LookBackPeriod= 7d;
let disableAccountLogon=SignIn
| where ResultType == "50057"
| where ResultDescription has "account is disabled";
disableAccountLogon
| make-series Trend=count() default=0 on TimeGenerated 
in range(startofday(ago(LookBackPeriod)), now(), 1d)
| extend (RSquare,Slope,Variance,RVariance,Interception,
LineFit)=series_fit_line(Trend)
| extend (anomalies,score) = 
series_decompose_anomalies(Trend)

Perintah umum eval

Perintah SPL Deskripsi Contoh SPL Perintah KQL Contoh KQL
abs(X) Mengembalikan nilai absolut X. abs(number) abs() abs(X)
case(X,"Y",…) Mengambil pasangan argumen X dan Y, di mana argumen X adalah ekspresi boolean. Saat dievaluasi ke TRUE, argumen mengembalikan argumen Y yang sesuai. Contoh SPL case Contoh KQL
ceil(X) Plafon angka X. ceil(1.9) ceiling() ceiling(1.9)
cidrmatch("X",Y) Mengidentifikasi alamat IP milik subnet tertentu. cidrmatch
("123.132.32.0/25",ip)
ipv4_is_match()
ipv6_is_match()
ipv4_is_match('192.168.1.1', '192.168.1.255')
== false
coalesce(X,…) Mengembalikan nilai pertama yang bukan null. coalesce(null(), "Returned val", null()) coalesce() coalesce(tolong("not a number"),
tolong("42"), 33) == 42
cos(X) Menghitung kosinus dari X. n=cos(0) cos() cos(X)
exact(X) Mengevaluasi ekspresi X menggunakan aritmatika floating point presisi ganda. exact(3.14*num) todecimal() todecimal(3.14*2)
exp(X) Mengembalikan eX. exp(3) exp() exp(3)
if(X,Y,Z) Jika X bernilai TRUE, hasilnya adalah argumen kedua Y. Jika X dievaluasi ke FALSE, hasilnya dievaluasi ke argumen ketiga Z. if(error==200,
"OK", "Error")
iff() Contoh KQL
isbool(X) Mengembalikan TRUE jika X adalah boolean. isbool(field) iff()
gettype
iff(gettype(X) =="bool","TRUE","FALSE")
isint(X) Mengembalikan TRUE jika X adalah bilangan bulat. isint(field) iff()
gettype
Contoh KQL
isnull(X) Mengembalikan TRUE jika X adalah null. isnull(field) isnull() isnull(field)
isstr(X) Mengembalikan TRUE jika X adalah string. isstr(field) iff()
gettype
Contoh KQL
len(X) Fungsi ini mengembalikan panjang karakter string X. len(field) strlen() strlen(field)
like(X,"y") Mengembalikan TRUE jika dan hanya jika X seperti pola SQLite di Y. like(field, "addr%") has
contains
startswith
cocok dengan regex
Contoh KQL
log(X,Y) Mengembalikan log argumen pertama X menggunakan argumen kedua Y sebagai basis. Nilai default Y adalah 10. log(number,2) log
log2
log10
log(X)

log2(X)

log10(X)
lower(X) Mengembalikan nilai huruf kecil dari X. lower(username) tolower tolower(username)
ltrim(X,Y) Mengembalikan X dengan karakter dalam parameter Y dipangkas dari sisi kiri. Keluaran default dari Y adalah spasi dan tab. ltrim(" ZZZabcZZ ", " Z") trim_start() trim_start(“ ZZZabcZZ”,” ZZZ”)
match(X,Y) Mengembalikan jika X cocok dengan pola regex Y. match(field, "^\d{1,3}.\d$") matches regex … | where field matches regex @"^\d{1,3}.\d$")
max(X,…) Mengembalikan nilai maksimum dalam kolom. max(delay, mydelay) max()
arg_max()
… | summarize max(field)
md5(X) Mengembalikan hash MD5 dari nilai string X. md5(field) hash_md5 hash_md5("X")
min(X,…) Mengembalikan nilai minimum dalam kolom. min(delay, mydelay) min_of()
mnt()
arg_min
Contoh KQL
mvcount(X) Mengembalikan jumlah (total) dari X nilai. mvcount(multifield) dcount …| summarize dcount(X) by Y
mvfilter(X) Memfilter bidang multinilai berdasarkan ekspresi boolean X. mvfilter(match(email, "net$")) mv-apply Contoh KQL
mvindex(X,Y,Z) Mengembalikan subkumpulan argumen X multinilai dari posisi awal (berbasis nol) Y ke Z (opsional). mvindex( multifield, 2) array_slice array_slice(arr, 1, 2)
mvjoin(X,Y) Diberikan bidang multi-nilai X dan pembatas string Y, dan menggabungkan nilai individual X menggunakan Y. mvjoin(address, ";") strcat_array Contoh KQL
now() Mengembalikan waktu saat ini, direpresentasikan dalam waktu Unix. now() now() now()

now(-2d)
null() Tidak menerima argumen dan mengembalikan NULL. null() nihil null
nullif(X,Y) Menyertakan dua argumen, X dan Y, dan mengembalikan X jika argumennya berbeda. Jika tidak, kembalikan NULL. nullif(fieldA, fieldB) iff iff(fieldA==fieldB, null, fieldA)
random() Mengembalikan angka pseudo-acak antara 0 hingga 2147483647. random() rand() rand()
relative_ time(X,Y) Diberikan waktu epoch X dan penentu waktu relatif Y, mengembalikan nilai waktu epoch Y yang diterapkan ke X. relative_time(now(),"-1d@d") waktu unix Contoh KQL
replace(X,Y,Z) Mengembalikan string yang dibentuk dengan mengganti string Z untuk setiap kemunculan string ekspresi reguler Y dalam string X. Mengembalikan tanggal dengan nomor bulan dan hari dialihkan.
Misalnya, untuk 4/30/2015masukan, keluarannya adalah 30/4/2009:

replace(date, "^(\d{1,2})/ (\d{1,2})/", "\2/\1/")
replace() Contoh KQL
round(X,Y) Mengembalikan X dibulatkan ke jumlah desimal yang ditentukan oleh Y. Standarnya adalah dibulatkan ke bilangan bulat. round(3.5) round round(3.5)
rtrim(X,Y) Mengembalikan X dengan karakter Y yang dipangkas dari sisi kanan. Jika Y tidak ditentukan, spasi dan tab akan dipangkas. rtrim(" ZZZZabcZZ ", " Z") trim_end() trim_end(@"[ Z]+",A)
searchmatch(X) Mengembalikan TRUE jika peristiwa cocok dengan string penelusuran X. searchmatch("foo AND bar") iff() iff(field has "X","Yes","No")
split(X,"Y") Mengembalikan X sebagai bidang multi-nilai, dipisahkan dengan pemisah Y. split(address, ";") split() split(address, ";")
sqrt(X) Menghasilkan akar kuadrat X. sqrt(9) sqrt() sqrt(9)
strftime(X,Y) Mengembalikan nilai waktu epoch X yang dirender menggunakan format yang ditentukan oleh Y. strftime(_time, "%H:%M") format_datetime() format_datetime(time,'HH:mm')
strptime(X,Y) Diberikan waktu yang diwakili oleh string X, mengembalikan nilai yang diurai dari format Y. strptime(timeStr, "%H:%M") format_datetime() Contoh KQL
substr(X,Y,Z) Mengembalikan bidang substring X dari posisi awal (berbasis satu) Y untuk karakter Z (opsional). substr("string", 1, 3) substring() substring("string", 0, 3)
time() Mengembalikan waktu jam dinding dengan resolusi mikrodetik. time() format_datetime() Contoh KQL
tonumber(X,Y) Mengonversi string input X menjadi angka, di mana Y (opsional, nilai defaultnya adalah 10) menentukan basis angka yang akan dikonversi. tonumber("0A4",16) toint() toint("123")
tostring(X,Y) Deskripsi Contoh SPL tostring() tostring(123)
typeof(X) Mengembalikan representasi string dari tipe bidang. typeof(12) gettype() gettype(12)
urldecode(X) Mengembalikan URL yang X didekodekan. Contoh SPL url_decode Contoh KQL

case(X,"Y",…) Contoh SPL

case(error == 404, "Not found",
error == 500,"Internal Server Error",
error == 200, "OK")

case(X,"Y",…) Contoh KQL

T
| extend Message = case(error == 404, "Not found", 
error == 500,"Internal Server Error", "OK") 

if(X,Y,Z) Contoh KQL

iif(floor(Timestamp, 1d)==floor(now(), 1d), 
"today", "anotherday")

isint(X) Contoh KQL

iif(gettype(X) =="long","TRUE","FALSE")

isstr(X) Contoh KQL

iif(gettype(X) =="string","TRUE","FALSE")

like(X,"y") contoh

… | where field has "addr"

… | where field contains "addr"

… | where field startswith "addr"

… | where field matches regex "^addr.*"

min(X,…) Contoh KQL

min_of (expr_1, expr_2 ...)

…|summarize min(expr)

…| summarize arg_min(Price,*) by Product

mvfilter(X) Contoh KQL

T | mv-apply Metric to typeof(real) on 
(
 top 2 by Metric desc
)

mvjoin(X,Y) Contoh KQL

strcat_array(dynamic([1, 2, 3]), "->")

relative time(X,Y) Contoh KQL

let toUnixTime = (dt:datetime)
{
(dt - datetime(1970-01-01))/1s 
};

replace(X,Y,Z) Contoh KQL

replace( @'^(\d{1,2})/(\d{1,2})/', @'\2/\1/',date)

strptime(X,Y) Contoh KQL

format_datetime(datetime('2017-08-16 11:25:10'),
'HH:mm')

time() Contoh KQL

format_datetime(datetime(2015-12-14 02:03:04),
'h:m:s')

tostring(X,Y)

Mengembalikan nilai bidang X sebagai string.

  • Jika nilai X adalah angka, X diformat ulang menjadi nilai string.
  • Jika X adalah nilai boolean, X diformat ulang menjadi TRUE atau FALSE.
  • Jika X adalah angka, argumen kedua Y adalah opsional dan dapat berupa hex (mengubah X menjadi heksadesimal), commas (memformat X dengan koma dan dua tempat desimal), atau duration (mengonversi X dari format waktu dalam detik ke format waktu yang dapat dibaca: HH:MM:SS).
tostring(X,Y) Contoh SPL

Contoh ini mengembalikan:

foo=615 and foo2=00:10:15:

… | eval foo=615 | eval foo2 = tostring(
foo, "duration")

urldecode(X) Contoh SPL

urldecode("http%3A%2F%2Fwww.splunk.com%2Fdownload%3Fr%3Dheader")

Contoh KQL perintah umum stats

Perintah SPL Deskripsi Perintah KQL Contoh KQL
avg(X) Mengembalikan nilai rata-rata bidang X. rata-rata() avg(X)
count(X) Mengembalikan jumlah kemunculan bidang X. Untuk menunjukkan nilai bidang tertentu yang akan dicocokkan, format X sebagai eval(field="value"). count() summarize count()
dc(X) Mengembalikan jumlah nilai yang berbeda dari bidang X. dcount() …\| summarize countries=dcount(country) by continent
earliest(X) Mengembalikan nilai yang terlihat paling awal secara kronologis dari X. arg_min() … \| summarize arg_min(TimeGenerated, *) by X
latest(X) Mengembalikan nilai yang dilihat terakhir secara kronologis dari X. arg_max() … \| summarize arg_max(TimeGenerated, *) by X
max(X) Mengembalikan nilai maksimum bidang X. Jika nilai X adalah non-numerik, nilai maksimum ditemukan melalui urutan abjad. max() …\| summarize max(X)
median(X) Mengembalikan nilai paling tengah dari bidang X. percentile() …\| summarize percentile(X, 50)
min(X) Mengembalikan nilai minimum bidang X. Jika nilai X adalah non-numerik, nilai minimum ditemukan melalui urutan abjad. min() …\| summarize min(X)
mode(X) Mengembalikan nilai bidang yang paling sering X. pemukul teratas() …\| top-hitters 1 of Y by X
perc(Y) Mengembalikan nilai persentil X bidang Y. Misalnya, perc5(total) mengembalikan nilai persentil kelima bidang total. percentile() …\| summarize percentile(Y, 5)
range(X) Mengembalikan selisih antara nilai maksimum dan minimum bidang X. range() range(1, 3)
stdev(X) Mengembalikan simpangan baku sampel bidang X. stdev stdev()
stdevp(X) Mengembalikan simpangan baku populasi bidang X. stdevp() stdevp()
sum(X) Mengembalikan jumlah nilai bidang X. sum() sum(X)
sumsq(X) Mengembalikan jumlah kuadrat dari nilai bidang X.
values(X) Mengembalikan daftar semua nilai yang berbeda dari bidang X sebagai entri multi-nilai. Urutan nilainya adalah abjad. make_set() …\| summarize r = make_set(X)
var(X) Mengembalikan varians sampel bidang X. varian variance(X)

Langkah berikutnya

Dalam artikel ini, Anda mempelajari cara memetakan aturan migrasi Anda dari Splunk ke Microsoft Sentinel.