重要
注意: 2026 年 8 月 18 日,根据 世纪互联发布的公告,所有Microsoft Sentinel 功能将在中国 Azure 正式停用。
注册表事件架构用于描述创建、修改或删除 Windows 注册表实体的 Windows 活动。
注册表事件特定于 Windows 系统,但由监视 Windows 的不同系统报告,例如 EDR(终结点检测和响应)系统、Sysmon 或 Windows 本身。
有关 Microsoft Sentinel 中规范化的详细信息,请参阅规范化和高级安全信息模型 (ASIM)。
分析器
若要使用统一分析器来统一所有内置分析程序,并确保分析在所有配置的源上运行,请使用 imRegistry 作为查询中的表名称。
有关进程事件分析程序列表Microsoft Sentinel 提供现用的参考 ASIM 分析程序列表
从 Microsoft Sentinel GitHub 存储库部署统一分析程序和特定于源的分析程序。
有关详细信息,请参阅 ASIM 分析器和使用 ASIM 分析程序。
添加自己的规范化分析器
为注册表事件信息模型实现自定义分析器时,使用以下语法命名 KQL 函数: imRegistry<vendor><Product>
将 KQL 函数添加到 imRegistry
统一分析器,以确保使用注册表事件模型的任何内容也使用新的分析器。
规范化内容
Microsoft Sentinel 通过 IFEO 注册表项 搜寻查询提供持久化。 此查询适用于使用高级安全信息模型规范化的任何注册表活动数据。
有关详细信息,请参阅 使用 Microsoft Sentinel 搜寻威胁。
架构详细信息
注册表事件信息模型与 OSSEM 注册表实体架构保持一致。
通用 ASIM 字段
重要
ASIM 通用字段一文详细介绍了所有架构的通用字段。
符合特定准则的通用字段
以下列表提及了符合进程活动事件特定准则的字段:
领域 | 班级 | 类型 | DESCRIPTION |
---|---|---|---|
EventType | 强制的 | 枚举 | 描述记录中报告的操作。 对于注册表记录,支持的值包括: - RegistryKeyCreated - RegistryKeyDeleted - RegistryKeyRenamed - RegistryValueDeleted - RegistryValueSet |
EventSchemaVersion 事件架构版本 | 强制的 | 字符串 | 架构的版本。 此处记录的架构版本为 0.1.2 |
EventSchema | 可选 | 字符串 | 此处所述的架构名称为 RegistryEvent 。 |
Dvc 字段 | 对于注册表活动事件,设备字段是指发生注册表活动的系统。 |
重要
EventSchema
字段目前为可选项,但将于 2022 年 9 月 1 日成为必需项。
所有通用字段
下表中显示的字段是所有 ASIM 架构通用的。 上面指定的任何准则都将替代字段的一般准则。 例如,字段通常情况下可能是可选项,但可能是特定架构的必需项。 有关每个字段的更多详细信息,请参阅 ASIM 通用字段一文。
类 | 字段 |
---|---|
强制的 |
- EventCount - EventStartTime - EventEndTime - EventType - EventResult - “EventProduct” - EventVendor 事件供应商 - EventSchema - EventSchemaVersion - Dvc |
建议 |
- EventResultDetails - EventSeverity 事件严重性 - EventUid 事件 - DvcIpAddr - DvcHostname - Dvc域 - DvcDomainType - DvcFQDN - DvcId - DvcIdType- - DvcAction |
可选 |
- EventMessage - EventSubType - EventOriginalUid - EventOriginalType - EventOriginalSubType - EventOriginalResultDetails - EventOriginalSeverity - EventProductVersion - EventReportUrl - EventOwner 事件所有者 - DvcZone - DvcMacAddr - DvcOs - DvcOsVersion - DvcOriginalAction - DvcInterface - AdditionalFields - DvcDescription - DvcScopeId - DvcScope |
注册表事件特定字段
下表中列出的字段特定于注册表事件,但与其他架构中的字段类似,并遵循类似的命名约定。
有关详细信息,请参阅 Windows 文档中 注册表的结构 。
领域 | 班级 | 类型 | DESCRIPTION |
---|---|---|---|
RegistryKey | 强制的 | 字符串 | 与操作关联的注册表项,规范化为标准根密钥命名约定。 有关详细信息,请参阅 根密钥。 注册表项类似于文件系统中的文件夹。 例如: HKEY_LOCAL_MACHINE\SOFTWARE\MTG |
RegistryValue | 建议 | 字符串 | 与操作关联的注册表值。 注册表值类似于文件系统中的文件。 例如: Path |
RegistryValueType | 建议 | 字符串 | 注册表值的类型,规范化为标准格式。 有关详细信息,请参阅 值类型。 例如: Reg_Expand_Sz |
RegistryValueData | 建议 | 字符串 | 存储在注册表值中的数据。 示例: C:\Windows\system32;C:\Windows; |
RegistryPreviousKey | 建议 | 字符串 | 对于修改注册表的操作,原始注册表项规范化为标准根项命名。 有关详细信息,请参阅 根密钥。 注意:如果作更改了其他字段(如值),但键保持不变, 则 RegistryPreviousKey 的值将与 RegistryKey 具有相同的值。 示例: HKEY_LOCAL_MACHINE\SOFTWARE\MTG |
RegistryPreviousValue | 建议 | 字符串 | 对于修改注册表的操作,原始值类型规范化为标准格式。 有关详细信息,请参阅 值类型。 如果未更改类型,此字段的值与 RegistryValueType 字段相同。 示例: Path |
RegistryPreviousValueType | 建议 | 字符串 | 用于修改注册表的操作,为原始值类型。 如果未更改类型,此字段的值将与 RegistryValueType 字段相同,规范化为标准窗体。 有关更多信息,请参阅值类型。 示例: Reg_Expand_Sz |
RegistryPreviousValueData | 建议 | 字符串 | 原始注册表数据,用于修改注册表的操作。 示例: C:\Windows\system32;C:\Windows; |
用户 | 别名 |
ActorUsername 字段的别名。 示例: CONTOSO\ dadmin |
|
过程 | 别名 |
代理ProcessName 字段的别名。 示例: C:\Windows\System32\rundll32.exe |
|
ActorUsername | 强制的 | 字符串 | 发起事件的用户的用户名。 示例: CONTOSO\WIN-GG82ULGC9GO$ |
ActorUsernameType | 有條件的 | 枚举 | 指定 ActorUsername 字段中存储的用户名的类型。 有关详细信息,请参阅用户实体。 示例: Windows |
ActorUserId | 建议 | 字符串 | Actor 的唯一 ID。 特定 ID 取决于生成事件的系统。 有关详细信息,请参阅用户实体。 示例: S-1-5-18 |
ActorScope | 可选 | 字符串 | 在其中定义了 ActorUserId 和 ActorUsername 的范围(例如 Microsoft Entra 租户)。 有关详细信息和允许值的列表,请参阅架构概述文章中的 UserScope。 |
ActorUserIdType | 建议 | 字符串 |
ActorUserId 字段中存储的 ID 的类型。 有关详细信息,请参阅用户实体。 示例: SID |
ActorSessionId | 有條件的 | 字符串 | 参与者的登录会话的唯一 ID。 示例: 999 注意:类型定义为“字符串”以支持不同的系统,但在 Windows 上,此值必须是数字。 如果使用 Windows 计算机,并且源会发送其他类型,请确保转换该值。 例如,如果源发送十六进制值,则将其转换为十进制值。 |
“ActingProcessName” | 可选 | 字符串 | 操作进程映像文件的文件名。 此名称通常被视为进程名称。 示例: C:\Windows\explorer.exe |
ActingProcessId | 强制的 | 字符串 | 操作进程的进程 ID (PID)。 示例: 48610176 注意:类型定义为“字符串”以支持不同的系统,但在 Windows 和 Linux 上,此值必须是数字。 如果使用的是 Windows 或 Linux 计算机并使用了其他类型,请务必转换值。 例如,如果使用了十六进制值,请将其转换为十进制值。 |
“ActingProcessGuid” | 可选 | 字符串 | 操作进程的生成的唯一标识符 (GUID)。 示例: EF3BD0BD-2B74-60C5-AF5C-010000001E00 |
“ParentProcessName” | 可选 | 字符串 | 父进程映像文件的文件名。 此值通常被视为进程名称。 示例: C:\Windows\explorer.exe |
“ParentProcessId” | 强制的 | 字符串 | 父进程的进程 ID (PID)。 示例: 48610176 |
“ParentProcessGuid” | 可选 | 字符串 | 父进程的生成的唯一标识符 (GUID)。 示例: EF3BD0BD-2B74-60C5-AF5C-010000001E00 |
根密钥
不同的源使用不同的表示形式表示注册表项前缀。 对于 RegistryKey 和 RegistryPreviousKey 字段,请使用以下规范化前缀:
规范化密钥前缀 | 其他常见表示形式 |
---|---|
HKEY_LOCAL_MACHINE |
HKLM 、\REGISTRY\MACHINE |
HKEY_USERS |
HKU 、\REGISTRY\USER |
值类型
不同的源使用不同的表示形式表示注册表值类型。 对于 RegistryValueType 和 RegistryPreviousValueType 字段,请使用以下规范化类型:
规范化密钥前缀 | 其他常见表示形式 |
---|---|
Reg_None |
None 、%%1872 |
Reg_Sz |
String 、%%1873 |
Reg_Expand_Sz |
ExpandString 、%%1874 |
Reg_Binary |
Binary 、%%1875 |
Reg_DWord |
Dword 、%%1876 |
Reg_Multi_Sz |
MultiString 、%%1879 |
Reg_QWord |
Qword 、%%1883 |
架构更新
下面是架构版本 0.1.1 中的更改:
- 添加了字段
EventSchema
。
下面是架构版本 0.1.2 中的更改:
- 添加了字段
ActorScope
和DvcScopeId
DvcScope
.。
后续步骤
有关详细信息,请参见: