Memigrasikan aturan deteksi QRadar ke Microsoft Sentinel

Artikel ini menjelaskan cara mengidentifikasi, membandingkan, dan memigrasikan aturan deteksi QRadar ke aturan bawaan Microsoft Sentinel.

Mengidentifikasi dan memigrasi aturan

Microsoft Sentinel menggunakan analisis pembelajaran mesin untuk menciptakan insiden dengan keakuratan tinggi dan dapat ditindaklanjuti, serta beberapa deteksi yang ada mungkin redundan di Microsoft Sentinel. Oleh karena itu, jangan migrasikan semua aturan deteksi dan analitik Anda 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 apa pun yang belum memicu peringatan apa pun dalam 6-12 bulan terakhir, dan tentukan apakah aturan tersebut masih relevan.
  • Hilangkan ancaman atau peringatan tingkat rendah yang secara rutin Anda abaikan.
  • Gunakan fungsi yang ada, dan periksa apakah aturan analitik bawaan Microsoft Sentinel dapat mengatasi kasus penggunaan Anda saat ini. Karena Microsoft Sentinel menggunakan analitik pembelajaran mesin untuk menghasilkan fidelitas tinggi dan insiden yang dapat ditindaklanjuti, kemungkinan beberapa deteksi Anda yang sudah ada tidak diperlukan lagi.
  • Konfirmasikan sumber data yang terhubung dan ulas metode koneksi data Anda. Tinjau kembali percakapan kumpulan data untuk memastikan kedalaman dan keluasan data di seluruh kasus penggunaan yang Anda rencanakan untuk dideteksi.
  • Jelajahi sumber daya komunitas seperti SOC Prime Threat Detection Marketplace untuk memeriksa apakah aturan Anda tersedia.
  • Pertimbangkan apakah konverter kueri online seperti Uncoder.io dapat berfungsi untuk aturan Anda.
  • Jika aturan tidak tersedia atau tidak dapat dikonversi, aturan harus dibuat secara manual, menggunakan kueri KQL. Tinjau pemetaan aturan untuk membuat kueri baru.

Pelajari lebih lanjut tentang praktik terbaik untuk memigrasikan aturan deteksi.

Untuk memigrasikan aturan analitik Anda ke Microsoft Sentinel:

  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. Konfirmasi apakah Anda memiliki sumber data terhubung yang diperlukan, dan tinjau metode koneksi data Anda.

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

    • Jika aturan bawaan cukup, gunakan templat aturan bawaan untuk membuat aturan untuk ruang kerja Anda sendiri.

      Di Microsoft Sentinel, buka tab Konfigurasi > Analitik > Templat aturan, dan buat serta perbarui setiap aturan analitik yang relevan.

      Untuk informasi selengkapnya, lihat Mendeteksi ancaman yang tidak biasa.

    • Jika Anda memiliki deteksi yang tidak dicakup oleh aturan bawaan Microsoft Sentinel, coba pengonversi kueri online, seperti Uncoder.io untuk mengonversi kueri ke KQL.

      Identifikasi kondisi pemicu dan tindakan aturan, lalu bangun dan tinjau kueri KQL Anda.

    • Jika aturan bawaan atau pengonversi aturan online tidak cukup, Anda harus membuat aturan secara manual. Dalam kasus seperti itu, gunakan langkah-langkah berikut untuk mulai membuat aturan Anda:

      1. Mengidentifikasi sumber data yang ingin Anda gunakan dalam aturan Anda. Anda akan membuat tabel pemetaan antara sumber data dan tabel data di MIcrosoft Sentinel untuk mengidentifikasi tabel yang ingin Anda kueri.

      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, Anda mungkin ingin menggunakan templat aturan sebagai sampel cara membangun 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, Anda mungkin ingin mengulas KQL dan mengujinya lagi.

  4. Ketika Anda puas, Anda dapat mempertimbangkan 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 selengkapanya tentang aturan analitik:

Membandingkan terminologi aturan

Tabel ini membantu Anda menjelaskan konsep aturan di Microsoft Sentinel dan perbandingannya dengan QRadar.

QRadar Microsoft Sentinel
Jenis aturan • Peristiwa
• Alur
• Umum
• Pelanggaran
• Aturan deteksi anomali
• Kueri terjadwal
• Fusion
• Keamanan Microsoft
• Analisis Perilaku Pembelajaran Mesin (ML)
Kriteria Ditentukan dalam kondisi pengujian Ditentukan dalam KQL
Kondisi pemicu Ditentukan dalam aturan Ambang: Jumlah hasil kueri
Tindakan • Membuat pelanggaran
• Mengirimkan peristiwa baru
• Menambahkan ke kumpulan referensi atau data
• Dan banyak lagi
• Buat peringatan atau insiden
• Terintegrasi dengan Aplikasi Logic Apps

Memetakan dan membandingkan sampel aturan

Gunakan sampel ini untuk membandingkan dan memetakan aturan dari QRadar dengan Microsoft Sentinel dalam berbagai skenario.

Aturan Sintaks Sampel aturan deteksi (QRadar) Sampel kueri KQL Sumber
Pengujian properti umum Sintaks QRadar Contoh regex
Contoh kueri filter AQL
Contoh operator equals/not equals
Contoh regex
Contoh kueri filter AQL
Contoh operator equals/not equals
• Regex: regex yang cocok
• Kueri filter AQL: operator string
• Operator equals/not equals: Operator string
Pengujian tanggal/waktu Sintaks QRadar Contoh hari yang dipilih dalam sebulan
Contoh hari yang dipilih dalam seminggu
Contoh operator after/before/at
Contoh hari yang dipilih dalam sebulan
Contoh hari yang dipilih dalam seminggu
Contoh operator after/before/at
Operator tanggal dan waktu
• Hari yang dipilih dalam sebulan: dayofmonth()
• Hari yang dipilih dalam seminggu: dayofweek()
• Operator after/before/at: format_datetime()
Pengujian properti peristiwa Sintaks QRadar Contoh protokol IP
Contoh string Payload peristiwa
Contoh protokol IP
Contoh string Payload peristiwa
• Protokol IP: Operator string
• String Payload peristiwa: memiliki
Fungsi: penghitung Sintaks QRadar Contoh properti dan waktu peristiwa Contoh properti dan waktu peristiwa meringkas
Fungsi: kondisi negatif Sintaks QRadar Contoh kondisi negatif Contoh kondisi negatif join()
Operator string
Operator numerik
Fungsi: sederhana Sintaks QRadar Contoh kondisi sederhana Contoh kondisi sederhana atau
Pengujian IP/port Sintaks QRadar Contoh port sumber
Contoh IP sumber
Contoh port sumber
Contoh IP sumber
Pengujian sumber log Sintaks QRadar Contoh sumber log Contoh sumber log

Sintaks pengujian properti umum

Berikut adalah sintaks QRadar untuk aturan pengujian properti umum.

Diagram yang mengilustrasikan sintaks aturan pengujian properti umum.

Pengujian properti umum: Contoh regex (QRadar)

Berikut adalah sintaks untuk sampel aturan pengujian properti umum QRadar yang menggunakan regex:

when any of <these properties> match <this regular expression>

Berikut adalah sampel aturan di QRadar.

Diagram yang mengilustrasikan aturan pengujian properti umum yang menggunakan ekspresi reguler.

Pengujian properti umum: Contoh regex (KQL)

Berikut adalah aturan pengujian properti umum dengan regex di KQL.

CommonSecurityLog
| where tostring(SourcePort) matches regex @"\d{1,5}" or tostring(DestinationPort) matches regex @"\d{1,5}"

Pengujian properti umum: Contoh kueri filter AQL (QRadar)

Berikut adalah sintaks untuk aturan sampel pengujian properti umum QRadar yang menggunakan kueri filter AQL.

when the event matches <this> AQL filter query

Berikut adalah sampel aturan di QRadar.

Diagram yang mengilustrasikan aturan pengujian properti umum yang menggunakan kueri filter A Q L.

Pengujian properti umum: Contoh kueri filter AQL (KQL)

Berikut adalah aturan pengujian properti umum dengan kueri filter AQL di KQL.

CommonSecurityLog
| where SourceIP == '10.1.1.10'

Pengujian properti umum: Contoh operator equals/not equals (QRadar)

Berikut adalah sintaks untuk sampel aturan pengujian properti umum QRadar yang menggunakan operator equals dan not equals.

and when <this property> <equals/not equals> <this property>

Berikut adalah sampel aturan di QRadar.

Diagram yang mengilustrasikan aturan pengujian properti umum yang menggunakan sama/tidak sama dengan.

Pengujian properti umum: Contoh operator equals/not equals (KQL)

Berikut adalah aturan pengujian properti umum dengan operator equals atau not equals di KQL.

CommonSecurityLog
| where SourceIP == DestinationIP

Sintaks pengujian tanggal/waktu

Berikut adalah sintaks QRadar untuk aturan pengujian tanggal/waktu.

Diagram yang mengilustrasikan sintaks aturan pengujian tanggal/waktu.

Pengujian tanggal/waktu: Contoh hari yang dipilih dalam sebulan (QRadar)

Berikut adalah sintaks untuk sampel aturan pengujian tanggal/waktu QRadar yang menggunakan hari yang dipilih dalam sebulan.

and when the event(s) occur <on/after/before> the <selected> day of the month

Berikut adalah sampel aturan di QRadar.

Diagram yang mengilustrasikan aturan pengujian tanggal/waktu yang menggunakan hari yang dipilih.

Pengujian tanggal/waktu: Contoh hari yang dipilih dalam sebulan (KQL)

Berikut adalah aturan pengujian tanggal/waktu dengan hari yang dipilih dalam sebulan di KQL.

SecurityEvent
 | where dayofmonth(TimeGenerated) < 4

Pengujian tanggal/waktu: Contoh hari yang dipilih dalam seminggu (QRadar)

Berikut adalah sintaks untuk sampel aturan pengujian tanggal/waktu QRadar yang menggunakan hari yang dipilih dalam seminggu:

and when the event(s) occur on any of <these days of the week{Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday}>

Berikut adalah sampel aturan di QRadar.

Diagram yang mengilustrasikan aturan pengujian tanggal/waktu yang menggunakan hari yang dipilih dalam seminggu.

Pengujian tanggal/waktu: Contoh hari yang dipilih dalam seminggu (KQL)

Berikut adalah aturan pengujian tanggal/waktu dengan hari yang dipilih dalam seminggu di KQL.

SecurityEvent
 | where dayofweek(TimeGenerated) between (3d .. 5d)

Pengujian tanggal/waktu: Contoh operator after/before/at (QRadar)

Berikut adalah sintaks untuk sampel aturan pengujian tanggal/waktu yang menggunakan operator after, before, atau at.

and when the event(s) occur <after/before/at> <this time{12.00AM, 12.05AM, ...11.50PM, 11.55PM}>

Berikut adalah sampel aturan di QRadar.

Diagram yang mengilustrasikan aturan pengujian tanggal/waktu yang menggunakan operator after/before/at.

Pengujian tanggal/waktu: Contoh operator after/before/at (KQL)

Berikut adalah aturan pengujian tanggal/waktu yang menggunakan operator after, before, atau at di KQL.

SecurityEvent
| where format_datetime(TimeGenerated,'HH:mm')=="23:55"

TimeGenerated dalam UTC/GMT.

Sintaks pengujian properti peristiwa

Berikut adalah sintaks QRadar untuk aturan pengujian properti peristiwa.

Diagram yang mengilustrasikan sintaks aturan pengujian properti peristiwa.

Pengujian properti peristiwa: Contoh protokol IP (QRadar)

Berikut adalah sintaks untuk sampel aturan pengujian properti peristiwa QRadar yang menggunakan protokol IP.

and when the IP protocol is one of the following <protocols>

Berikut adalah sampel aturan di QRadar.

Diagram yang mengilustrasikan aturan pengujian properti peristiwa yang menggunakan protokol I P.

Pengujian properti peristiwa: Contoh protokol IP (KQL)

CommonSecurityLog
| where Protocol in ("UDP","ICMP")

Pengujian properti peristiwa: Contoh string Payload peristiwa (QRadar)

Berikut adalah sintaks untuk sampel aturan pengujian properti peristiwa QRadar yang menggunakan nilai string Event Payload.

and when the Event Payload contains <this string>

Berikut adalah sampel aturan di QRadar.

Diagram yang mengilustrasikan aturan pengujian properti peristiwa yang menggunakan string Payload Peristiwa.

Pengujian properti peristiwa: Contoh string Payload peristiwa (KQL)

CommonSecurityLog
| where DeviceVendor has "Palo Alto"

search "Palo Alto"

Untuk mengoptimalkan performa, hindari menggunakan perintah search jika Anda sudah mengetahui nama tabel.

Fungsi: sintaks penghitung

Berikut adalah sintaks QRadar untuk aturan fungsi yang menggunakan penghitung.

Diagram yang mengilustrasikan sintaks aturan fungsi yang menggunakan penghitung.

Penghitung: Contoh properti dan waktu peristiwa (QRadar)

Berikut adalah sintaks untuk sampel aturan fungsi QRadar yang menggunakan jumlah properti peristiwa yang ditentukan dalam jumlah menit yang telah ditentukan.

and when at least <this many> events are seen with the same <event properties> in <this many> <minutes>

Berikut adalah sampel aturan di QRadar.

Diagram yang mengilustrasikan aturan fungsi yang menggunakan properti peristiwa.

Penghitung: Contoh properti dan waktu peristiwa (KQL)

CommonSecurityLog
| summarize Count = count() by SourceIP, DestinationIP
| where Count >= 5

Fungsi: sintaks kondisi negatif

Berikut adalah sintaks QRadar untuk aturan fungsi yang menggunakan kondisi negatif.

Diagram yang mengilustrasikan sintaks aturan fungsi yang menggunakan kondisi negatif.

Contoh kondisi negatif (QRadar)

Berikut adalah sintaks untuk sampel aturan fungsi QRadar yang menggunakan kondisi negatif.

and when none of <these rules> match in <this many> <minutes> after <these rules> match with the same <event properties>

Berikut adalah dua aturan yang ditentukan dalam QRadar. Kondisi negatif akan didasarkan pada aturan ini.

Diagram yang mengilustrasikan aturan pengujian properti peristiwa yang akan digunakan untuk aturan kondisi negatif.

Diagram yang mengilustrasikan aturan pengujian properti umum yang akan digunakan untuk aturan kondisi negatif.

Berikut adalah sampel aturan kondisi negatif berdasarkan aturan di atas.

Diagram yang mengilustrasikan aturan fungsi dengan kondisi negatif.

Contoh kondisi negatif (KQL)

let spanoftime = 10m;
let Test2 = (
CommonSecurityLog
| where Protocol !in ("UDP","ICMP")
| where TimeGenerated > ago(spanoftime)
);
let Test6 = (
CommonSecurityLog
| where SourceIP == DestinationIP
);
Test2
| join kind=rightanti Test6 on $left. SourceIP == $right. SourceIP and $left. Protocol ==$right. Protocol

Fungsi: sintaks kondisi sederhana

Berikut adalah sintaks QRadar untuk aturan fungsi yang menggunakan kondisi sederhana.

Diagram yang mengilustrasikan sintaks aturan fungsi yang menggunakan kondisi sederhana.

Contoh kondisi sederhana (QRadar)

Berikut adalah sintaks untuk sampel aturan fungsi QRadar yang menggunakan kondisi sederhana.

and when an event matches <any|all> of the following <rules>

Berikut adalah sampel aturan di QRadar.

Diagram yang mengilustrasikan aturan fungsi dengan kondisi sederhana.

Contoh kondisi sederhana (KQL)

CommonSecurityLog
| where Protocol !in ("UDP","ICMP") or SourceIP == DestinationIP

Sintaks pengujian IP/port

Berikut adalah sintaks QRadar untuk aturan pengujian IP/port.

Diagram yang mengilustrasikan sintaks aturan pengujian IP/port.

Pengujian IP/port: Contoh port sumber (QRadar)

Berikut adalah sintaks untuk sampel aturan QRadar yang menentukan port sumber.

and when the source port is one of the following <ports>

Berikut adalah sampel aturan di QRadar.

Diagram yang mengilustrasikan aturan yang menentukan port sumber.

Pengujian IP/port: Contoh port sumber (KQL)

CommonSecurityLog
| where SourcePort == 20

Pengujian IP/port: Contoh IP sumber (QRadar)

Berikut adalah sintaks untuk sampel aturan QRadar yang menentukan IP sumber.

and when the source IP is one of the following <IP addresses>

Berikut adalah sampel aturan di QRadar.

Diagram yang mengilustrasikan aturan yang menentukan alamat IP sumber.

Pengujian IP/port: Contoh IP sumber (KQL)

CommonSecurityLog
| where SourceIP in (“10.1.1.1”,”10.2.2.2”)

Sintaks pengujian sumber log

Berikut adalah sintaks QRadar untuk aturan pengujian sumber log.

Diagram yang mengilustrasikan sintaks aturan pengujian sumber log.

Contoh sumber log (QRadar)

Berikut adalah sintaks untuk sampel aturan QRadar yang menentukan sumber log.

and when the event(s) were detected by one or more of these <log source types>

Berikut adalah sampel aturan di QRadar.

Diagram yang mengilustrasikan aturan yang menentukan sumber log.

Contoh sumber log (KQL)

OfficeActivity
| where OfficeWorkload == "Exchange"

Langkah berikutnya

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