包含来自另一个查询的数据的AzureSentinelKusto查询表
我正在尝试找到一种方法来使用 Azure Sentinel 根据安全警报将所有 DNS 结果提取到域中。
在安全警报表下,它们提供事件的域名作为 JSON 的一部分,这是用于提取该数据的表。
SecurityAlert
| where parse_json(ExtendedProperties).AnalyticDescription == "Usage of digital currency mining pool"
| extend DomainName_ = tostring(parse_json(ExtendedProperties).DomainName);
我想做的是获取该查询,然后查询 DnsEvents 表以查找与表 Name 上的域名匹配的所有查询。查询的一个例子是
DnsEvents
| where Name contains "xmr-au1.nanopool.org"
如何执行第二个查询但使用第一个查询中的数据进行过滤?
回答
你可以尝试这样的事情:
let domain_names =
SecurityAlert
| where ExtendedProperties has 'Usage of digital currency mining pool' // this line is optional, but may improve performance
| extend props = parse_json(ExtendedProperties).
| where props.AnalyticDescription == "Usage of digital currency mining pool"
| project DomainName_ = tostring(props.DomainName)
;
DnsEvents
| where Name has_any (domain_names)