你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
Microsoft Sentinel网络会话规范化架构表示 IP 网络活动,例如网络连接和网络会话。 例如,由操作系统、路由器、防火墙和入侵防护系统报告此类事件。
网络规范化架构可以表示任何类型的 IP 网络会话,但旨在提供对常见源类型(例如 Netflow、防火墙和入侵防护系统)的支持。
有关Microsoft Sentinel规范化的详细信息,请参阅规范化和高级安全信息模型 (ASIM) 。
解析 器
有关 ASIM 分析程序的详细信息,请参阅 ASIM 分析程序概述。
统一分析器
若要使用统一所有 ASIM 现成分析程序的分析程序,并确保分析跨所有配置的源运行,请使用 _Im_NetworkSession 分析程序。
开箱即用的特定于源分析程序
有关网络会话分析程序列表Microsoft Sentinel提供现成的,请参阅 ASIM 分析程序列表
添加自己的规范化分析程序
为网络会话信息模型 开发自定义分析程序 时,请使用以下语法命名 KQL 函数:
-
vimNetworkSession<vendor><Product>用于参数化分析器 -
ASimNetworkSession<vendor><Product>用于常规分析程序
请参阅 管理 ASIM 分析程序 一文,了解如何将自定义分析程序添加到网络会话统一分析程序。
筛选分析程序参数
网络会话分析程序支持 筛选参数。 虽然这些参数是可选的,但它们可以提高查询性能。
以下筛选参数可用:
| 名称 | 类型 | 说明 |
|---|---|---|
| starttime | datetime | 仅筛选在此时间或之后 启动 的网络会话。 此参数筛选 TimeGenerated 字段,该字段是事件时间的标准指示符,而不考虑 EventStartTime 和 EventEndTime 字段的特定于分析器的映射。 |
| endtime | datetime | 仅筛选在此时间或之前 开始 运行的网络会话。 此参数筛选 TimeGenerated 字段,该字段是事件时间的标准指示符,而不考虑 EventStartTime 和 EventEndTime 字段的特定于分析器的映射。 |
| srcipaddr_has_any_prefix | 动态 | 仅筛选 其源 IP 地址字段 前缀位于所列值之一的网络会话。 前缀应以 .结尾,例如: 10.0.。 列表的长度限制为 10,000 个项目。 |
| dstipaddr_has_any_prefix | 动态 | 仅筛选 目标 IP 地址字段 前缀位于所列值之一的网络会话。 前缀应以 .结尾,例如: 10.0.。 列表的长度限制为 10,000 个项目。 |
| ipaddr_has_any_prefix | 动态 | 仅筛选 目标 IP 地址字段 或 源 IP 地址字段 前缀位于所列值之一的网络会话。 前缀应以 .结尾,例如: 10.0.。 列表的长度限制为 10,000 个项目。ASimMatchingIpAddr 字段使用 、 或 Both 值SrcIpAddrDstIpAddr之一进行设置,以反映匹配的字段或字段。 |
| dstportnumber | Int | 仅筛选具有指定目标端口号的网络会话。 |
| hostname_has_any | dynamic/string | 仅筛选 目标主机名字段 具有所列任何值的网络会话。 列表的长度限制为 10,000 个项目。 字段 ASimMatchingHostname 设置为值 SrcHostname、 DstHostname或 Both 之一,以反映匹配的字段或字段。 |
| dvcaction | dynamic/string | 仅筛选 “设备操作”字段 为其列出的任何值的网络会话。 |
| eventresult | String | 仅筛选具有特定 EventResult 值的网络会话。 |
某些参数可以接受类型的 dynamic 值列表或单个字符串值。 若要将文本列表传递给需要动态值的参数,请显式使用 动态文本。 例如:dynamic(['192.168.','10.'])
例如,若要仅筛选指定域名列表的网络会话,请使用:
let torProxies=dynamic(["tor2web.org", "tor2web.com", "torlink.co"]);
_Im_NetworkSession (hostname_has_any = torProxies)
提示
若要将文本列表传递给需要动态值的参数,请显式使用 动态文本。 例如:dynamic(['192.168.','10.'])。
规范化内容
有关使用规范化 DNS 事件的分析规则的完整列表,请参阅 网络会话安全内容。
架构概述
网络会话信息模型与 OSSEM 网络实体架构保持一致。
网络会话架构提供多种类型的相似但不同的方案,它们共享相同的字段。 这些方案由 EventType 字段标识:
-
NetworkSession- 由监视网络的中间设备报告的网络会话,例如防火墙、路由器或网络分路器。 -
L2NetworkSession- 只有第 2 层信息可用的网络会话。 此类事件将包括 MAC 地址,但不包括 IP 地址。 -
Flow- 报告多个类似网络会话的聚合事件,通常在预定义的时间段内,例如 Netflow 事件。 -
EndpointNetworkSession- 由会话的终结点之一(包括客户端和服务器)报告的网络会话。 对于此类事件,架构支持remote和local别名字段。 -
IDS- 报告为可疑的网络会话。 此类事件将填充一些检查字段,并且可能只填充了一个 IP 地址字段(源或目标)。
通常,查询应仅选择这些事件类型的子集,并且可能需要单独处理用例的独特方面。 例如,IDS 事件不反映整个网络卷,不应在基于列的分析中考虑在内。
网络会话事件使用描述符 Src 和 Dst 来表示会话中涉及的设备以及相关用户和应用程序的角色。 因此,例如,源设备主机名和 IP 地址命名 SrcHostname 为 和 SrcIpAddr。 其他 ASIM 架构通常使用 Target 而不是 Dst。
对于终结点报告的事件,其事件类型为 EndpointNetworkSession,描述符 Local 和 Remote 分别表示终结点本身和网络会话另一端的设备。
描述符 Dvc 用于报告设备,这是终结点报告的会话的本地系统,以及用于其他网络会话事件的中间设备或网络点击。
架构详细信息
常见 ASIM 字段
重要
ASIM 通用字段一文中详细介绍了所有架构通用的字段。
具有特定准则的通用字段
以下列表提到了具有网络会话事件特定准则的字段:
| 字段 | 类 | 类型 | 说明 |
|---|---|---|---|
| EventCount | 强制 | 整数 | Netflow 源支持聚合,并且 EventCount 字段应设置为“Netflow FLOW” 字段的值。 对于其他源,值通常设置为 1。 |
| EventType | 强制 | 枚举 | 描述记录报告的场景。 对于网络会话记录,允许的值为: - EndpointNetworkSession- NetworkSession - L2NetworkSession- IDS - Flow有关事件类型的详细信息,请参阅 架构概述 |
| EventSubType | 可选 | 枚举 | 事件类型的附加说明(如果适用)。 对于网络会话记录,支持的值包括: - Start- End此字段与 Flow 事件无关。 |
| EventResult | 强制 | 枚举 | 如果源设备未提供事件结果, EventResult 应基于 DvcAction 的值。 如果 DvcAction 为 Deny、、Drop、ResetDrop ICMP、 Reset Source或Reset Destination, EventResult 应为 Failure。 否则, EventResult 应为 Success。 |
| EventResultDetails | 建议 | 枚举 |
在 EventResult 字段中报告的结果的原因或详细信息。 支持的值为: -故障 - 无效的 TCP - 隧道无效 - 最大重试次数 -重 置 - 路由问题 -仿真 -终止 -超时 - 暂时性错误 - 未知 -那。 源特定的原始值存储在 EventOriginalResultDetails 字段中。 |
| EventSchema | 强制 | 枚举 | 此处记录的架构的名称为 NetworkSession。 |
| EventSchemaVersion | 强制 | SchemaVersion (String) | 架构的版本。 此处记录的架构版本为 0.2.7。 |
| DvcAction | 建议 | 枚举 | 对网络会话执行的操作。 支持的值为: - Allow- Deny- Drop- Drop ICMP- Reset- Reset Source- Reset Destination- Encrypt- Decrypt- VPNroute注意:可以使用不同的术语在源记录中提供该值,这些术语应规范化为这些值。 原始值应存储在 DvcOriginalAction 字段中。 例如: drop |
| EventSeverity | 可选 | 枚举 | 如果源设备未提供事件严重性, 则 EventSeverity 应基于 DvcAction 的值。 如果 DvcAction 为 Deny、、Drop、ResetDrop ICMP、 Reset Source或Reset Destination, EventSeverity 应为 Low。 否则, EventSeverity 应为 Informational。 |
| DvcInterface | DvcInterface 字段应为 DvcInboundInterface 或 DvcOutboundInterface 字段的别名。 | ||
| Dvc 字段 | 对于“网络会话事件”,设备字段是指报告网络会话事件的系统。 |
所有常见字段
下表中显示的字段对所有 ASIM 架构都是通用的。 上面指定的任何准则都覆盖字段的一般准则。 例如,字段通常可能是可选的,但对于特定架构是必需的。 有关每个字段的详细信息,请参阅 ASIM 通用字段 一文。
| 类 | Fields |
|---|---|
| 强制 |
-
EventCount - EventStartTime - EventEndTime - EventType - EventResult - EventProduct - EventVendor - EventSchema - EventSchemaVersion - Dvc |
| 建议 |
-
EventResultDetails - EventSeverity - EventUid - DvcIpAddr - DvcHostname - DvcDomain - 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 |
网络会话字段
| 字段 | 类 | 类型 | 说明 |
|---|---|---|---|
| NetworkApplicationProtocol | 可选 | String | 连接或会话使用的应用程序层协议。 该值应全部大写。 例如: FTP |
| NetworkProtocol | 可选 | 枚举 |
IANA 协议分配中列出的连接或会话使用的 IP 协议,通常TCP为 、 UDP或 ICMP。例如: TCP |
| NetworkProtocolVersion | 可选 | 枚举 |
NetworkProtocol 的版本。 使用它来区分 IP 版本时,请使用 值 IPv4 和 IPv6。 |
| NetworkDirection | 可选 | 枚举 | 连接或会话的方向: - 对于 EventType NetworkSession 或 FlowL2NetworkSession, NetworkDirection 表示相对于组织或云环境边界的方向。 支持的值为 Inbound、 Outbound、 Local 组织) (、 External 组织) (或 NA (不适用) 。- 对于 EventType,NetworkDirection EndpointNetworkSession表示相对于终结点的方向。 支持的值为 Inbound、 Outbound、 Local (到系统) , Listen 或 NA (不适用) 。
Listen该值指示设备已开始接受网络连接,但实际上不一定已连接。 |
| NetworkDuration | 可选 | 整数 | 完成网络会话或连接的时间(以毫秒为单位)。 例如: 1500 |
| Duration | 别名 | NetworkDuration 的别名。 | |
| NetworkIcmpType | 可选 | String | 对于 ICMP 消息,ICMP 类型名称与数值相关联,如 RFC 2780 (IPv4 网络连接)或 RFC 4443 (IPv6 网络连接)中所述。 示例: Destination Unreachable 对于 NetworkIcmpCode 3 |
| NetworkIcmpCode | 可选 | 整数 | 对于 ICMP 消息,使用 RFC 2780 (IPv4 网络连接)或 RFC 4443 (IPv6 网络连接)中所述的 ICMP 代码号。 |
| NetworkConnectionHistory | 可选 | String | TCP 标志和其他潜在的 IP 标头信息。 |
| DstBytes | 建议 | 长型 | 从目标发送到连接或会话源的字节数。 如果聚合事件, 则 DstBytes 应该是所有聚合会话的总和。 例如: 32455 |
| SrcBytes | 建议 | 长型 | 从源发送到连接或会话的目标的字节数。 如果聚合事件, 则 SrcBytes 应该是所有聚合会话的总和。 例如: 46536 |
| NetworkBytes | 可选 | 长型 | 双向发送的字节数。 如果 BytesReceived 和 BytesSent 都存在, 则 BytesTotal 应等于其和。 如果聚合事件, 则 NetworkBytes 应是所有聚合会话的总和。 例如: 78991 |
| DstPackets | 可选 | 长型 | 从目标发送到连接或会话源的数据包数。 数据包的含义由报告设备定义。 如果聚合事件, 则 DstPackets 应是所有聚合会话的总和。 例如: 446 |
| SrcPackets | 可选 | 长型 | 从源发送到连接或会话目标的数据包数。 数据包的含义由报告设备定义。 如果聚合事件, 则 SrcPackets 应是所有聚合会话的总和。 例如: 6478 |
| NetworkPackets | 可选 | 长型 | 双向发送的数据包数。 如果 PacketsReceived 和 PacketsSent 都存在, PacketsTotal 应等于其总和。 数据包的含义由报告设备定义。 如果聚合事件, NetworkPackets 应是所有聚合会话的总和。 例如: 6924 |
| NetworkSessionId | 可选 | string | 报告设备报告的会话标识符。 例如: 172\_12\_53\_32\_4322\_\_123\_64\_207\_1\_80 |
| SessionId | 别名 | String | NetworkSessionId 的别名。 |
| TcpFlagsAck | 可选 | 布尔值 | 报告的 TCP ACK 标志。 确认标志用于确认成功接收数据包。 从上图中可以看到,接收方在三方握手过程的第二步发送 ACK 和 SYN,以告知发送方已收到其初始数据包。 |
| TcpFlagsFin | 可选 | 布尔值 | 报告的 TCP FIN 标志。 完成标志表示发送方不再有数据。 因此,它在发送方发送的最后一个数据包中使用。 |
| TcpFlagsSyn | 可选 | 布尔值 | 报告的 TCP SYN 标志。 同步标志用作在两个主机之间建立三向握手的第一步。 只有来自发送方和接收方的第一个数据包才应设置此标志。 |
| TcpFlagsUrg | 可选 | 布尔值 | TCP URG 标志报告。 紧急标志用于通知接收方在处理所有其他数据包之前处理紧急数据包。 收到所有已知紧急数据后,接收方将收到通知。 有关更多详细信息 ,请参阅 RFC 6093 。 |
| TcpFlagsPsh | 可选 | 布尔值 | 报告的 TCP PSH 标志。 推送标志类似于 URG 标志,它指示接收方在收到这些数据包时处理这些数据包,而不是缓冲这些数据包。 |
| TcpFlagsRst | 可选 | 布尔值 | 报告的 TCP RST 标志。 当数据包发送到不期望它的特定主机时,重置标志将从接收方发送到发送方。 |
| TcpFlagsEce | 可选 | 布尔值 | 报告的 TCP ECE 标志。 此标志负责指示 TCP 对等方是否 支持 ECN。 有关更多详细信息,请参阅 RFC 3168 。 |
| TcpFlagsCwr | 可选 | 布尔值 | 报告的 TCP CWR 标志。 发送主机使用拥塞窗口减少标志来指示它收到了设置了 ECE 标志的数据包。 有关更多详细信息,请参阅 RFC 3168 。 |
| TcpFlagsN | 可选 | 布尔值 | 报告的 TCP NS 标志。 nonce sum 标志仍然是一个实验性标志,用于帮助防止意外恶意隐藏发送方发送的数据包。 有关更多详细信息,请参阅 RFC 3540 |
目标系统字段
| 字段 | 类 | 类型 | 说明 |
|---|---|---|---|
| Dst | 别名 | 接收 DNS 请求的服务器的唯一标识符。 此字段可能会对 DstDvcId、 DstHostname 或 DstIpAddr 字段进行别名。 例如: 192.168.12.1 |
|
| DstIpAddr | 建议 | IP 地址 | 连接或会话目标的 IP 地址。 如果会话使用网络地址转换,DstIpAddr则 为公开可见地址,而不是存储在 DstNatIpAddr 中的源的原始地址例如: 2001:db8::ff00:42:8329注意:如果指定 了 DstHostname ,则此值是必需的。 |
| DstPortNumber | 可选 | 整数 | 目标 IP 端口。 例如: 443 |
| DstHostname | 建议 | 主机名 (字符串) | 目标设备主机名,不包括域信息。 如果没有可用的设备名称,请将相关的 IP 地址存储在此字段中。 例如: DESKTOP-1282V4D |
| DstDomain | 建议 | 域 (字符串) | 目标设备的域。 例如: Contoso |
| DstDomainType | 条件 | 枚举 |
DstDomain 的类型。 有关允许值的列表和详细信息,请参阅架构概述一文中的 DomainType。 如果使用 DstDomain, 则是必需的。 |
| DstFQDN | 可选 | FQDN (字符串) | 目标设备主机名,包括域信息(如果可用)。 例如: Contoso\DESKTOP-1282V4D 注意:此字段支持传统的 FQDN 格式和 Windows 域\主机名格式。 DstDomainType 反映了所使用的格式。 |
| DstDvcId | 可选 | String | 目标设备的 ID。 如果有多个 ID 可用,请使用最重要的 ID,并将其他 ID 存储在 字段中 DstDvc<DvcIdType>。 例如: ac7e9755-8eae-4ffc-8a02-50ed7a2216c3 |
| DstDvcScopeId | 可选 | String | 设备所属的云平台范围 ID。 DstDvcScopeId 映射到 Azure 上的订阅 ID 和 AWS 上的帐户 ID。 |
| DstDvcScope | 可选 | String | 设备所属的云平台范围。 DstDvcScope 映射到 Azure 上的订阅 ID 和 AWS 上的帐户 ID。 |
| DstDvcIdType | 条件 | 枚举 |
DstDvcId 的类型。 有关允许值的列表和其他信息,请参阅架构概述一文中的 DvcIdType。 如果使用 DstDeviceId ,则为必需。 |
| DstDeviceType | 可选 | 枚举 | 目标设备的类型。 有关允许值的列表和详细信息,请参阅架构概述一文中的 DeviceType。 |
| DstZone | 可选 | String | 目标的网络区域,由报告设备定义。 例如: Dmz |
| DstInterfaceName | 可选 | String | 目标设备用于连接或会话的网络接口。 例如: Microsoft Hyper-V Network Adapter |
| DstInterfaceGuid | 可选 | GUID (字符串) | 目标设备上使用的网络接口的 GUID。 示例: 46ad544b-eaf0-47ef-827c-266030f545a6 |
| DstMacAddr | 可选 | MAC 地址 (字符串) | 目标设备用于连接或会话的网络接口的 MAC 地址。 例如: 06:10:9f:eb:8f:14 |
| DstVlanId | 可选 | String | 与目标设备相关的 VLAN ID。 例如: 130 |
| OuterVlanId | 别名 |
DstVlanId 的别名。 在许多情况下,无法将 VLAN 确定为源或目标,但特征为内部或外部。 此别名表示当 VLAN 被描述为外部时,应使用 DstVlanId 。 |
|
| DstGeoCountry | 可选 | 国家/地区 | 与目标 IP 地址关联的国家/地区。 有关详细信息,请参阅 逻辑类型。 例如: USA |
| DstGeoRegion | 可选 | 地区 | 与目标 IP 地址关联的区域或状态。 有关详细信息,请参阅 逻辑类型。 例如: Vermont |
| DstGeoCity | 可选 | 市/县 | 与目标 IP 地址关联的城市。 有关详细信息,请参阅 逻辑类型。 例如: Burlington |
| DstGeoLatitude | 可选 | Latitude | 与目标 IP 地址关联的地理坐标的纬度。 有关详细信息,请参阅 逻辑类型。 例如: 44.475833 |
| DstGeoLongitude | 可选 | Longitude | 与目标 IP 地址关联的地理坐标的经度。 有关详细信息,请参阅 逻辑类型。 例如: 73.211944 |
| DstDescription | 可选 | String | 与设备关联的描述性文本。 例如:Primary Domain Controller。 |
目标用户字段
| 字段 | 类 | 类型 | 说明 |
|---|---|---|---|
| DstUserId | 可选 | String | 目标用户的计算机可读字母数字唯一表示形式。 有关不同 ID 类型支持的格式,请参阅 User 实体。 例如: S-1-12 |
| DstUserScope | 可选 | String | 定义 DstUserId 和 DstUsername 的范围(如 Microsoft Entra 租户)。 有关详细信息和允许的值列表,请参阅架构概述一文中的 UserScope。 |
| DstUserScopeId | 可选 | String | 范围 ID,如 Microsoft Entra 目录 ID,其中定义了 DstUserId 和 DstUsername。 有关详细信息和允许的值列表,请参阅架构概述一文中的 UserScopeId。 |
| DstUserIdType | 条件 | UserIdType | 存储在 DstUserId 字段中的 ID 的类型。 有关允许值的列表和其他信息,请参阅架构概述一文中的 UserIdType。 |
| DstUsername | 可选 | 用户名 (字符串) | 目标用户名,包括域信息(如果可用)。 有关不同 ID 类型支持的格式,请参阅 User 实体。 仅当域信息不可用时,才使用简单表单。 将用户名类型存储在 DstUsernameType 字段中。 如果其他用户名格式可用,请将它们存储在 字段中 DstUsername<UsernameType>。例如: AlbertE |
| 用户 | 别名 | DstUsername 的别名。 | |
| DstUsernameType | 条件 | UsernameType | 指定 存储在 DstUsername 字段中的用户名的类型。 有关允许值的列表和详细信息,请参阅架构概述一文中的 UsernameType。 例如: Windows |
| DstUserType | 可选 | UserType | 目标用户的类型。 有关允许值的列表和详细信息,请参阅架构概述一文中的 UserType。 注意:可以使用不同的术语在源记录中提供该值,这些术语应规范化为这些值。 将原始值存储在 DstOriginalUserType 字段中。 |
| DstOriginalUserType | 可选 | String | 原始目标用户类型(如果由源提供)。 |
目标应用程序字段
| 字段 | 类 | 类型 | 说明 |
|---|---|---|---|
| DstAppName | 可选 | String | 目标应用程序的名称。 例如: Facebook |
| DstAppId | 可选 | String | 目标应用程序的 ID,由报告设备报告。 如果 DstAppType 为 Process, DstAppId 则应 DstProcessId 具有相同的值。例如: 124 |
| DstAppType | 可选 | AppType | 目标应用程序的类型。 有关允许值的列表和详细信息,请参阅架构概述一文中的 AppType。 如果使用 DstAppName 或 DstAppId ,则此字段是必需的。 |
| DstProcessName | 可选 | String | 终止网络会话的进程文件名。 此名称通常被视为进程名称。 例如: C:\Windows\explorer.exe |
| 过程 | 别名 |
DstProcessName 的别名 例如: C:\Windows\System32\rundll32.exe |
|
| DstProcessId | 可选 | String | 进程 ID (终止网络会话的进程) PID。 例如: 48610176 注意:类型定义为字符串以支持不同的系统,但在 Windows 和 Linux此值必须是数值。 如果你使用的是 Windows 或 Linux 计算机,并且使用了其他类型,请确保转换值。 例如,如果使用了十六进制值,请将其转换为十进制值。 |
| DstProcessGuid | 可选 | String | 终止网络会话的进程 (GUID) 生成的唯一标识符。 例如: EF3BD0BD-2B74-60C5-AF5C-010000001E00 |
源系统字段
| 字段 | 类 | 类型 | 说明 |
|---|---|---|---|
| Src | 别名 | 源设备的唯一标识符。 此字段可能会对 SrcDvcId、 SrcHostname 或 SrcIpAddr 字段进行别名。 例如: 192.168.12.1 |
|
| SrcIpAddr | 建议 | IP 地址 | 发起连接或会话的 IP 地址。 如果指定 了 SrcHostname ,则此值是必需的。 如果会话使用网络地址转换,SrcIpAddr则 为公开可见地址,而不是存储在 SrcNatIpAddr 中的源的原始地址例如: 77.138.103.108 |
| SrcPortNumber | 可选 | 整数 | 发起连接的 IP 端口。 可能与包含多个连接的会话无关。 例如: 2335 |
| SrcHostname | 建议 | 主机名 (字符串) | 源设备主机名,不包括域信息。 如果没有可用的设备名称,请将相关的 IP 地址存储在此字段中。 例如: DESKTOP-1282V4D |
| SrcDomain | 建议 | 域 (字符串) | 源设备的域。 例如: Contoso |
| SrcDomainType | 条件 | DomainType |
SrcDomain 的类型。 有关允许值的列表和详细信息,请参阅架构概述一文中的 DomainType。 如果使用 SrcDomain, 则是必需的。 |
| SrcFQDN | 可选 | FQDN (字符串) | 源设备主机名,包括域信息(如果有)。 注意:此字段支持传统的 FQDN 格式和 Windows 域\主机名格式。 SrcDomainType 字段反映所使用的格式。 例如: Contoso\DESKTOP-1282V4D |
| SrcDvcId | 可选 | String | 源设备的 ID。 如果有多个 ID 可用,请使用最重要的 ID,并将其他 ID 存储在 字段中 SrcDvc<DvcIdType>。例如: ac7e9755-8eae-4ffc-8a02-50ed7a2216c3 |
| SrcDvcScopeId | 可选 | String | 设备所属的云平台范围 ID。 SrcDvcScopeId 映射到 Azure 上的订阅 ID 和 AWS 上的帐户 ID。 |
| SrcDvcScope | 可选 | String | 设备所属的云平台范围。 SrcDvcScope 映射到 Azure 上的订阅 ID,以及 AWS 上的帐户 ID。 |
| SrcDvcIdType | 条件 | DvcIdType |
SrcDvcId 的类型。 有关允许值的列表和其他信息,请参阅架构概述一文中的 DvcIdType。 注意:如果使用 SrcDvcId ,则需要此字段。 |
| SrcDeviceType | 可选 | DeviceType | 源设备的类型。 有关允许值的列表和详细信息,请参阅架构概述一文中的 DeviceType。 |
| SrcZone | 可选 | String | 源的网络区域,由报告设备定义。 例如: Internet |
| SrcInterfaceName | 可选 | String | 源设备用于连接或会话的网络接口。 例如: eth01 |
| SrcInterfaceGuid | 可选 | GUID (字符串) | 源设备上使用的网络接口的 GUID。 示例: 46ad544b-eaf0-47ef-827c-266030f545a6 |
| SrcMacAddr | 可选 | MAC 地址 (字符串) | 发起连接或会话的网络接口的 MAC 地址。 例如: 06:10:9f:eb:8f:14 |
| SrcVlanId | 可选 | String | 与源设备相关的 VLAN ID。 例如: 130 |
| InnerVlanId | 别名 |
SrcVlanId 的别名。 在许多情况下,无法将 VLAN 确定为源或目标,但特征为内部或外部。 此别名表示在 VLAN 被描述为内部时应使用 SrcVlanId 。 |
|
| SrcGeoCountry | 可选 | 国家/地区 | 与源 IP 地址关联的国家/地区。 例如: USA |
| SrcGeoRegion | 可选 | 地区 | 与源 IP 地址关联的区域。 例如: Vermont |
| SrcGeoCity | 可选 | 市/县 | 与源 IP 地址关联的城市。 例如: Burlington |
| SrcGeoLatitude | 可选 | Latitude | 与源 IP 地址关联的地理坐标的纬度。 例如: 44.475833 |
| SrcGeoLongitude | 可选 | Longitude | 与源 IP 地址关联的地理坐标的经度。 例如: 73.211944 |
| SrcDescription | 可选 | String | 与设备关联的描述性文本。 例如:Primary Domain Controller。 |
源用户字段
| 字段 | 类 | 类型 | 说明 |
|---|---|---|---|
| SrcUserId | 可选 | String | 源用户的计算机可读字母数字唯一表示形式。 有关不同 ID 类型支持的格式,请参阅 User 实体。 例如: S-1-12 |
| SrcUserScope | 可选 | String | 定义 SrcUserId 和 SrcUsername 的范围(例如Microsoft Entra租户)。 有关详细信息和允许的值列表,请参阅架构概述一文中的 UserScope。 |
| SrcUserScopeId | 可选 | String | 定义 SrcUserId 和 SrcUsername 的范围 ID,例如 Microsoft Entra 目录 ID。 有关详细信息和允许的值列表,请参阅架构概述一文中的 UserScopeId。 |
| SrcUserIdType | 条件 | UserIdType | 存储在 SrcUserId 字段中的 ID 的类型。 有关允许值的列表和其他信息,请参阅架构概述一文中的 UserIdType。 |
| SrcUsername | 可选 | 用户名 (字符串) | 源用户名,包括域信息(如果可用)。 有关不同 ID 类型支持的格式,请参阅 User 实体。 仅当域信息不可用时,才使用简单表单。 将用户名类型存储在 SrcUsernameType 字段中。 如果其他用户名格式可用,请将它们存储在 字段中 SrcUsername<UsernameType>。例如: AlbertE |
| SrcUsernameType | 条件 | UsernameType | 指定存储在 SrcUsername 字段中的用户名的类型。 有关允许值的列表和详细信息,请参阅架构概述一文中的 UsernameType。 例如: Windows |
| SrcUserType | 可选 | UserType | 源用户的类型。 有关允许值的列表和详细信息,请参阅架构概述一文中的 UserType。 注意:可以使用不同的术语在源记录中提供该值,这些术语应规范化为这些值。 将原始值存储在 SrcOriginalUserType 字段中。 |
| SrcOriginalUserType | 可选 | String | 原始目标用户类型(如果由报告设备提供)。 |
源应用程序字段
| 字段 | 类 | 类型 | 说明 |
|---|---|---|---|
| SrcAppName | 可选 | String | 源应用程序的名称。 例如: filezilla.exe |
| SrcAppId | 可选 | String | 源应用程序的 ID,由报告设备报告。 如果 SrcAppType 为 Process, SrcAppId 并且 SrcProcessId 应具有相同的值。例如: 124 |
| SrcAppType | 可选 | AppType | 源应用程序的类型。 有关允许值的列表和详细信息,请参阅架构概述一文中的 AppType。 如果使用 SrcAppName 或 SrcAppId ,则此字段是必需的。 |
| SrcProcessName | 可选 | String | 启动网络会话的进程的文件名称。 此名称通常被视为进程名称。 例如: C:\Windows\explorer.exe |
| SrcProcessId | 可选 | String | 进程 ID (启动网络会话的进程 PID) 。 例如: 48610176 注意:类型定义为字符串以支持不同的系统,但在 Windows 和 Linux此值必须是数值。 如果你使用的是 Windows 或 Linux 计算机,并且使用了其他类型,请确保转换值。 例如,如果使用了十六进制值,请将其转换为十进制值。 |
| SrcProcessGuid | 可选 | String | 生成的唯一标识符 (启动网络会话的进程 GUID) 。 例如: EF3BD0BD-2B74-60C5-AF5C-010000001E00 |
本地和远程别名
上面列出的所有源字段和目标字段都可以由具有相同名称、描述符 Local 和 Remote的字段选择性地别名。 这通常有助于终结点报告的事件,其事件类型为 EndpointNetworkSession。
对于此类事件,描述符 Local 和 Remote 分别表示终结点本身和网络会话另一端的设备。 对于入站连接,本地系统是目标, Local 字段是字段的 Dst 别名,“远程”字段是字段的 Src 别名。 相反,对于出站连接,本地系统是源, Local 字段是字段的 Src 别名, Remote 字段是字段的 Dst 别名。
例如,对于入站事件,字段 LocalIpAddr 是 的 DstIpAddr 别名,字段 RemoteIpAddr 是 的 SrcIpAddr别名。
主机名和 IP 地址别名
| 字段 | 类 | 类型 | 说明 |
|---|---|---|---|
| 主机 名 | 别名 | - 如果事件类型为 NetworkSession、 或 L2NetworkSession,Flow主机名是 DstHostname 的别名。- 如果事件类型为 EndpointNetworkSession,Hostname 是 的别名 RemoteHostname,它可以为 DstHostname 或 SrcHostName 别名,具体取决于 NetworkDirection |
|
| IpAddr | 别名 | - 如果事件类型为 NetworkSession、 或 L2NetworkSession,Flow则 IpAddr 是 SrcIpAddr 的别名。- 如果事件类型为 EndpointNetworkSession,IpAddr 是 的别名 LocalIpAddr,它可以为 SrcIpAddr 或 DstIpAddr 别名,具体取决于 NetworkDirection。 |
中间设备和网络地址转换 (NAT) 字段
如果记录包含有关中继网络会话的中间设备(如防火墙或代理)的信息,则以下字段非常有用。
中间系统通常使用地址转换,因此原始地址和外部观察到的地址不同。 在这种情况下,主地址字段(如 SrcIPAddr 和 DstIpAddr )表示在外部观察到的地址,而 NAT 地址字段 SrcNatIpAddr 和 DstNatIpAddr 表示转换前原始设备的内部地址。
检查字段
以下字段用于表示安全设备(如防火墙、IPS 或 Web 安全网关)执行的检查:
| 字段 | 类 | 类型 | 说明 |
|---|---|---|---|
| NetworkRuleName | 可选 | String |
决定 DvcAction 所依据的规则的名称或 ID。 例如: AnyAnyDrop |
| NetworkRuleNumber | 可选 | 整数 |
DvcAction 所依据的规则编号。 例如: 23 |
| Rule | 别名 | String | NetworkRuleName 的值或 NetworkRuleNumber 的值。 如果使用 NetworkRuleNumber 的值,则类型应转换为字符串。 |
| ThreatId | 可选 | String | 网络会话中标识的威胁或恶意软件的 ID。 例如: Tr.124 |
| ThreatName | 可选 | String | 网络会话中标识的威胁或恶意软件的名称。 例如: EICAR Test File |
| ThreatCategory | 可选 | String | 网络会话中标识的威胁或恶意软件的类别。 例如: Trojan |
| ThreatRiskLevel | 可选 | RiskLevel (整数) | 与会话关联的风险级别。 级别应为 介于 0 和 100 之间的数字。 注意:可以使用其他比例在源记录中提供该值,应将其规范化为此比例。 原始值应存储在 ThreatRiskLevelOriginal 中。 |
| ThreatOriginalRiskLevel | 可选 | String | 报告设备报告的风险级别。 |
| ThreatIpAddr | 可选 | IP 地址 | 识别其威胁的 IP 地址。 字段 ThreatField 包含 ThreatIpAddr 表示的字段的名称。 |
| ThreatField | 条件 | 枚举 | 已识别威胁的字段。 值为 SrcIpAddr 或 DstIpAddr。 |
| ThreatConfidence | 可选 | ConfidenceLevel (Integer) | 所识别的威胁的置信度,规范化为介于 0 和 100 之间的值。 |
| ThreatOriginalConfidence | 可选 | String | 已识别的威胁的原始置信度,由报告设备报告。 |
| ThreatIsActive | 可选 | 布尔值 | 如果确定的威胁被视为活动威胁,则为 True。 |
| ThreatFirstReportedTime | 可选 | datetime | 首次将 IP 地址或域标识为威胁。 |
| ThreatLastReportedTime | 可选 | datetime | 上次将 IP 地址或域标识为威胁的时间。 |
其他字段
如果事件由网络会话的某个终结点报告,则它可能包含有关启动或终止会话的进程的信息。 在这种情况下, ASIM 进程事件架构 用于规范化此信息。
架构更新
下面是架构版本 0.2.1 中的更改:
- 将 和
Dst作为别名添加到Src源和目标系统的前导标识符。 - 添加了字段
NetworkConnectionHistory、SrcVlanId、DstVlanId、InnerVlanId和OuterVlanId。
下面是架构版本 0.2.2 中的更改:
- 添加了
Remote和Local别名。 - 添加了事件类型
EndpointNetworkSession。 - 当
HostnameIpAddr事件类型EndpointNetworkSession为 时,分别定义为 和LocalIpAddr的RemoteHostname别名。 - 定义为
DvcInterface或DvcOutboundInterface的DvcInboundInterface别名。 - 将以下字段的类型从 Integer 更改为 Long:
SrcBytes、DstBytes、、NetworkBytesSrcPackets、DstPackets和NetworkPackets。 - 添加了字段
NetworkProtocolVersion。 - 已
DstUserDomain弃用和SrcUserDomain。
下面是架构版本 0.2.3 中的更改:
-
ipaddr_has_any_prefix添加了筛选参数。 - 筛选
hostname_has_any参数现在与源或目标主机名匹配。 - 添加了字段
ASimMatchingHostname和ASimMatchingIpAddr。
下面是架构版本 0.2.4 中的更改:
-
TcpFlags添加了字段。 - 更新
NetworkIcpmType了 和NetworkIcmpCode以反映两者的编号值。 - 添加了其他检查字段。
- 字段“ThreatRiskLevelOriginal”已重命名为
ThreatOriginalRiskLevel,以符合 ASIM 约定。 现有Microsoft分析程序将保留ThreatRiskLevelOriginal到 2023 年 5 月 1 日。 - 标记为
EventResultDetails建议,并指定允许的值。
下面是架构版本 0.2.5 中的更改:
- 添加了字段
DstUserScope、、SrcUserScope、SrcDvcScopeId、SrcDvcScopeDstDvcScopeIdDstDvcScope、DvcScopeId、 和DvcScope。
下面是架构版本 0.2.6 中的更改:
- 添加了 IDS 作为事件类型
下面是架构版本 0.2.7 中的更改:
- 添加了字段
DstDescription和SrcDescription
后续步骤
有关更多信息,请参阅: