你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
Microsoft Sentinel 警报架构旨在将各种产品中的安全相关警报进行规范化,成为 Microsoft 高级安全信息模型 (ASIM) 中的标准化格式。 此架构专门介绍安全事件,确保跨越不同数据源,进行一致且高效的分析。
警报架构表示各种类型的安全警报,例如威胁、可疑活动、用户行为异常和合规性违规。 这些警报是由不同的安全产品和系统报告的,包括但不限于 EDR、防病毒软件、入侵检测系统、数据丢失防护工具等。
有关 Microsoft Sentinel 中规范化的详细信息,请参阅规范化和高级安全信息模型 (ASIM)。
分析器
有关 ASIM 分析程序的详细信息,请参阅 ASIM 分析程序概述。
统一分析程序
若要使用统一所有 ASIM 现成分析程序的分析程序,并确保分析可在所有配置源上运行,请使用 _Im_AlertEvent 筛选分析程序或 _ASim_AlertEvent 无参数分析程序。 你还可以使用工作区部署的 imAlertEvent 和 ASimAlertEvent 分析程序,方法是从 Microsoft Sentinel GitHub 存储库进行部署。
有关详细信息,请参阅内置 ASIM 分析程序和工作区部署的分析程序。
现用的特定于源分析器
有关警报分析程序列表Microsoft Sentinel 提供的现装,请参阅 ASIM 分析程序列表。
添加自己的规范化分析器
为警报信息信息模型开发自定义分析程序时,请使用以下语法来命名 KQL 函数:
-
vimAlertEvent<vendor><Product>(对于参数化分析程序) -
ASimAlertEvent<vendor><Product>(对于常规分析程序)
若要了解如何将自定义分析程序添加到警报统一分析程序,请参阅管理 ASIM 分析程序。
筛选分析程序参数
警报分析程序支持各种筛选参数,以提高查询性能。 尽管这些参数是可选的,但它们可以增强查询性能。 可使用以下筛选参数:
| 名称 | 类型 | 说明 |
|---|---|---|
| starttime | 日期/时间 | 仅筛选在此时间或之后启动的警报。 |
| endtime | 日期/时间 | 仅筛选在此时间或之前启动的警报。 |
| ipaddr_has_any_prefix | 动态 | 仅筛选“DvcIpAddr”字段位于其中一个列出的值中的警报。 |
| hostname_has_any | 动态 | 仅筛选“DvcHostname”字段位于其中一个列出的值中的警报。 |
| username_has_any | 动态 | 仅筛选“Username”字段位于其中一个列出的值中的警报。 |
| attacktactics_has_any | 动态 | 仅筛选“AttackTactics”字段位于其中一个列出的值中的警报。 |
| attacktechniques_has_any | 动态 | 仅筛选“AttackTechniques”字段位于其中一个列出的值中的警报。 |
| threatcategory_has_any | 动态 | 仅筛选“ThreatCategory”字段位于其中一个列出的值中的警报。 |
| alertverdict_has_any | 动态 | 仅筛选“AlertVerdict”字段位于其中一个列出的值中的警报。 |
| eventseverity_has_any | 动态 | 仅筛选“EventSeverity”字段位于其中一个列出的值中的警报。 |
架构概述
警报架构用于多种类型的安全事件,这些事件共享相同的字段。 这些事件使用 EventType 字段进行标识:
- 威胁信息:与各种类型的恶意活动(如恶意软件、钓鱼、勒索软件和其他网络威胁)相关的警报。
- 可疑活动:针对不一定为确认威胁、但有些可疑且值得进一步调查的活动来发出警报,例如多次失败的登录尝试或访问限制文件。
- 用户行为异常:指示可能预示安全问题的异常或意外用户行为(例如异常登录时间或异常数据访问模式)的警报。
- 合规性违规:与不符合法规或内部策略相关的警报。 例如,使用开放公共端口、容易受到攻击的 VM(云安全警报)。
重要
若要保持警报架构的关联性和有效性,应仅映射与安全相关的警报。
警报架构引用以下实体来捕获有关警报的详细信息:
-
Dvc 字段用于捕获与警报关联的主机或 IP 的详细信息
-
User 字段用于捕获与警报关联的主机或 IP 的详细信息。
- 同样,Process、File、Url、Registry 和 Email 字段用于捕获与警报相关的进程、文件、Url、注册表和电子邮件的重要详细信息。
重要
- 生成特定于产品的分析器时,当警报包含有关安全事件或潜在威胁的信息,而且主要详细信息可以直接映射到可用的警报架构字段,请使用 ASIM 警报架构。 警报架构非常适合捕获没有大量特定于实体的字段的摘要信息。
- 但是,如果你发现自己由于缺少直接字段匹配而将必需字段置于“AdditionalFields”中,请考虑使用更专用的架构。 例如,如果警报包含与网络相关的详细信息,例如多个 IP 地址,包括 SrcIpAdr、DstIpAddr、PortNumber 等,则可以选择使用 NetworkSession 架构作为警报架构。 专用架构还提供专用字段,用于捕获与威胁相关的信息,从而提高数据质量和促进高效分析。
架构详细信息
通用 ASIM 字段
以下列表提到了具有特定警报事件准则的字段:
| 字段 | 类 | 类型 | 说明 |
|---|---|---|---|
| EventType | 必需 | Enumerated | 事件的类型。 支持的值是: - Alert |
| EventSubType | 建议 | Enumerated | 指定警报事件的子类型或类别,从而在更宽泛的事件分类中提供更精细的详细信息。 此字段有助于区分检测到的问题的性质,从而改进事件优先级排序和响应策略。 支持的值包括: - Threat(表示可能威胁系统或网络的已确认或极可能恶意活动)- Suspicious Activity(标记似乎异常或可疑但尚未确认为恶意的行为或事件)- Anomaly(标识可能指示潜在安全风险或运行问题,不同于正常模式的偏差)- Compliance Violation(着重强调违反法规、政策或合规性标准的活动) |
| EventUid | 必需 | 字符串 | 机器可读的字母数字字符串,用于唯一标识系统中的警报。 例如, A1bC2dE3fH4iJ5kL6mN7oP8qR9s |
| EventMessage | 可选 | 字符串 | 有关警报的详细信息,包括上下文、原因和潜在影响。 例如, Potential use of the Rubeus tool for kerberoasting, a technique used to extract service account credentials from Kerberos tickets. |
| IpAddr | Alias |
DvcIpAddr 字段的别名或友好名称。 |
|
| Hostname | Alias |
DvcHostname 字段的别名或友好名称。 |
|
| EventSchema | 必需 | 字符串 | 用于事件的架构。 此处所述的架构为 AlertEvent。 |
| EventSchemaVersion | 必需 | 字符串 | 架构的版本。 此处所述的架构版本为 0.1。 |
所有通用字段
下表中显示的字段是所有 ASIM 架构通用的。 上面指定的任何准则都将替代字段的一般准则。 例如,字段通常情况下可能是可选项,但可能是特定架构的必需项。 有关每个字段的详细信息,请参阅 ASIM 通用字段一文。
| 类 | 字段 |
|---|---|
| 必需 |
- EventCount - EventStartTime - EventEndTime - EventType - EventUid 事件 - “EventProduct” - EventVendor 事件供应商 - EventSchema - EventSchemaVersion |
| 建议 |
-
EventSubType - EventSeverity 事件严重性 - DvcIpAddr - DvcHostname - Dvc域 - DvcDomainType - DvcFQDN - DvcId - DvcIdType- |
| 可选 |
- EventMessage - EventOriginalType - EventOriginalSubType - EventOriginalSeverity - EventProductVersion - EventOriginalUid - EventReportUrl - EventResult - EventOwner 事件所有者 - DvcZone - DvcMacAddr - DvcOs - DvcOsVersion - DvcAction - DvcOriginalAction - DvcInterface - AdditionalFields - DvcDescription - DvcScopeId - DvcScope |
检测字段
下表涵盖了提供与警报关联的规则和威胁相关的关键见解的字段。 它们有助于丰富警报的上下文,让安全分析人员更容易了解警报的来源和意义。
| 字段 | 类 | 类型 | 说明 |
|---|---|---|---|
| AlertId | Alias | 字符串 |
EventUid 字段的别名或友好名称。 |
| AlertName | 建议 | 字符串 | 警报的标题或名称。 例如, Possible use of the Rubeus kerberoasting tool |
| AlertDescription | Alias | 字符串 |
EventMessage 字段的别名或友好名称。 |
| AlertVerdict | 可选 | Enumerated | 警报的最终确定或结果,指示警报是确认为威胁,还是被视为可疑,或者作为误报解决。 支持的值是: - True Positive(确认为法律规定的威胁行为)- False Positive(错误地标识为威胁)- Benign Positive(当事件确定为无害时)- Unknown(不确定或不确定的状态) |
| AlertStatus | 可选 | Enumerated | 指示警报的当前状态或进度。 支持的值是: - Active- Closed |
| AlertOriginalStatus | 可选 | 字符串 | 原始系统报告的警报状态。 |
| DetectionMethod | 可选 | Enumerated | 提供有关特定检测方法、技术或导致生成警报的数据源的详细信息。 通过此字段,我们可以更深入地了解警报的检测或触发方式,有助于了解检测上下文和可靠性。 支持的值包括: - EDR:用于监视和分析活动以识别威胁的终结点检测和响应系统。- Behavioral Analytics:检测用户、设备或系统行为中的异常模式的技术。- Reputation:基于 IP 地址、域或文件的信誉的威胁检测。- Threat Intelligence:外部或内部情报源,提供有关已知威胁或对手策略的数据。- Intrusion Detection:监视网络流量或活动的系统,以获取入侵或攻击的迹象。- Automated Investigation:分析和调查警报的自动化系统,可以减少手动工作负荷。- Antivirus:传统的防病毒引擎,基于签名和启发来检测恶意软件。- Data Loss Prevention:侧重于防止未经授权的数据传输或泄露的解决方案。- User Defined Blocked List:用户定义的自定义列表,旨在阻止特定的 IP、域或文件。- Cloud Security Posture Management:用于评估和管理云环境中的安全风险的工具。- Cloud Application Security:用于保护云应用程序和数据的解决方案。- Scheduled Alerts:基于预定义的计划或阈值生成的警报。- Other:上述类别未涵盖的所有其他检测方法。 |
| 规则 | Alias | 字符串 | RuleName 的值,或 RuleNumber 的值。 如果使用 RuleNumber 的值,则类型应转换为字符串。 |
| RuleNumber | 可选 | int | 与警报关联的规则的编号。 例如, 123456 |
| RuleName | 可选 | 字符串 | 与警报关联的规则的名称或 ID。 例如, Server PSEXEC Execution via Remote Access |
| RuleDescription | 可选 | 字符串 | 与警报关联的规则的说明。 例如, This rule detects remote execution on a server using PSEXEC, which may indicate unauthorized administrative activity or lateral movement within the network |
| ThreatId | 可选 | 字符串 | 在警报中指明的威胁或恶意软件的 ID。 例如, 1234567891011121314 |
| ThreatName | 可选 | 字符串 | 在警报中指明的威胁或恶意软件的名称。 例如, Init.exe |
| ThreatFirstReportedTime | 可选 | 日期/时间 | 第一次报告该威胁的日期和时间。 例如, 2024-09-19T10:12:10.0000000Z |
| ThreatLastReportedTime | 可选 | 日期/时间 | 上一次报告该威胁的日期和时间。 例如, 2024-09-19T10:12:10.0000000Z |
| ThreatCategory | 建议 | Enumerated | 在警报中指明的威胁或恶意软件的类别。 支持的值为: Malware、Ransomware、Trojan、Virus、Worm、Adware、Spyware、Rootkit、Cryptominor、Phishing、Spam、MaliciousUrl、Spoofing、Security Policy Violation、Unknown |
| ThreatOriginalCategory | 可选 | 字符串 | 由发起系统报告的威胁类别。 |
| ThreatIsActive | 可选 | 布尔 | 指示威胁当前是否处于活动状态。 支持的值为: True、False |
| ThreatRiskLevel | 可选 | int | 与威胁关联的风险级别。 级别应是介于 0 和 100 之间的数字。 注意:可以在源记录中使用不同的标度提供值,而使用的标度应规范化为此标度。 原始值应存储在 ThreatRiskLevelOriginal 中。 |
| ThreatOriginalRiskLevel | 可选 | 字符串 | 发起系统报告的风险级别。 |
| ThreatConfidence | 可选 | int | 已识别威胁的可信度,规范化为 0 到 100 之间的值。 |
| ThreatOriginalConfidence | 可选 | 字符串 | 发起系统报告的置信度。 |
| IndicatorType | 建议 | Enumerated | 指标的类型或类别 支持的值是: - Ip- User- Process- Registry- Url- Host- Cloud Resource- Application- File- Email- Mailbox- Logon Session |
| IndicatorAssociation | 可选 | Enumerated | 指定指标是与威胁相关,还是直接受到威胁的影响。 支持的值是: - Associated- Targeted |
| AttackTactics | 建议 | 字符串 | 与警报关联的攻击策略(名称、ID 或两者)。 首选格式: 例如: Persistence, Privilege Escalation |
| AttackTechniques | 建议 | 字符串 | 与警报关联的攻击技术(名称、ID 或两者)。 首选格式: 例如: Local Groups (T1069.001), Domain Groups (T1069.002) |
| AttackRemediationSteps | 建议 | 字符串 | 建议的操作或步骤,旨在缓解或补救已识别的攻击或威胁。 例如, 1. Make sure the machine is completely updated and all your software has the latest patch.2. Contact your incident response team. |
用户字段
本部分定义与警报关联用户的标识和分类相关的字段,从而让你清楚地了解受影响用户,及其标识的格式。 如果警报包含超出此处映射内容的其他多个用户相关字段,则可考虑专用架构(如身份验证事件架构)是否更适合完全表示数据。
| 字段 | 类 | 类型 | 说明 |
|---|---|---|---|
| UserId | 可选 | 字符串 | 与警报关联的用户的机器可读的唯一字母数字表示形式。 例如, A1bC2dE3fH4iJ5kL6mN7o |
| UserIdType | 条件逻辑 | Enumerated | 用户 ID 的类型,例如 GUID、SID 或 Email。支持的值是: - GUID- SID- Email- Username- Phone- Other |
| 用户名 | 建议 | 字符串 | 与警报关联的用户的名称,包括域信息(如果可用)。 例如 Contoso\JSmith 或 john.smith@contoso.com |
| 用户 | Alias | 字符串 |
Username 字段的别名或友好名称。 |
| UsernameType | 条件逻辑 | UsernameType | 指定 Username 字段中存储的用户名的类型。 有关详细信息和允许值的列表,请参阅架构概述文章中的 UsernameType。例如, Windows |
| UserType | 可选 | UserType | 参与者的类型。 有关详细信息和允许值的列表,请参阅架构概述文章中的 UserType。 例如, Guest |
| OriginalUserType | 可选 | 字符串 | 报告设备报告的用户类型。 |
| UserSessionId | 可选 | 字符串 | 与警报关联的用户会话的唯一 ID。 例如, a1bc2de3-fh4i-j5kl-6mn7-op8qr9st0u |
| UserScopeId | 可选 | 字符串 | 在其中定义了 UserId 和 Username 的范围 ID,例如 Microsoft Entra Directory ID。 例如, a1bc2de3-fh4i-j5kl-6mn7-op8qrs |
| UserScope | 可选 | 字符串 | 在其中定义了 UserId 和 Username 的范围,例如 Microsoft Entra 租户。 有关详细信息和允许值的列表,请参阅架构概述文章中的 UserScope。 例如, Contoso Directory |
进程字段
在本部分中,你可以使用指定的字段,捕获与警报中涉及的进程实体相关的详细信息。 如果警报包含超出此处映射内容的其他详细进程相关字段,则可考虑专用架构(如进程事件架构)是否更适合完全表示数据。
| 字段 | 类 | 类型 | 说明 |
|---|---|---|---|
| ProcessId | 可选 | 字符串 | 与警报关联的进程 ID (PID)。 例如, 12345678 |
| ProcessCommandLine | 可选 | 字符串 | 用于启动进程的命令行。 例如, "choco.exe" -v |
| ProcessName | 可选 | 字符串 | 进程的名称。 例如, C:\Windows\explorer.exe |
| ProcessFileCompany | 可选 | 字符串 | 创建进程映像文件的公司。 例如, Microsoft |
文件字段
在本部分中,你可以捕获与警报中涉及的文件实体相关的详细信息。 如果警报包含超出此处映射内容的其他详细文件相关字段,则可考虑专用架构(如文件事件架构)是否更适合完全表示数据。
| 字段 | 类 | 类型 | 说明 |
|---|---|---|---|
| FileName | 可选 | 字符串 | 与警报关联的文件的名称,不含路径或位置。 例如, Notepad.exe |
| FilePath | 可选 | 字符串 | 目标文件的完整规范化路径,包括文件夹或位置、文件名和扩展名。 例如, C:\Windows\System32\notepad.exe |
| FileSHA1 | 可选 | 字符串 | 文件的 SHA1 哈希。 例如, j5kl6mn7op8qr9st0uv1 |
| FileSHA256 | 可选 | 字符串 | 文件的 SHA256 哈希。 例如, a1bc2de3fh4ij5kl6mn7op8qrs2de3 |
| FileMD5 | 可选 | 字符串 | 文件的 MD5 哈希。 例如, j5kl6mn7op8qr9st0uv1wx2yz3ab4c |
| FileSize | 可选 | long | 文件的大小(字节)。 例如, 123456 |
URL 字段
如果警报包含有关 URL 实体的信息,则以下字段可以捕获 URL 相关数据。
| 字段 | 类 | 类型 | 说明 |
|---|---|---|---|
| Url | 可选 | 字符串 | 在警报中捕获的 URL 字符串。 例如, https://contoso.com/fo/?k=v&q=u#f |
注册表字段
如果警报包含有关注册表实体的详细信息,请使用以下字段来捕获特定注册表相关信息。
| 字段 | 类 | 类型 | 说明 |
|---|---|---|---|
| RegistryKey | 可选 | 字符串 | 与警报关联的注册表项,规范化为标准根密钥命名约定。 例如, HKEY_LOCAL_MACHINE\SOFTWARE\MTG |
| RegistryValue | 可选 | 字符串 | 注册表值。 例如, ImagePath |
| RegistryValueData | 可选 | 字符串 | 注册表值的数据。 例如, C:\Windows\system32;C:\Windows; |
| RegistryValueType | 可选 | Enumerated | 注册表值的类型。 例如, Reg_Expand_Sz |
电子邮件字段
如果警报包含有关电子邮件实体的详细信息,请使用以下字段来捕获特定电子邮件相关信息。
| 字段 | 类 | 类型 | 说明 |
|---|---|---|---|
| EmailMessageId | 可选 | 字符串 | 与警报关联的电子邮件消息的唯一标识符。 例如, Request for Invoice Access |
| EmailSubject | 可选 | 字符串 | 电子邮件的主题。 例如, j5kl6mn7-op8q-r9st-0uv1-wx2yz3ab4c |
架构更新
下面是各个不同架构中的更改:
- 版本 0.1:初始版本。