你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

修改内容以使用高级安全信息模型 (ASIM)

Microsoft Sentinel中的规范化安全内容包括分析规则、搜寻查询以及使用统一规范化分析器的工作簿。

您可以在 Microsoft Sentinel 库和 Microsoft Sentinel 解决方案目录 中找到规范化的开箱即用内容,也可以创建自己的规范化内容,或修改现有的自定义内容以使用规范化数据。

本文介绍如何将现有Microsoft Sentinel分析规则转换为将 ASIM 规范化数据与高级安全信息模型(ASIM)配合使用。

若要了解规范化内容如何适合 ASIM 体系结构,请参阅 ASIM 体系结构图

修改自定义内容以使用规范化

若要使您的自定义 Microsoft Sentinel 内容使用标准化:

  • 修改查询以使用与查询相关的任何 ASIM 统一分析器

  • 修改查询中的字段名称以使用 ASIM 规范化架构 字段名称。

  • 如果适用,请更改条件以使用查询中字段的规范化值。

分析规则的示例规范化

例如,以 观察到反向 DNS 查找次数较高的罕见客户端 DNS 分析规则为例,该规则基于 Infoblox DNS 服务器发送的 DNS 事件运行:

let threshold = 200;
InfobloxNIOS
| where ProcessName =~ "named" and Log_Type =~ "client"
| where isnotempty(ResponseCode)
| where ResponseCode =~ "NXDOMAIN"
| summarize count() by Client_IP, bin(TimeGenerated,15m)
| where count_ > threshold
| join kind=inner (InfobloxNIOS
    | where ProcessName =~ "named" and Log_Type =~ "client"
    | where isnotempty(ResponseCode)
    | where ResponseCode =~ "NXDOMAIN"
    ) on Client_IP
| extend timestamp = TimeGenerated, IPCustomEntity = Client_IP

以下代码是与源无关的版本,它使用规范化为提供 DNS 查询事件的任何源提供相同的检测。 以下示例使用内置的 ASIM 分析程序:

_Im_Dns(responsecodename='NXDOMAIN')
| summarize count() by SrcIpAddr, bin(TimeGenerated,15m)
| where count_ > threshold
| join kind=inner (imDns(responsecodename='NXDOMAIN')) on SrcIpAddr
| extend timestamp = TimeGenerated, IPCustomEntity = SrcIpAddr

规范化、与源无关的版本具有以下差异:

  • 使用 _Im_DnsimDns规范化分析程序,而不是 Infoblox 分析器。

  • 规范化解析器仅获取 DNS 查询事件,因此无需像 Infoblox 版本中的 where ProcessName =~ "named" and Log_Type =~ "client" 那样检查事件类型。

  • 使用 SrcIpAddr 字段而不是 Client_IP

  • 分析程序参数筛选用于 ResponseCodeName,不再需要显式 where 子句。

注意

除了支持任何规范化 DNS 源外,规范化版本更短且更易于理解。

如果架构或分析程序不支持筛选参数,则规范化规则所需的查询更改类似,只是筛选条件与原始查询保持一样。 例如:

let threshold = 200;
imDns
| where isnotempty(ResponseCodeName)
| where ResponseCodeName =~ "NXDOMAIN"
| summarize count() by SrcIpAddr, bin(TimeGenerated,15m)
| where count_ > threshold
| join kind=inner (imDns
    | where isnotempty(ResponseCodeName)
    | where ResponseCodeName =~ "NXDOMAIN"
    ) on SrcIpAddr
| extend timestamp = TimeGenerated, IPCustomEntity = SrcIpAddr

请参阅 Kusto 文档中有关 DNS 查询规范化示例中使用的以下 KQL 元素的详细信息:

有关 KQL 的详细信息,请参阅 Kusto 查询语言 (KQL) 概述

其他资源:

有关详细信息,请参阅以下资源: