共用方式為


將 QRadar 偵測規則移轉至 Microsoft Sentinel

本文說明如何識別、比較和移轉 QRadar 偵測規則至 Microsoft Sentinel 內建規則。

識別和移轉規則

Microsoft Sentinel 會使用機器學習分析來建立高精確度且可採取動作的事件,而您的某些現有偵測可能會在 Microsoft Sentinel 中備援。 因此,請不要盲目地移轉所有偵測和分析規則。 當您識別現有的偵測規則時,請檢閱這些考量事項。

  • 請務必選取可證明規則移轉的使用案例,考慮商務優先順序和效率。
  • 確認您了解 Microsoft Sentinel 規則類型
  • 確認您了解規則術語
  • 檢閱過去 6-12 個月內未觸發任何警示的任何規則,並判斷其是否仍然相關。
  • 消除您定期忽略的低階威脅或警示。
  • 使用現有的功能,並檢查 Microsoft Sentinel 的內建分析規則是否可以處理您目前的使用案例。 因為 Microsoft Sentinel 使用機器學習分析來產生很逼真又可因應的事件,所以可能不再需要某些現有的偵測。
  • 確認已連線的資料來源,並檢閱資料連線方法。 回顧覽資料收集交談,以確認您打算在使用案例上偵測的資料深度和廣度。
  • 探索 SOC Prime Threat Detection Marketplace 之類社群資源,以檢查您的規則是否可用。
  • 考慮線上查詢轉換器 (例如 Uncoder.io) 是否適用於您的規則。
  • 如果規則不適用或無法轉換,則必須使用 KQL 查詢來手動建立規則。 檢閱規則對應以建立新的查詢。

深入了解移轉偵測規則的最佳做法

若要將分析規則移轉至 Microsoft Sentinel

  1. 請確認已備妥測試系統來處理您要移轉的每個規則。

    1. 針對已移轉的規則準備驗證程序,包括完整的測試案例和指令碼。

    2. 請確定您的小組有實用的資源來測試已移轉的規則。

    3. 確認您已連線任何必要的資料來源,並檢閱您的資料連線方法。

  2. 確認您的偵測是否可作為 Microsoft Sentinel 中的內建範本:

    • 如果內建規則已足夠,請使用內建規則範本來為您自己的工作區建立規則。

      在 Microsoft Sentinel 中,移至 [設定]> [分析] > [規則範本] 索引標籤,然後建立並更新每個相關的分析規則。

      如需詳細資訊,請參閱立即偵測威脅

    • 如果您有 Microsoft Sentinel 內建規則未涵蓋的偵測,請嘗試線上查詢轉換器 (例如 Uncoder.io),將您的查詢轉換成 KQL。

      識別觸發條件和規則動作,然後建構並檢閱您的 KQL 查詢。

    • 如果內建規則和線上規則轉換器都不夠,您必須手動建立規則。 在這種情況下,請使用下列步驟開始建立規則:

      1. 識別您想要在規則中使用的資料來源。 您想要在 Microsoft Sentinel 中的資料來源與資料表之間建立對應資料表,以識別您想要查詢的資料表。

      2. 在您想要用於規則的資料中,識別任何屬性、欄位或實體

      3. 識別您的規則準則和邏輯。 在這個階段,您可能會想要使用規則範本作為如何建構 KQL 查詢的範例。

        請考慮篩選、相互關聯規則、作用中清單、參考集、關注清單、偵測異常、彙總等等。 您可以使用舊版 SIEM 所提供的參考,以了解如何最正確對應查詢語法

      4. 識別觸發條件和規則動作,然後建構並檢閱您的 KQL 查詢。 檢閱查詢時,請考慮 KQL 最佳化指引資源。

  3. 使用每個相關使用案例測試規則。 如果未提供預期的結果,您可以檢閱 KQL,然後再測試一次。

  4. 當您滿意時,可以考慮移轉的規則。 視需要為您的規則動作建立劇本。 如需詳細資訊,請參閱使用 Microsoft Sentinel 中的劇本將威脅回應自動化

深入了解分析規則:

比較規則術語

此表可協助您釐清 Microsoft Sentinel 與 QRadar 的規則概念比較。

QRadar Microsoft Sentinel
規則型別 • 事件
• 流程
• 通用
• 冒犯
• 異常偵測規則
• 排程的查詢
• 融合
• Microsoft 安全性
• Machine Learning (ML) 行為分析
準則 在測試條件中定義 在 KQL 中定義
觸發條件 在規則中定義 閾值:查詢結果數目
動作 • 建立冒犯
• 分派新事件
• 新增至參考集或資料
• 等等
• 建立警示或事件
• 與 Logic Apps 整合

對應和比較規則範例

使用這些範例,在各種案例中比較 QRadar 與 Microsoft Sentinel 的規則並加以對應。

規則 語法 範例偵測規則 (QRadar) 範例 KQL 查詢 資源
通用屬性測試 QRadar 語法 規則運算式範例
AQL 篩選查詢範例
equals/not equals 範例
規則運算式範例
AQL 篩選查詢範例
equals/not equals 範例
• 規則運算式:符合規則運算式
• AQL 篩選查詢:字串運算子
• equals/not equals:字串運算子
日期/時間測試 QRadar 語法 選取的月份日期範例
選取的星期數範例
after/before/at 範例
選取的月份日期範例
選取的星期數範例
after/before/at 範例
日期和時間運算子
• 選取的月份日期:dayofmonth()
• 選取的星期幾:dayofweek()
• after/before/at:format_datetime()
事件屬性測試 QRadar 語法 IP 通訊協定範例
事件承載字串範例
IP 通訊協定範例
事件承載字串範例
• IP 通訊協定:字串運算子
• 事件承載字串:has
函數:計數器 QRadar 語法 事件屬性和時間範例 事件屬性和時間範例 summarize
函數:負條件 QRadar 語法 負條件範例 負條件範例 join()
字串運算子
數值運算子
函數:簡單 QRadar 語法 簡單條件範例 簡單條件範例 or
IP/連接埠測試 QRadar 語法 來源連接埠範例
來源 IP 範例
來源連接埠範例
來源 IP 範例
記錄來源測試 QRadar 語法 記錄來源範例 記錄來源範例

通用屬性測試語法

以下是通用屬性測試規則的 QRadar 語法。

圖表,其中說明通用屬性測試規則語法。

通用屬性測試:規則運算式範例 (QRadar)

以下是可使用規則運算式的範例 QRadar 通用屬性測試規則語法:

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

以下是 QRadar 中的範例規則。

圖表,其中說明可使用規則運算式的通用屬性測試規則。

通用屬性測試:規則運算式範例 (KQL)

以下是 KQL 中具有規則運算式的通用屬性測試規則。

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

通用屬性測試:AQL 篩選查詢範例 (QRadar)

以下是可使用 AQL 篩選查詢的範例 QRadar 通用屬性測試規則語法。

when the event matches <this> AQL filter query

以下是 QRadar 中的範例規則。

圖表,其中說明可使用 AQL 篩選查詢的通用屬性測試規則。

通用屬性測試:AQL 篩選查詢範例 (KQL)

以下是 KQL 中具有 AQL 篩選查詢的常見屬性測試規則。

CommonSecurityLog
| where SourceIP == '10.1.1.10'

通用屬性測試:equals/not equals 範例 (QRadar)

以下是可使用 equalsnot equals 運算子的範例 QRadar 通用屬性測試規則語法。

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

以下是 QRadar 中的範例規則。

圖表,其中說明可使用 equals/not equals 的通用屬性測試規則。

通用屬性測試:equals/not equals 範例 (KQL)

以下是 KQL 中具有 equalsnot equals 運算子的通用屬性測試規則。

CommonSecurityLog
| where SourceIP == DestinationIP

日期/時間測試語法

以下是日期/時間測試規則的 QRadar 語法。

圖表,其中說明日期/時間測試規則語法。

日期/時間測試:選取的月份日期範例 (QRadar)

以下是可使用所選取月份日期的範例 QRadar 日期/時間測試規則語法。

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

以下是 QRadar 中的範例規則。

圖表,其中說明可使用所選取日期的日期/時間測試規則。

日期/時間測試:選取的月份日期範例 (KQL)

以下是 KQL 中具有所選取月份日期的日期/時間測試規則。

SecurityEvent
 | where dayofmonth(TimeGenerated) < 4

日期/時間測試:選取的星期幾範例 (QRadar)

以下是可使用所選取星期幾的範例 QRadar 日期/時間測試規則語法:

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

以下是 QRadar 中的範例規則。

圖表,其中說明可使用所選取星期幾的日期/時間測試規則。

日期/時間測試:選取的星期幾範例 (KQL)

以下是 KQL 中具有所選取星期幾的日期/時間測試規則。

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

日期/時間測試:after/before/at 範例 (QRadar)

以下是可使用 afterbeforeat 運算子的範例 QRadar 日期/時間測試規則語法。

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

以下是 QRadar 中的範例規則。

圖表,其中說明可使用 after/before/at 運算子的日期/時間測試規則。

日期/時間測試:after/before/at 範例 (KQL)

以下是 KQL 中可使用 afterbeforeat 運算子的日期/時間測試規則。

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

TimeGenerated 是以 UTC/GMT 為單位。

事件屬性測試語法

以下是事件屬性測試規則的 QRadar 語法。

圖表,其中說明事件屬性測試規則語法。

事件屬性測試:IP 通訊協定範例 (QRadar)

以下是使用 IP 通訊協定的範例 QRadar 事件屬性測試規則語法。

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

以下是 QRadar 中的範例規則。

圖表,其中說明可使用 IP 通訊協定的事件屬性測試規則。

事件屬性測試:IP 通訊協定範例 (KQL)

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

事件屬性測試:事件承載字串範例 (QRadar)

以下是使用 Event Payload 字串值的範例 QRadar 事件屬性測試規則語法。

and when the Event Payload contains <this string>

以下是 QRadar 中的範例規則。

圖表,其中說明可使用事件承載字串的事件屬性測試規則。

事件屬性測試:事件承載字串範例 (KQL)

CommonSecurityLog
| where DeviceVendor has "Palo Alto"

search "Palo Alto"

若要將效能最佳化,請在您已經知道資料表名稱時避免使用 search 命令。

函數:計數器語法

以下是可使用計數器的 QRadar 函數規則語法。

圖表,其中說明可使用計數器的函數規則語法。

計數器:事件屬性和時間範例 (QRadar)

以下是範例 QRadar 函數規則的語法,而此規則使用已定義分鐘數內的事件屬性數目。

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

以下是 QRadar 中的範例規則。

圖表,其中說明可使用事件屬性的函數規則。

計數器:事件屬性和時間範例 (KQL)

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

函數:負條件語法

以下是可使用負條件的 QRadar 函數規則語法。

圖表,其中說明可使用負條件的函數規則語法。

負條件範例 (QRadar)

以下是可使用負條件的範例 QRadar 函數規則語法。

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

以下是 QRadar 中的兩個已定義規則。 負條件將會以這些規則為基礎。

圖表,其中說明要用於負條件規則的事件屬性測試規則。

圖表,其中說明要用於負條件規則的通用屬性測試規則。

以下是根據上述規則的負條件規則範例。

圖表,其中說明具有負條件的函數規則。

負條件範例 (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

函數:簡單條件語法

以下是可使用簡單條件的 QRadar 函數規則語法。

圖表,其中說明可使用簡單條件的函數規則語法。

簡單條件範例 (QRadar)

以下是可使用簡單條件的範例 QRadar 函數規則語法。

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

以下是 QRadar 中的範例規則。

圖表,其中說明具有簡單條件的函數規則。

簡單條件範例 (KQL)

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

IP/連接埠測試語法

以下是 IP/連接埠測試規則的 QRadar 語法。

圖表,其中說明 IP/連接埠測試規則語法。

IP/連接埠測試:來源連接埠範例 (QRadar)

以下是指定來源連接埠的範例 QRadar 規則語法。

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

以下是 QRadar 中的範例規則。

圖表,其中說明可指定來源連接埠的規則。

IP/連接埠測試:來源連接埠範例 (KQL)

CommonSecurityLog
| where SourcePort == 20

IP/連接埠測試:來源 IP 範例 (QRadar)

以下是指定來源 IP 的範例 QRadar 規則語法。

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

以下是 QRadar 中的範例規則。

圖表,其中說明可指定來源 IP 位址的規則。

IP/連接埠測試:來源 IP 範例 (KQL)

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

記錄來源測試語法

以下是記錄來源測試規則的 QRadar 語法。

圖表,其中說明記錄來源測試規則語法。

記錄來源範例 (QRadar)

以下是指定記錄來源的範例 QRadar 規則語法。

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

以下是 QRadar 中的範例規則。

圖表,其中說明可指定記錄來源的規則。

記錄來源範例 (KQL)

OfficeActivity
| where OfficeWorkload == "Exchange"

後續步驟

在本文中,您已瞭了解如何將移轉規則從 QRadar 對應至 Microsoft Sentinel。