lawndoc/AdvancedHuntingQueries
GitHub: lawndoc/AdvancedHuntingQueries
Stars: 133 | Forks: 18
# 高级搜寻查询
我收集的 Microsoft 365 高级搜寻查询,使用 Kusto Query Language (KQL) 编写。我的查询属于公共领域 ([Unlicense](LICENSE)),但如果您在其他地方重新发布它们,请注明/标记来源。
此仓库包含带有热链接的 '🔎' 图标,可将查询直接插入您的 M365 Security 租户。
点击类别开始探索我的搜寻查询!
## 查询类别:
### [📈 异常](Anomalies)
- 识别各种活动中最显著的峰值
### [🛡️ ASR 规则](ASR)
- 帮助您构建 [Attack Surface Reduction](https://learn.microsoft.com/en-us/microsoft-365/security/defender-endpoint/attack-surface-reduction) 策略的查询
### [⚠️ 检测规则](Detection-Rules)
- 可转化为检测规则以创建警报的 Kusto 查询
### [💣 漏洞利用](Exploits)
- 搜寻您环境中正在被使用的特定漏洞利用
### [🕵️ 事件响应](Incident-Response)
- 搜寻已知的 IOC 和来自受损主机的活动
### [🎣 钓鱼](Phishing)
- 识别您环境中潜在的钓鱼邮件
### [📝 草稿](Rough-Drafts)
- 我编写的检测规则,对搜寻有用但尚未准备好生成警报
### [🏰 安全态势](Posture)
- 突显不良的安全操作实践
### [🧑 用户行为](User-Behavior)
- 与用户活动相关的查询——并非所有都与安全相关
### [🛠️ 实用工具](Utilities)
- 有助于身份关联、指标、策略构建等的实用查询
## 编写您自己的查询
### 入门指南
要想在 KQL 上变得更强,最好的起点就是 **探索数据**。通过探索数据,您的好奇心可以引导您深入探索“我该如何找到这个?”的问题。它还有助于您理解数据。**如果您不知道自己有哪些可用信息,就无法制作自己的搜寻查询**。
选择一个像 `DeviceEvents` 这样的表,并使用 `take 10` 仅提取 10 个随机事件作为样本。这将让您了解该表中包含哪些数据。
```
DeviceEvents
| take 10
```
我发现 `distinct` 运算符对于识别特定列中预期可找到的值非常有用。这能让我了解如何过滤数据或仅显示特定内容。
```
DeviceEvents
| distinct ActionType
```
当排查一个无法给出您想要结果的查询时,首先需要做的是确定 *哪一行* 出了问题。插入 `take 10` 或 `where` 过滤器,然后留一个 **空行**,这将允许您检查您预期看到或不想看到的值。
```
DeviceProcessEvents
| where ProcessCommandLine contains "iex"
| take 10 // the blank line below will end this 3-line query
| summarize Count = count() by InitiatingProcessFileName // this line won't execute because of the blank line above
```
为了整理输出,您可以使用 `project`、`project-away` 和 `project-reorder` 隐藏您不关心的列。按 `Timestamp` 或 `Count` 等列进行 `sort` 也很有帮助。拥有一个易于理解的输出与查询本身一样重要。
请尝试运行以下包含和不包含 `project` 和 `sort` 的查询
```
DeviceProcessEvents
| where FileName contains "whoami"
| project Timestamp, DeviceName, AccountName, FileName, InitiatingProcessCommandLine
```
```
DeviceProcessEvents
| where FileName == "cmd.exe"
| summarize Count = count() by AccountName
| sort by Count desc
```
标签:ASR 规则, Defender XDR, IOCs, KQL, Kusto 查询语言, MDE, Microsoft 365, Microsoft Defender for Endpoint, Object Callbacks, PB级数据处理, 威胁情报, 安全态势, 安全脚本, 安全运维, 开发者工具, 异常检测, 攻击面缩减, 检测规则, 用户行为分析, 网络资产发现, 网络钓鱼, 高级搜寻