UDM 使用指南

本文档提供以下内容:

如需详细了解特定 UDM 字段(例如枚举编号),请参阅统一数据模型字段列表。

UDM 字段名称格式:

  • 对于规则引擎评估,前缀以 udm 开头。
  • 对于基于配置的标准化程序 (CBN),前缀以 event.idm.read_only_udm 开头。

填充事件元数据

UDM 事件的事件元数据部分会存储每个事件的一般信息。

Metadata.event_type

  • 用途:指定事件的类型。如果一个事件有多种可能的类型,则此值必须指定最具体的类型。
  • 必需:是。
  • 编码:必须是预定义的 UDM event_type 枚举类型之一。
  • 可能的值:以下部分列出了 UDM 中 metadata.event_type 的所有可能值。如需了解每个类别的必填字段和可选字段,请参阅每种事件类型的必填字段和可选字段。

分析师活动

  • ANALYST_ADD_COMMENT
  • ANALYST_UPDATE_PRIORITY
  • ANALYST_UPDATE_REASON
  • ANALYST_UPDATE_REPUTATION
  • ANALYST_UPDATE_RISK_SCORE
  • ANALYST_UPDATE_ROOT_CAUSE
  • ANALYST_UPDATE_SEVERITY_SCORE
  • ANALYST_UPDATE_STATUS
  • ANALYST_UPDATE_VERDICT

设备事件

与设备(例如工业控制系统或运营技术资产)上的固件、配置或程序更新相关的事件:

  • DEVICE_CONFIG_UPDATE
  • DEVICE_FIRMWARE_UPDATE
  • DEVICE_PROGRAM_DOWNLOAD
  • DEVICE_PROGRAM_UPLOAD

电子邮件事件

与电子邮件交易和电子邮件安全检查相关的事件:

  • EMAIL_UNCATEGORIZED
  • EMAIL_TRANSACTION
  • EMAIL_URL_CLICK(已弃用)

未指定的事件

未初始化事件类型的占位值(设置为 EVENTTYPE_UNSPECIFIED 的事件无法通过 UDM 验证):

  • EVENTTYPE_UNSPECIFIED

在端点上执行的文件事件

  • FILE_UNCATEGORIZED
  • FILE_COPY(例如,将文件复制到 U 盘)
  • FILE_CREATION
  • FILE_DELETION
  • FILE_MODIFICATION
  • FILE_MOVE
  • FILE_OPEN(例如,打开文件可能表示存在安全事故)
  • FILE_READ(例如,读取密码文件)
  • FILE_SYNC

不属于任何其他类别的事件

不属于任何其他类别的事件,包括未分类的操作系统事件:

  • GENERIC_EVENT

群组活动事件

与创建、修改或删除用户或系统群组相关的事件:

  • GROUP_UNCATEGORIZED
  • GROUP_CREATION
  • GROUP_DELETION
  • GROUP_MODIFICATION

互斥量事件

与在端点上创建或管理互斥量 (mutex) 对象相关的事件:

  • MUTEX_UNCATEGORIZED
  • MUTEX_CREATION

网络遥测事件

网络遥测事件,包括原始协议载荷(例如 DHCP 和 DNS),以及协议摘要(例如 HTTP、SMTP 和 FTP)和来自 NetFlow 和防火墙的流和连接事件:

  • NETWORK_UNCATEGORIZED
  • NETWORK_CONNECTION(例如来自防火墙的网络连接详细信息)
  • NETWORK_DHCP
  • NETWORK_DNS
  • NETWORK_FLOW(例如来自 Netflow 的汇总流统计信息)
  • NETWORK_FTP
  • NETWORK_HTTP
  • NETWORK_SMTP

处理事件

与进程相关的任何事件,例如进程启动、进程创建恶意内容、进程注入到另一个进程、注册表项更改或在磁盘上创建恶意文件:

  • PROCESS_UNCATEGORIZED
  • PROCESS_INJECTION
  • PROCESS_LAUNCH
  • PROCESS_MODULE_LOAD
  • PROCESS_OPEN
  • PROCESS_PRIVILEGE_ESCALATION
  • PROCESS_TERMINATION

注册表事件

处理 Microsoft Windows 专属注册表事件时,请使用以下 REGISTRY 事件,而不是 SETTING 事件:

  • REGISTRY_UNCATEGORIZED
  • REGISTRY_CREATION
  • REGISTRY_MODIFICATION
  • REGISTRY_DELETION

资源事件

与创建、读取、写入、删除或更改资源权限相关的事件:

  • RESOURCE_CREATION
  • RESOURCE_DELETION
  • RESOURCE_PERMISSIONS_CHANGE
  • RESOURCE_READ
  • RESOURCE_WRITTEN

扫描导向型事件

扫描导向型事件包括由端点或网络安全产品(例如 EDR、杀毒软件、漏洞扫描器或 DLP)执行的按需扫描和行为检测:

  • SCAN_UNCATEGORIZED
  • SCAN_FILE
  • SCAN_HOST
  • SCAN_NETWORK
  • SCAN_PROCESS
  • SCAN_PROCESS_BEHAVIORS(已弃用)
  • SCAN_VULN_HOST
  • SCAN_VULN_NETWORK

计划任务事件(Windows 任务计划程序、cron 等)

  • SCHEDULED_TASK_UNCATEGORIZED
  • SCHEDULED_TASK_CREATION
  • SCHEDULED_TASK_DELETION
  • SCHEDULED_TASK_DISABLE
  • SCHEDULED_TASK_ENABLE
  • SCHEDULED_TASK_MODIFICATION

服务事件

与创建、删除、修改、启动或停止操作系统或应用服务相关的事件:

  • SERVICE_UNSPECIFIED
  • SERVICE_CREATION
  • SERVICE_DELETION
  • SERVICE_MODIFICATION
  • SERVICE_START
  • SERVICE_STOP

设置事件

如需了解活动要求,请参阅 SETTING_UNCATEGORIZED、SETTING_CREATION、SETTING_MODIFICATION、SETTING_DELETION。

设置事件,包括端点上的系统设置发生更改的时间:

  • SETTING_UNCATEGORIZED
  • SETTING_CREATION
  • SETTING_DELETION
  • SETTING_MODIFICATION

安全产品发送的状态消息

来自安全产品的状态消息,用于指示代理处于活动状态,并发送版本、指纹或其他类型的数据:

  • STATUS_UNCATEGORIZED
  • STATUS_HEARTBEAT(表示产品处于活动状态)
  • STATUS_STARTUP
  • STATUS_SHUTDOWN
  • STATUS_UPDATE(软件或指纹更新)

系统审核日志事件

  • SYSTEM_AUDIT_LOG_UNCATEGORIZED
  • SYSTEM_AUDIT_LOG_WIPE

用户身份验证活动事件

  • USER_UNCATEGORIZED
  • USER_BADGE_IN(例如,用户实际登录网站时)
  • USER_CHANGE_PASSWORD
  • USER_CHANGE_PERMISSIONS
  • USER_COMMUNICATION
  • USER_CREATION
  • USER_DELETION
  • USER_LOGIN
  • USER_LOGOUT
  • USER_RESOURCE_ACCESS
  • USER_RESOURCE_CREATION
  • USER_RESOURCE_DELETION
  • USER_RESOURCE_UPDATE_CONTENT
  • USER_RESOURCE_UPDATE_PERMISSIONS
  • USER_STATS(已弃用)

Metadata.collected_timestamp

  • 用途:对供应商的本地收集基础架构收集事件时的 GMT 时间戳进行编码。
  • 编码:RFC 3339,适用于 JSON 或 Proto3 时间戳格式。
  • 示例:
    • RFC 3339:“2019-09-10T20:32:31-08:00”
    • Proto3 格式:“2012-04-23T18:25:43.511Z”

Metadata.event_timestamp

  • 用途:对事件生成时的 GMT 时间戳进行编码。
  • 是否必需:是
  • 编码:RFC 3339,适用于 JSON 或 Proto3 时间戳格式。
  • 示例:
    • RFC 3339:2019-09-10T20:32:31-08:00
    • Proto3 格式:2012-04-23T18:25:43.511Z

Metadata.description

  • 用途:事件的人类可读说明。
  • 编码:字母数字字符串,允许使用标点符号,最多 1024 个字节
  • 示例:文件 c:\bar\foo.exe 被阻止访问敏感文档 c:\documents\earnings.docx。

Metadata.product_event_type

  • 用途:简短、描述性、人类可读且特定于产品的事件名称或类型。
  • 编码:字母数字字符串,允许使用标点符号,最多 64 字节。
  • 示例:
    • 注册表创建事件
    • ProcessRollUp
    • 检测到权限提升
    • 已阻止恶意软件

Metadata.product_log_id

  • 用途:对供应商专用事件标识符进行编码,以唯一标识事件 (GUID)。用户可以使用此标识符在供应商的专有控制台中搜索相关事件。
  • 编码:区分大小写的字母数字字符串,允许使用标点符号,最多 256 字节。
  • 示例:ABcd1234-98766

Metadata.product_name

  • 用途:指定商品名称。
  • 编码:区分大小写的字母数字字符串,允许使用标点符号,最多 256 字节。
  • 示例:
    • Falcon
    • Symantec Endpoint Protection

Metadata.product_version

  • 用途:指定商品版本。
  • 编码:字母数字字符串,允许使用英文句点和短划线,最多 32 个字节
  • 示例:
    • 1.2.3b
    • 10.3:rev1

Metadata.url_back_to_product

  • 用途:链接到相关网站的网址,您可以在该网站上查看有关此特定事件(或一般事件类别)的更多信息。
  • 编码:有效的 RFC 3986 网址,可包含端口信息等可选参数。网址前面必须有协议前缀(例如 https:// 或 http://)。
  • 示例:https://newco.altostrat.com:8080/event_info?event_id=12345

Metadata.vendor_name

  • 用途:指定产品供应商的名称。
  • 编码:区分大小写的字母数字字符串,允许使用标点符号,最多 256 字节
  • 示例:
    • CrowdStrike
    • Symantec

填充名词元数据

在本部分中,名词一词是用来表示以下实体的主要术语:principal、src、target、intermediary、observer 和 about。这些实体具有通用特性,但在事件中表示不同的对象。如需详细了解实体以及每个实体在事件中代表什么,请参阅设置 UDM 事件的格式。

Noun.asset_id

  • 用途:供应商专属的唯一设备标识符(例如,在新设备上安装端点安全软件时生成的 GUID,用于长期跟踪该唯一设备)。
  • 编码:(VendorName or VendorAbbreviation):ID,其中 VendorName or VendorAbbreviation 是不区分大小写的供应商名称(例如 Carbon Black 或 CB),ID 是供应商专有的客户标识符,在其客户的环境中具有全局唯一性(例如,标识唯一设备的 GUID 或唯一值)。VendorName 包含字母数字字符且长度不超过 32 个字符。ID 在长度上最多可达 128 个字符,并且可以包含字母数字字符、短划线和英文句点。
  • 示例:CrowdStrike:0bce4259-4ada-48f3-a904-9a526b01311f
  • 示例:CS:0bce4259-4ada-48f3-a904-9a526b01311f

Noun.email

  • 用途:邮箱
  • 编码:标准电子邮件地址格式。
  • 示例:johns@test.altostrat.com

Noun.file

Noun.hostname

  • 用途:客户端主机名或域名。如果存在网址,请勿添加。
  • 编码:有效的 RFC 1123 主机名。
  • 验证限制:主机名字符串的长度不得超过 255 个字节,以符合搜索索引限制。
  • 示例:
    • userwin10
    • www.altostrat.com

Noun.platform

  • 用途:平台操作系统。
  • 编码:枚举
  • 可能的值:
    • LINUX
    • MAC
    • WINDOWS
    • UNKNOWN_PLATFORM

Noun.platform_patch_level

  • 用途:平台操作系统补丁级别。
  • 编码:包含标点符号的字母数字字符串,最多 64 个字符。
  • 示例:Build 17134.48

Noun.platform_version

  • 用途:平台操作系统版本。
  • 编码:包含标点符号的字母数字字符串,最多 64 个字符。
  • 示例:Microsoft Windows 10 版本 1803

Noun.process

Noun.ip

  • 目的:
    • 与网络连接相关联的单个 IP 地址。
    • 在事件发生时与参与者设备关联的一个或多个 IP 地址(例如,如果 EDR 产品知道与设备关联的所有 IP 地址,它可以在 IP 字段中对所有这些地址进行编码)。
  • 编码:以 ASCII 编码的有效 IPv4(4 字节)或 IPv6(16 字节)地址字符串 (RFC 5942)。
  • 可重复性:
    • 如果事件描述的是特定网络连接(例如 srcip:srcport > dstip:dstport),则您只能提供一个 IP 地址。
    • 如果事件描述的是参与者设备上发生的一般活动,而不是特定的网络连接,您可以提供事件发生时设备的所有关联 IP 地址。
  • 示例:
    • 192.168.1.2
    • 2001:db8:1:3::1

Noun.port

  • 用途:在事件中描述特定网络连接时,表示来源或目标网络端口号。
  • 编码:有效的 TCP/IP 端口号,范围为 1 到 65,535。
  • 示例:

    • 80
    • 443

Noun.mac

  • 用途:与设备关联的一个或多个 MAC 地址。
  • 编码:符合 48 位扩展唯一标识符 (EUI-48) 格式的有效 6 字节 MAC 地址,采用 ASCII 编码。
  • 可重复性:您可以在事件发生时提供设备的所有关联 MAC 地址。
  • 示例:
    • 00:24:98:7B:19:02
    • 00:00:5e:00:53:2a

Noun.administrative_domain

  • 用途:设备所属的网域(例如 Windows 网域)。
  • 编码:有效的域名字符串(最多 128 个字符)。
  • 示例:corp.altostrat.com

Noun.registry

Noun.url

  • 用途:标准网址
  • 编码:网址 (RFC 3986)。必须具有有效的协议前缀(例如 https:// 或 ftp://)。必须包含完整的域名和路径。可能包含网址的参数。
  • 示例:https://foo.altostrat.com/bletch?a=b;c=d

Noun.user

填充身份验证元数据

Authentication.AuthType

  • 用途:与身份验证事件关联的系统类型(Google Security Operations UDM)。
  • 编码:枚举类型。
  • 可能的值:
    • AUTHTYPE_UNSPECIFIED
    • MACHINE - 机器身份验证
    • PHYSICAL - 物理身份验证(例如,工牌读取器)
    • 单点登录
    • TACACS - 用于联网系统身份验证的 TACACS 系列协议(例如 TACACS 或 TACACS+)
    • VPN

Authentication.Authentication_Status

  • 用途:描述用户或特定凭证的身份验证状态。
  • 编码:枚举类型。
  • 可能的值:
    • UNKNOWN_AUTHENTICATION_STATUS — 默认身份验证状态
    • ACTIVE - 身份验证方法处于活跃状态
    • SUSPENDED - 身份验证方法处于已暂停或已停用状态
    • DELETED - 身份验证方法已删除
    • NO_ACTIVE_CREDENTIALS - 身份验证方法没有活跃凭据。

Authentication.auth_details

  • 用途:供应商定义的身份验证详细信息。
  • 编码:字符串。

Authentication.Mechanism

  • 用途:用于身份验证的机制。
  • 编码:枚举类型。
  • 可能的值:
    • MECHANISM_UNSPECIFIED - 默认身份验证机制。
    • BADGE_READER
    • BATCH - 批量身份验证。
    • CACHED_INTERACTIVE - 使用缓存凭据进行交互式身份验证。
    • HARDWARE_KEY
    • LOCAL
    • MECHANISM_OTHER - 此处未定义的其他机制。
    • NETWORK - 网络身份验证。
    • NETWORK_CLEAR_TEXT - 网络明文身份验证。
    • NEW_CREDENTIALS - 使用新凭据进行身份验证。
    • OTP
    • REMOTE - 远程身份验证
    • REMOTE_INTERACTIVE - RDP、终端服务、虚拟网络计算 (VNC) 等。
    • SERVICE - 服务身份验证。
    • UNLOCK - 直接人机交互解锁身份验证。
    • USERNAME_PASSWORD

填充 DHCP 元数据

动态主机控制协议 (DHCP) 元数据字段可捕获 DHCP 网络管理协议日志信息。

Dhcp.client_hostname

  • 用途:客户端的主机名。如需了解详情,请参阅 RFC 2132:DHCP 选项和 BOOTP 供应商扩展程序。
  • 编码:字符串。
  • 验证限制:主机名选项字符串的长度不得超过 255 个字节,以符合搜索索引限制。

Dhcp.client_identifier

  • 用途:客户端标识符。如需了解详情,请参阅 RFC 2132:DHCP 选项和 BOOTP 供应商扩展程序。
  • 编码:字节。

Dhcp.file

  • 用途:启动映像的文件名。
  • 编码:字符串。

Dhcp.flags

  • 用途:DHCP 标志字段的值。
  • 编码:32 位无符号整数。

Dhcp.hlen

  • 用途:硬件地址长度。
  • 编码:32 位无符号整数。

Dhcp.hops

  • 用途:DHCP 跳数。
  • 编码:32 位无符号整数。

Dhcp.htype

  • 用途:硬件地址类型。
  • 编码:32 位无符号整数。

Dhcp.lease_time_seconds

  • 用途:客户端请求的 IP 地址租用时间(以秒为单位)。如需了解详情,请参阅 RFC 2132:DHCP 选项和 BOOTP 供应商扩展程序。
  • 编码:32 位无符号整数。

Dhcp.opcode

  • 用途:BOOTP 操作码(请参阅 RFC 951 的第 3 节)。
  • 编码:枚举类型。
  • 可能的值:
    • UNKNOWN_OPCODE
    • BOOTREQUEST
    • BOOTREPLY

Dhcp.requested_address

  • 用途:客户端标识符。如需了解详情,请参阅 RFC 2132:DHCP 选项和 BOOTP 供应商扩展程序。
  • 编码:以 ASCII 编码的有效 IPv4 或 IPv6 地址 (RFC 5942)。

Dhcp.seconds

  • 用途:自客户端开始地址获取或续订过程以来经过的秒数。
  • 编码:32 位无符号整数。

Dhcp.sname

  • 用途:客户端请求从中启动的服务器的名称。
  • 编码:字符串。

Dhcp.transaction_id

  • 用途:客户端交易 ID。
  • 编码:32 位无符号整数。

Dhcp.type

  • 用途:DHCP 消息类型。如需了解详情,请参阅 RFC 1533。
  • 编码:枚举类型。
  • 可能的值:
    • UNKNOWN_MESSAGE_TYPE
    • DISCOVER
    • OFFER
    • REQUEST
    • DECLINE
    • ACK
    • NAK
    • RELEASE
    • INFORM
    • WIN_DELECTED
    • WIN_EXPIRED

Dhcp.chaddr

  • 用途:客户端的硬件地址。
  • 编码:MAC 地址。

Dhcp.ciaddr

  • 用途:客户端的 IP 地址。
  • 编码:以 ASCII 编码的有效 IPv4 或 IPv6 地址 (RFC 5942)。

Dhcp.giaddr

  • 用途:中继代理的 IP 地址。
  • 编码:以 ASCII 编码的有效 IPv4 或 IPv6 地址 (RFC 5942)。

Dhcp.siaddr

  • 用途:下一个引导服务器的 IP 地址。
  • 编码:以 ASCII 编码的有效 IPv4 或 IPv6 地址 (RFC 5942)。

Dhcp.yiaddr

  • 用途:您的 IP 地址。
  • 编码:以 ASCII 编码的有效 IPv4 或 IPv6 地址 (RFC 5942)。

填充 DHCP 选项元数据

DHCP 选项元数据字段可捕获 DHCP 选项日志信息。

Option.code

  • 用途:存储 DHCP 选项代码。如需了解详情,请参阅 RFC 1533:DHCP 选项和 BOOTP 供应商扩展程序。
  • 编码:无符号 32 位整数。

Option.data

  • 用途:存储 DHCP 选项数据。如需了解详情,请参阅 RFC 1533:DHCP 选项和 BOOTP 供应商扩展程序。
  • 编码:字节。

填充 DNS 元数据

DNS 元数据字段可捕获与 DNS 请求和响应数据包相关的信息。它们与 DNS 请求和响应数据报中的数据是一对一的对应关系。

Dns.authoritative

  • 用途:对于权威 DNS 服务器,设置为 true。
  • 编码:布尔值。

Dns.id

  • 用途:存储 DNS 查询标识符。
  • 编码:32 位整数。

Dns.response

  • 用途:如果事件是 DNS 响应,则设置为 true。
  • 编码:布尔值。

Dns.opcode

  • 用途:存储用于指定 DNS 查询类型(标准、反向、服务器状态等)的 DNS OpCode。
  • 编码:32 位整数。

Dns.recursion_available

  • 用途:如果递归 DNS 查找可用,则设置为 true。
  • 编码:布尔值。

Dns.recursion_desired

  • 用途:如果请求递归 DNS 查找,则设置为 true。
  • 编码:布尔值。

Dns.response_code

  • 用途:存储 RFC 1035(域名 - 实现和规范)定义的 DNS 响应代码。
  • 编码:32 位整数。

Dns.truncated

  • 用途:如果这是截断的 DNS 响应,则设置为 true。
  • 编码:布尔值。

Dns.questions

Dns.answers

Dns.authority

Dns.additional

填充 DNS 问题元数据

DNS 问题元数据字段可捕获网域协议消息的问题部分中的信息。

Question.name

  • 用途:存储域名。
  • 编码:字符串。
  • 验证限制:根据 RFC 1035 规定和搜索索引限制,网域查询字符串不能为空,且长度不得超过 255 个八位字节(字节)。

Question.class

  • 用途:存储指定查询类别的代码。
  • 编码:32 位整数。

Question.type

  • 用途:存储指定查询类型的代码。
  • 编码:32 位整数。

填充 DNS 资源记录元数据

DNS 资源记录元数据字段可捕获网域协议消息的资源记录中包含的信息。

ResourceRecord.binary_data

  • 用途:存储可能作为 DNS 响应的一部分包含的任何非 UTF8 字符串的原始字节。仅当 DNS 服务器返回的响应数据包含非 UTF8 数据时,才应使用此字段。否则,请将 DNS 响应放在“data”字段中。此类信息必须存储在此处,而不是存储在 ResourceRecord.data 中。
  • 编码:字节。

ResourceRecord.class

  • 用途:存储指定资源记录类的代码。
  • 编码:32 位整数。

ResourceRecord.data

  • 用途:存储以 UTF-8 格式编码的所有响应的载荷或对 DNS 问题的响应。例如,数据字段可以返回域名所引用的机器的 IP 地址。如果资源记录用于不同的类型或类,则可能包含另一个域名(当一个域名被重定向到另一个域名时)。数据必须按原样存储在 DNS 响应中。
  • 编码:字符串。

ResourceRecord.name

  • 用途:存储资源记录所有者的名称。
  • 编码:字符串。

ResourceRecord.ttl

  • 用途:存储资源记录在缓存中存储的时长,超过该时长后,系统会再次查询信息来源。
  • 编码:32 位整数。

ResourceRecord.type

  • 用途:存储指定资源记录类型的代码。
  • 编码:32 位整数。

填充电子邮件元数据

大多数电子邮件元数据字段可捕获邮件标头中包含的电子邮件地址,并符合 RFC 5322 中定义的标准电子邮件地址格式 (local-mailbox@domain)。例如 frank@email.example.com。

Email.from

  • 用途:存储 from 电子邮件地址。
  • 编码:字符串。

Email.reply_to

  • 用途:存储 reply_to 电子邮件地址。
  • 编码:字符串。

Email.to

  • 用途:存储 to 邮箱。
  • 编码:字符串。

Email.cc

  • 用途:存储 cc 电子邮件地址。
  • 编码:字符串。

Email.bcc

  • 用途:存储 bcc 电子邮件地址。
  • 编码:字符串。

Email.mail_id

  • 用途:存储邮件(或消息)ID。
  • 编码:字符串。
  • 示例:192544.132632@email.example.com

Email.subject

  • 用途:存储电子邮件主题行。
  • 编码:字符串。
  • 示例:“请阅读此消息。”

填充扩展程序元数据

具有内置元数据且尚未由 Google SecOps UDM 分类的事件类型。

Extensions.auth

  • 用途:身份验证元数据的扩展。
  • 编码:字符串。
  • 示例:
    • 沙盒元数据(文件显示的所有行为,例如 FireEye)。
    • 网络访问权限控制 (NAC) 数据。
    • 用户的 LDAP 详细信息(例如角色、单位等)。

Extensions.auth.auth_details

  • 用途:指定身份验证类型或机制的供应商特定详细信息。身份验证提供方通常会定义 via_mfa 或 via_ad 等类型,这些类型可提供有关身份验证类型的实用信息。为了确保可用性和跨数据集规则兼容性,这些类型仍然可以在 auth.type 或 auth.mechanism 中进行泛化。
  • 编码:字符串。
  • 示例:via_mfa、via_ad。

Extensions.vulns

  • 用途:漏洞元数据的扩展。
  • 编码:字符串。
  • 示例:主机漏洞扫描数据。

填充文件元数据

File.file_metadata

  • 用途:与文件关联的元数据。
  • 编码:字符串。
  • 示例:
    • 作者
    • 修订版本号
    • 版本号
    • 上次保存日期

File.full_path

  • 用途:标识文件在系统中的位置的完整路径。
  • 编码:字符串。
  • 示例:\Program Files\Custom Utilities\Test.exe

File.md5

  • 用途:文件的 MD5 哈希值。
  • 编码:字符串,小写十六进制。
  • 示例:35bf623e7db9bf0d68d0dda764fd9e8c

File.mime_type

  • 用途:文件的多用途互联网邮件扩展 (MIME) 类型。
  • 编码:字符串。
  • 示例:
    • PE
    • PDF
    • powershell 脚本

File.sha1

  • 用途:文件的 SHA-1 哈希值。
  • 编码:字符串,小写十六进制。
  • 示例:eb3520d53b45815912f2391b713011453ed8abcf

File.sha256

  • 用途:文件的 SHA-256 哈希值。
  • 编码:字符串,小写十六进制。
  • 示例:d7173c568b8985e61b4050f81b3fd8e75bc922d2a0843d7079c81ca4b6e36417

File.size

  • 用途:文件大小。
  • 编码:64 位无符号整数。
  • 示例:342135

填充 FTP 元数据

Ftp.command

  • 用途:存储 FTP 命令。
  • 编码:字符串。
  • 示例:
    • binary
    • delete
    • get
    • put

填充群组元数据

组织群组的相关信息。如需在标准化期间表示有效的组织群组身份,您必须通过在 Group.email_addresses 中指定电子邮件地址或在 Group.windows_sid 中指定 Windows 安全标识符,对至少一个核心群组属性进行参数化。

Group.creation_time

  • 用途:群组创建时间。
  • 编码:RFC 3339,适用于 JSON 或 Proto3 时间戳格式。

Group.email_addresses

  • 用途:群组联系信息。
  • 编码:电子邮件。

Group.group_display_name

  • 用途:群组显示名称。
  • 编码:字符串。
  • 示例:
    • 金融
    • HR
    • 营销

Group.product_object_id

  • 用途:产品的全局唯一身份用户对象标识符,例如 LDAP 对象标识符。
  • 编码:字符串。

Group.windows_sid

  • 用途:Microsoft Windows 安全标识符 (SID) 群组属性字段。
  • 编码:字符串。

填充 HTTP 元数据

Http.method

  • 用途:存储 HTTP 请求方法。当流量通过 HTTP 或 HTTPS 传输协议传输时,您必须指定一个有效的请求方法;不能将该方法设置为 METHOD_UNSPECIFIED。
  • 编码:字符串。
  • 示例:
    • GET
    • HEAD
    • POST

Http.referral_url

  • 用途:存储 HTTP 引荐来源网址。
  • 编码:有效的 RFC 3986 网址。
  • 示例:https://www.altostrat.com

Http.response_code

  • 用途:存储 HTTP 响应状态代码,用于指示特定 HTTP 请求是否已成功完成。
  • 编码:32 位整数。
  • 示例:
    • 400
    • 404

Http.user_agent

  • 用途:存储 User-Agent 请求标头,其中包含发出请求的软件用户代理的应用类型、操作系统、软件供应商或软件版本。User-Agent 标头字符串必须完全由有效的 UTF-8 编码字符数组组成。
  • 编码:字符串。
  • 示例:
    • Mozilla/5.0(X11;Linux x86_64)
    • AppleWebKit/534.26(KHTML,如 Gecko)
    • Chrome/41.0.2217.0
    • Safari/527.33

填充地点元数据

Location.city

  • 用途:存储城市名称。
  • 编码:字符串。
  • 示例:
    • 桑尼维尔
    • 芝加哥
    • 马拉加省

Location.country_or_region

  • 用途:存储国家/地区或世界区域的名称。
  • 编码:字符串。
  • 示例:
    • 美国
    • 英国
    • 西班牙

Location.name

  • 用途:存储企业特有的名称,例如建筑物或园区。
  • 编码:字符串。
  • 示例:
    • 校园 7B
    • 大楼 A2

Location.state

  • 用途:存储州、省/自治区/直辖市或地区的名称。
  • 编码:字符串。
  • 示例:
    • 加利福尼亚
    • 伊利诺伊
    • 安大略

填充网络元数据

Network.application_protocol

  • 用途:指明网络应用协议。
  • 编码:枚举类型。
  • 可能的值:

    • UNKNOWN_APPLICATION_PROTOCOL
    • AFP
    • APPC
    • AMQP
    • ATOM
    • 哔哔
    • BITCOIN
    • BIT_TORRENT
    • CFDP
    • CIP
    • COAP
    • COTP
    • DCERPC
    • DDS
    • DEVICE_NET
    • DHCP
    • DICOM
    • DNP3
    • DNS
    • E_DONKEY
    • ENRP
    • FAST_TRACK
    • FINGER
    • FREENET
    • FTAM
    • GOOSE
    • GOPHER
    • GRPC
    • HL7
    • H323
    • HTTP
    • HTTPS
    • IEC104
    • IRCP
    • KADEMLIA
    • KRB5
    • LDAP
    • LPD
    • MIME
    • MMS
    • MODBUS
    • MQTT
    • NETCONF
    • NFS
    • NIS
    • NNTP
    • NTCIP
    • NTP
    • OSCAR
    • PNRP
    • PTP
    • QUIC
    • RDP
    • RELP
    • RIP
    • RLOGIN
    • RPC
    • RTMP
    • RTP
    • RTPS
    • RTSP
    • SAP
    • SDP
    • SIP
    • SLP
    • SMB
    • SMTP
    • SNMP
    • SNTP
    • SSH
    • SSMS
    • STYX
    • SV
    • TCAP
    • TDS
    • TOR
    • TSP
    • VTP
    • WHOIS
    • WEB_DAV
    • X400
    • X500
    • XMPP

Network.direction

  • 用途:指示网络流量的方向。
  • 编码:枚举类型。
  • 可能的值:
    • UNKNOWN_DIRECTION
    • INBOUND
    • OUTBOUND
    • BROADCAST

Network.email

  • 用途:指定发件人/收件人的邮箱。
  • 编码:字符串。
  • 示例:jcheng@company.example.com

Network.ip_protocol

  • 用途:表示 IP 协议。
  • 编码:枚举类型。
  • 可能的值:
    • UNKNOWN_IP_PROTOCOL
    • EIGRP - 增强型内部网关路由协议
    • ESP - 封装安全载荷
    • ETHERIP - IP 以太网封装
    • GRE - 通用路由封装
    • ICMP - 互联网控制消息协议
    • IGMP - 互联网群组管理协议
    • IP6IN4 - IPv6 封装
    • PIM - 协议独立多播
    • TCP - 传输控制协议
    • UDP - 用户数据报协议
    • VRRP - 虚拟路由器冗余协议

Network.received_bytes

  • 用途:指定接收的字节数。
  • 编码:64 位无符号整数。
  • 示例:12,453,654,768

Network.sent_bytes

  • 用途:指定发送的字节数。
  • 编码:64 位无符号整数。
  • 示例:7,654,876

Network.session_duration

  • 用途:存储网络会话时长,通常在会话的掉线事件中返回。如需设置持续时间,您可以设置 network.session_duration.seconds = 1(类型 int64)或 network.session_duration.nanos = 1(类型 int32)。
  • 编码:
    • 32 位整数 - 表示秒数 (network.session_duration.seconds)。
    • 64 位整数 - 表示纳秒 (network.session_duration.nanos)。

Network.session_id

  • 用途:存储网络会话标识符。
  • 编码:字符串。
  • 示例:SID:ANON:www.w3.org:j6oAOxCWZh/CD723LGeXlf-01:34

填充进程元数据

Process.command_line

  • 用途:存储进程的命令行字符串。
  • 编码:字符串。
  • 示例:c:\windows\system32\net.exe 群组。

Process.product_specific_process_id

  • 用途:存储产品特定的进程 ID。
  • 编码:字符串。
  • 示例:MySQL:78778 或 CS:90512

Process.parent_process.product_specific_process_id

  • 用途:存储父级进程的特定于产品的进程 ID。
  • 编码:字符串。
  • 示例:MySQL:78778 或 CS:90512

Process.file

  • 用途:存储进程正在使用的文件的文件名。
  • 编码:字符串。
  • 示例:report.xls

Process.parent_process

  • 用途:存储父进程的详细信息。
  • Encoding:名词(过程)

Process.pid

  • 用途:存储进程 ID。
  • 编码:字符串。
  • 示例:
    • 308
    • 2002

填充注册表元数据

Registry.registry_key

  • 用途:存储与应用或系统组件关联的注册表项。
  • 编码:字符串。
  • 示例:HKEY_LOCAL_MACHINE/SYSTEM/DriverDatabase

Registry.registry_value_name

  • 用途:存储与应用或系统组件关联的注册表值名称。
  • 编码:字符串。
  • 示例:TEMP

Registry.registry_value_data

  • 用途:存储与注册表值关联的数据。
  • 编码:字符串。
  • 示例:%USERPROFILE%\Local Settings\Temp

填充安全结果元数据

“安全结果”元数据包含有关安全系统发现的安全风险和威胁的详细信息,以及为减轻这些风险和威胁而采取的措施。

SecurityResult.about

  • 用途:提供安全结果的说明。
  • Encoding:名词。

SecurityResult.action

  • 用途:指定安全操作。
  • 编码:枚举类型。
  • 可能的值:Google SecOps UDM 定义了以下安全操作:
    • 允许
    • ALLOW_WITH_MODIFICATION - 文件或电子邮件已被消毒或重写,但仍转发。
    • BLOCK
    • QUARANTINE - 存储以供日后分析(并不意味着屏蔽)。
    • UNKNOWN_ACTION

SecurityResult.action_details

  • 用途:供应商提供的因安全事件而采取的措施的详细信息。安全操作通常最好转换为更通用的 Security_Result.action UDM 字段。不过,您可能需要编写由供应商提供的确切操作说明的规则。
  • 编码:字符串。
  • 示例:丢弃、屏蔽、解密、加密。

SecurityResult.category

  • 用途:指定安全类别。
  • 编码:枚举。
  • 可能的值:Google SecOps UDM 定义了以下安全类别:
    • ACL_VIOLATION - 尝试访问的未经授权访问,包括尝试访问文件、网络服务、进程、网络对象等。
    • AUTH_VIOLATION - 身份验证失败,例如密码无效或双重身份验证错误。
    • DATA_AT_REST - DLP:在扫描中静态找到的传感器数据。
    • DATA_DESTRUCTION - 尝试销毁或删除数据。
    • DATA_EXFILTRATION - DLP:传感器数据传输,复制到 U 盘。
    • EXPLOIT - 基于网络和主机的尝试溢出、错误协议编码、ROP、SQL 注入等方面的问题。
    • MAIL_PHISHING - 钓鱼邮件、聊天消息等。
    • MAIL_SPAM - 垃圾邮件、邮件等。
    • MAIL_SPOOFING - 欺骗性来源电子邮件地址等。
    • NETWORK_CATEGORIZED_CONTENT
    • NETWORK_COMMAND_AND_CONTROL - 如果命令与控制通道已知。
    • NETWORK_DENIAL_OF_SERVICE
    • NETWORK_MALICIOUS - 命令与控制、网络漏洞利用、可疑活动、潜在反向隧道等。
    • NETWORK_SUSPICIOUS - 与安全无关的内容,例如网址与赌博等相关。
    • NETWORK_RECON - 由 Web 应用探测的 IDS 检测到的端口扫描。
    • POLICY_VIOLATION - 违反安全政策,包括防火墙、代理和 HIPS 规则违规或 NAC 阻止操作。
    • SOFTWARE_MALICIOUS - 恶意软件、间谍软件、rootkit 等。
    • SOFTWARE_PUA - 可能不需要的应用,例如广告软件等。
    • SOFTWARE_SUSPICIOUS
    • UNKNOWN_CATEGORY

SecurityResult.confidence

  • 用途:指定产品估计的安全性事件置信度。
  • 编码:枚举。
  • 可能的值:Google SecOps UDM 定义了以下产品置信度类别:
    • UNKNOWN_CONFIDENCE
    • LOW_CONFIDENCE
    • MEDIUM_CONFIDENCE
    • HIGH_CONFIDENCE

SecurityResult.confidence_details

  • 用途:有关产品供应商估计的安全性事件可信度的更多详细信息。
  • 编码:字符串。

SecurityResult.priority

  • 用途:指定产品供应商估计的安全性事件优先级。
  • 编码:枚举。
  • 可能的值:Google SecOps UDM 定义了以下产品优先级类别:
    • UNKNOWN_PRIORITY
    • LOW_PRIORITY
    • MEDIUM_PRIORITY
    • HIGH_PRIORITY

SecurityResult.priority_details

  • 用途:有关安全结果优先级的供应商特定信息。
  • 编码:字符串。

SecurityResult.rule_id

  • 用途:安全规则的标识符。
  • 编码:字符串。
  • 示例:
    • 08123
    • 5d2b44d0-5ef6-40f5-a704-47d61d3babbe

SecurityResult.rule_name

  • 用途:安全规则的名称。
  • 编码:字符串。
  • 示例:BlockInboundToOracle。

SecurityResult.severity

  • 用途:产品供应商使用 Google SecOps UDM 定义的值估算的安全性事件严重级别。
  • 编码:枚举。
  • 可能的值:Google SecOps UDM 定义了以下产品严重级别:
    • UNKNOWN_SEVERITY - 非恶意
    • INFORMATIONAL - 非恶意
    • ERROR - 非恶意
    • LOW - 恶意
    • MEDIUM - 恶意
    • HIGH - 恶意

SecurityResult.severity_details

  • 用途:产品供应商估计的安全性事件严重程度。
  • 编码:字符串。

SecurityResult.threat_name

  • 用途:安全威胁的名称。
  • 编码:字符串。
  • 示例:
    • W32/File-A
    • Slammer

SecurityResult.url_back_to_product

  • 用途:将您定向到此安全性事件的来源产品控制台的网址。
  • 编码:字符串。

填充用户元数据

User.email_addresses

  • 用途:存储用户的邮箱。
  • 编码:重复字符串。
  • 示例:johnlocke@company.example.com

User.employee_id

  • 用途:存储用户的人力资源员工 ID。
  • 编码:字符串。
  • 示例:11223344。

User.first_name

  • 用途:存储用户的名字。
  • 编码:字符串。
  • 示例:John。

User.middle_name

  • 用途:存储用户的中间名。
  • 编码:字符串。
  • 示例:Anthony。

User.last_name

  • 用途:存储用户的姓氏。
  • 编码:字符串。
  • 示例:Locke。

User.group_identifiers

  • 用途:存储与用户关联的群组 ID(GUID、LDAP OID 或类似 ID)。
  • 编码:重复字符串。
  • 示例:admin-users。

User.phone_numbers

  • 用途:存储用户的手机号码。
  • 编码:重复字符串。
  • 示例:18005550101

User.title

  • 用途:存储用户的职位。
  • 编码:字符串。
  • 示例:客户关系经理。

User.user_display_name

  • 用途:存储用户的显示名称。
  • 编码:字符串。
  • 示例:John Locke。

User.userid

  • 用途:存储用户 ID。
  • 编码:字符串。
  • 示例:jlocke。

User.windows_sid

  • 用途:存储与用户关联的 Microsoft Windows 安全标识符 (SID)。
  • 编码:字符串。
  • 示例:S-1-5-21-1180649209-123456789-3582944384-1064

填充漏洞元数据

Vulnerability.about

  • 用途:如果漏洞与特定名词(例如可执行文件)有关,请在此处添加。
  • Encoding:名词。请参阅填充名词元数据
  • 示例:可执行文件。

Vulnerability.cvss_base_score

  • 用途:常见漏洞评分系统 (CVSS) 的基本评分。
  • 编码:浮点。
  • 范围:0.0 到 10.0
  • 示例:8.5

Vulnerability.cvss_vector

  • 用途:漏洞的 CVSS 属性的向量。CVSS 评分由以下指标组成:

    • 攻击途径 (AV)
    • 访问复杂性 (AC)
    • 身份验证 (Au)
    • 机密性影响 (C)
    • 完整性影响 (I)
    • 可用性影响 (A)

    如需了解详情,请参阅 https://nvd.nist.gov/vuln-metrics/cvss/v2-calculator。

  • 编码:字符串。

  • 示例:AV:L/AC:H/Au:N/C:N/I:P/A:C

Vulnerability.cvss_version

  • 用途:漏洞评分或向量的 CVSS 版本。
  • 编码:字符串。
  • 示例:3.1

Vulnerability.description

  • 用途:漏洞说明。
  • 编码:字符串。

Vulnerability.first_found

  • 用途:维护漏洞扫描历史记录的产品应使用首次检测到此资产漏洞的时间填充 first_found。
  • 编码:字符串。

Vulnerability.last_found

  • 用途:如果产品会保留漏洞扫描的历史记录,则应使用最近一次检测到此资产漏洞的时间来填充 last_found。
  • 编码:字符串。

Vulnerability.name

  • 用途:漏洞的名称。
  • 编码:字符串。
  • 示例:检测到不受支持的操作系统版本。

Vulnerability.scan_end_time

  • 用途:如果漏洞是在资产扫描期间发现的,请在此字段中填入扫描结束时间。如果结束时间不可用或不适用,请将此字段留空。
  • 编码:字符串。

Vulnerability.scan_start_time

  • 用途:如果漏洞是在资产扫描期间发现的,请在此字段中填入扫描开始时间。如果开始时间不可用或不适用,请将此字段留空。
  • 编码:字符串。

Vulnerability.severity

  • 用途:漏洞的严重程度。
  • 编码:枚举类型。
  • 可能的值:
    • UNKNOWN_SEVERITY
    • LOW
    • 中
    • HIGH

Vulnerability.severity_details

  • 用途:特定于供应商的严重程度详细信息。
  • 编码:字符串。

填充提醒元数据

idm.is_significant

  • 用途:指定是否在“企业数据洞察”中显示提醒。
  • 编码:布尔值。

idm.is_alert

  • 用途:标识事件是否为提醒。
  • 编码:布尔值。

实体类型的必填字段和选填字段

实体类型 实体专属要求
IP_ADDRESS
  • entity.ip 必须包含至少一个有效的 IPv4 或 IPv6 地址。
FILE
  • entity.file 必须存在且至少包含一个字段。
DOMAIN_NAME
  • entity.hostname 必须存在,并且代表长度不超过 255 字节的有效主机名。
  • Optional:如果填充了 entity.domain.whois_server,则 entity.domain 消息包含的推断字段不得超过 50 个。
URL
  • entity.url 必须存在且不为空。
MUTEX
  • entity.resource 必须存在。
  • entity.resource.resource_type 必须设置为 MUTEX。
  • entity.resource.name 必须存在且不为空。
USER
  • entity.user 必须存在。
  • 对于上下文实体,entity.user 必须至少指定一个核心身份字段:user.userid、user.windows_sid、user.employee_id 或 user.email_addresses 中的电子邮件地址。每个核心标识符不得超过 256 个字符。此外,您还必须在 entity.user 中提供 product_object_id,或在 metadata 中提供 product_entity_id。
  • 对于失陷指标 (IOC) 实体,entity.user 必须在 user.email_addresses 中指定至少一个电子邮件地址。
RESOURCE
  • entity.resource 必须存在。
  • 对于上下文实体,必须指定 entity.resource.resource_type 且不能为空,并且您必须在 entity.resource 中提供 product_object_id,或在 metadata 中提供 product_entity_id。
  • 对于失陷指标 (IOC) 实体,entity.resource.resource_type 必须设置为 MUTEX 或 STORAGE_OBJECT。
    • 如果 resource_type 为 MUTEX:请遵循 MUTEX 要求。
    • 如果 resource_type 为 STORAGE_OBJECT:
      • entity.resource.resource_subtype 必须存在且不为空。
      • entity.registry 中的以下字段必须至少有一个存在且不为空:
        entity.registry.registry_key
        entity.registry.registry_value_data
        entity.registry.registry_value_name
CIDR_BLOCK
  • entity.network.ip_subnet_range 必须存在,并且包含采用以下格式的有效无类别域间路由 (CIDR) 表示法:ip_address/prefix_length。
ASSET
  • entity.asset 必须存在。
  • entity.asset 必须至少包含一个核心身份字段:asset.hostname、asset.asset_id、asset.ip 中的 IP 地址或 asset.mac 中的 MAC 地址。提供的任何 IP 地址都必须采用有效的 IPv4 或 IPv6 格式。
  • 您必须在 entity.asset 中提供 product_object_id,或在 metadata 中提供 product_entity_id。
GROUP
  • entity.group 必须存在。
  • entity.group 必须至少指定一个核心身份字段:group.email_addresses 中的电子邮件地址或 group.windows_sid 中的 Windows 安全标识符。
  • 您必须在 entity.group 中提供 product_object_id,或在 metadata 中提供 product_entity_id。
AI
  • entity.ai 必须存在。

每种事件类型的必填字段和可选字段

本部分介绍了应为每种 UDM 事件类型填充的必填字段和选填字段。

如需详细了解特定 UDM 字段(例如枚举编号),请参阅统一数据模型字段列表。

DEVICE_CONFIG_UPDATE, DEVICE_FIRMWARE_UPDATE, DEVICE_PROGRAM_DOWNLOAD, DEVICE_PROGRAM_UPLOAD

必填字段:

  • metadata:包含必填字段(event_timestamp 和 event_type)。
  • principal:至少包含一个机器标识符(principal.hostname、principal.ip、principal.mac 或 principal.asset_id)。

可选字段:

  • principal.user:如果发起设备更新的账号有用户信息,则填充此字段。
  • target:如果与 principal 不同,请填充目标设备、固件、配置资源或程序文件的详细信息。
  • security_result:描述检测到的任何恶意或异常活动。
DEVICE_FIRMWARE_UPDATE 的 UDM 示例

以下示例展示了如何为 Google SecOps UDM 设置 DEVICE_FIRMWARE_UPDATE 事件的格式:

{
  "metadata": {
    "event_timestamp": "2025-03-10T14:22:05.000000Z",
    "event_type": "DEVICE_FIRMWARE_UPDATE"
  },
  "principal": {
    "hostname": "plc-controller-01",
    "ip": [
      "10.20.30.40"
    ]
  }
}

如本示例所示,该事件分为以下 UDM 类别:

  • metadata:事件的背景信息。
  • principal:发生固件更新的设备的相关信息。

EMAIL_TRANSACTION, EMAIL_UNCATEGORIZED

必填字段:

  • metadata:包括必填字段。
  • principal:填充电子邮件来源机器的相关信息(例如,发件人的 IP 地址)。

可选字段:

  • 关于:邮件正文中嵌入的网址、IP、网域和任何文件附件。请注意,about.file.hash 不是文件哈希的索引字段。 系统不会根据归一化为此字段的附件哈希值填充哈希视图。
  • securityResult.about:嵌入电子邮件正文中的错误网址、IP 和文件。
  • network.email:电子邮件发件人或收件人信息。请注意,network.email 不是别名字段。如果您需要为搜索或检测功能进行别名化和扩充,则需要使用解析器扩展程序将数据编入主账号或目标账号的索引。
  • principal:如果有关于谁发送电子邮件的客户端机器数据,请在委托人中填充服务器详细信息(例如,客户端进程、端口号、用户名等)。
  • target:如果有目标电子邮件服务器数据,则在目标中填充服务器详细信息(例如,IP 地址)。
  • intermediary:如果有邮件服务器数据或邮件代理数据,则在中介中填充服务器详细信息。

注意:

  • 切勿填充 principal.email 或 target.email。
  • 仅填充 security_result.about 或 network.email 中的电子邮件字段。
  • 顶级安全结果通常包含名词(对于垃圾邮件是可选的)。
  • EMAIL_URL_CLICK 已标记为已废弃。
EMAIL_TRANSACTION 的 UDM 示例

以下示例说明了如何针对 Google SecOps UDM 设置 EMAIL_TRANSACTION 类型的事件的格式:

metadata {
  event_timestamp: "2023-07-06T06:26:10.448584Z"
  event_type: EMAIL_TRANSACTION
}
principal {
  ip: "1.2.3.4"
}

如本示例所示,该事件分为以下 UDM 类别:

  • metadata:事件的背景信息。
  • principal:有关发送电子邮件的设备的信息。

FILE_CREATION、FILE_DELETION、FILE_MODIFICATION、FILE_READ、FILE_OPEN 和 FILE_UNCATEGORIZED

必填字段:

  • metadata:包括必填字段。
  • principal:
    • 至少一个机器标识符。
    • (可选)使用访问该文件的进程相关信息填充 principal.process。
  • target:
    • 如果该文件是远程文件(例如 SMB 共享),则目标必须包含至少一个目标机器的机器标识符,否则所有机器标识符必须为空。
    • 使用文件相关信息填充 target.file。

可选字段:

  • security_result:描述检测到的恶意活动。
  • principal.user:在进程有可用的用户信息时填充。
FILE_MODIFICATION 的 UDM 示例

以下示例说明了如何针对 Google SecOps UDM 设置 FILE_MODIFICATION 类型的事件的格式:

metadata {
  event_timestamp: "2023-07-03T12:14:38.164507Z"
  event_type: FILE_MODIFICATION
}
principal {
  hostname: "pinguino-01"
}
target {
  file {
    full_path: "foo.bar"
  }
}

如本示例所示,该事件分为以下 UDM 类别:

  • metadata:事件的背景信息。
  • principal:有关发生文件修改的设备的信息。
  • target:有关所修改文件的信息。

FILE_COPY

必填字段:

  • metadata:按照说明添加必填字段。
  • principal:
    • 至少一个机器标识符。
    • (可选)使用有关执行文件复制操作的进程的信息填充 principal.process。
  • src:
    • 使用源文件相关信息填充 src.file。
    • 如果文件是远程文件(例如 SMB 共享),则 src 必须至少包含一个用于存储源文件的源机器的机器标识符。
  • target:
    • 使用有关目标文件的信息填充 target.file。
    • 如果文件是远程文件(例如 SMB 共享),则 target 字段必须包含保存目标文件的目标机器的至少一个机器标识符。

可选字段:

  • security_result:描述检测到的恶意活动。
  • principal.user:在进程有可用的用户信息时填充。

FILE_MOVE, FILE_SYNC

必填字段:

  • metadata:事件的背景信息。
  • principal:至少一个机器标识符(例如 principal.hostname)。
  • src:填充 src.file(例如 src.file.full_path)以表示原始文件。此字段是 FILE_MOVE 和 FILE_COPY 的必填字段。对于 FILE_SYNC,您必须至少填充 src.file 或 target.file 中的一个(且 target 必须不为空)。
  • target:填充 target.file(例如 target.file.full_path)以表示目标文件。此字段是 FILE_MOVE 和 FILE_COPY 的必填字段。对于 FILE_SYNC,您必须至少填充 src.file 或 target.file 中的一个。
FILE_MOVE 的 UDM 示例

以下示例展示了如何针对 Google SecOps UDM 设置 FILE_MOVE 类型事件的格式:

{
    "metadata": {
        "event_timestamp": "2023-07-03T12:45:02.557878Z",
        "event_type": "FILE_MOVE"
    },
    "src": {
        "file": {
            "full_path": "foo.bar"
        }
    },
    "principal": {
        "hostname": "pinguino-01"
    },
    "target": {
        "file": {
            "full_path": "foo.bar"
        }
    }
}

如本示例所示,该事件分为以下 UDM 类别:

  • metadata:事件的背景信息。
  • principal:有关发生文件移动的设备的信息。
  • src:源文件的相关信息。
  • target:目标文件的相关信息。

GENERIC_EVENT

仅当事件不适合任何其他 UDM 事件类型类别时,才使用 GENERIC_EVENT。

必填字段:

  • metadata:包含必填字段(event_timestamp 和 event_type)。

可选字段:

  • metadata.product_event_type 和 metadata.description:包含供应商特定的事件名称和人类可读的说明。
  • principal、target、src、intermediary、observer 和 about:填充事件中涉及的所有实体。除了标准标量类型验证(例如有效的 IP 地址和不超过 255 字节的主机名)之外,GENERIC_EVENT 不会强制执行特定于实体的字段要求。
  • security_result:描述检测到的任何恶意或异常活动。
GENERIC_EVENT 的 UDM 示例

以下示例展示了如何为 Google SecOps UDM 设置 GENERIC_EVENT 事件的格式:

{
  "metadata": {
    "event_timestamp": "2025-03-10T15:00:00.000000Z",
    "event_type": "GENERIC_EVENT",
    "product_event_type": "CustomAuditEvent",
    "description": "Custom audit event recorded on host"
  },
  "principal": {
    "hostname": "workstation-01"
  }
}

如本示例所示,该事件分为以下 UDM 类别:

  • metadata:事件的背景信息和供应商专用说明。
  • principal:与事件关联的设备的相关信息。

GROUP_CREATION, GROUP_DELETION, GROUP_MODIFICATION, GROUP_UNCATEGORIZED

必填字段:

  • metadata:包含必填字段(event_timestamp 和 event_type)。
  • principal:在 principal.user 中至少添加一个用户标识符(userid、windows_sid、email_addresses 或 employee_id)。
  • target:在 target.group 中填充有关正在创建、删除或修改的群组的详细信息(如果正在向群组添加用户或从群组中移除用户,则填充 target.user)。target 字段不能为空。

可选字段:

  • principal:包含发起群组操作的设备的机器标识符。
  • target.group:添加群组标识符,例如 group_display_name、product_object_id、windows_sid 或 email_addresses。
  • security_result:描述检测到的任何恶意活动。
GROUP_MODIFICATION 的 UDM 示例

以下示例展示了如何为 Google SecOps UDM 设置 GROUP_MODIFICATION 事件的格式:

{
  "metadata": {
    "event_timestamp": "2025-03-10T16:10:00.000000Z",
    "event_type": "GROUP_MODIFICATION"
  },
  "principal": {
    "user": {
      "userid": "admin_user"
    }
  },
  "target": {
    "group": {
      "group_display_name": "Domain Admins",
      "windows_sid": "S-1-5-21-3623811015-3361044348-30300820-512"
    },
    "user": {
      "userid": "jdoe"
    }
  }
}

如本示例所示,该事件分为以下 UDM 类别:

  • metadata:事件的背景信息。
  • principal:修改群组的用户的信息。
  • target:有关修改后的群组和受影响用户的信息。

MUTEX_CREATION, MUTEX_UNCATEGORIZED

必填字段:

  • metadata:包括必填字段。
  • principal:
    • 至少一个机器标识符。
    • 使用有关创建互斥量的进程的信息填充 principal.process。UDM 验证要求主账号中包含进程对象。如果进程仅存在于目标中,则无法通过 UDM 验证。
  • target:
    • 填充 target.resource。
    • 使用 MUTEX 填充 target.resource.type。
    • 使用创建的互斥名称填充 target.resource.name。

可选字段:

  • security_result:描述检测到的恶意活动。
  • principal.user:在进程有可用的用户信息时填充。
MUTEX_CREATION 的 UDM 示例

以下示例说明了如何针对 Google SecOps UDM 设置 MUTEX_CREATION 类型的事件的格式:

metadata {
  event_timestamp: "2020-01-01T13:27:41+00:00"
  event_type: MUTEX_CREATION
  vendor_name: "Microsoft"
  product_name: "Windows"
}
principal {
  hostname: "test.altostrat.com"
  process {
    pid: "0xc45"
    file {
      full_path: "C:\\Windows\\regedit.exe"
    }
  }
}
target {
  resource {
    type: "MUTEX"
    name: "test-mutex"
  }
}

如本例所示,该事件分为以下 UDM 类别:

  • metadata:事件的相关背景信息。
  • principal:设备和进程详细信息。
  • target:有关互斥的信息。

NETWORK_CONNECTION、NETWORK_FLOW、NETWORK_FTP、NETWORK_SMTP

必填字段:

  • metadata:event_timestamp
  • principal:包含有关启动网络连接的机器的详细信息(例如来源)。
  • target:添加目标机器的详细信息(如果与主账号机器不同)。
  • network:捕获网络连接的详细信息(端口、协议等)。

可选字段:

  • principal.process 和 target.process:包括与网络连接的主账号和目标相关联的进程信息(如果可用)。
  • principal.user 和 target.user:包括与网络连接的主账号和目标相关联的用户信息(如果可用)。
  • network:捕获有关网络连接的详细信息,包括端口和协议。

NETWORK_DHCP

必填字段:

  • metadata:事件的背景信息。
  • principal:至少一个机器标识符(例如 principal.ip)。
  • network:必须将 network.application_protocol 指定为 DHCP。此外,还需要填充 network.dhcp.opcode(例如 BOOTREQUEST 或 BOOTREPLY)。
NETWORK_DHCP 的 UDM 示例

以下示例展示了如何针对 Google SecOps UDM 设置 NETWORK_DHCP 类型的事件的格式:

{
    "metadata": {
        "event_timestamp": "2023-07-04T18:52:22.142364Z",
        "event_type": "NETWORK_DHCP"
    },
    "principal": {
        "ip": [
            "1.2.3.4"
        ]
    },
    "network": {
        "application_protocol": "DHCP",
        "dhcp": {
            "opcode": "BOOTREPLY"
        }
    }
}

如本示例所示,该事件分为以下 UDM 类别:

  • metadata:事件的背景信息。
  • principal:有关请求或接收 DHCP 租约的设备的信息。
  • network:有关 DHCP 网络连接和操作代码的详细信息。

NETWORK_DNS

必填字段:

  • principal:至少一个机器标识符(例如 principal.ip)。
  • network:必须将 network.application_protocol 指定为 DNS。还需要 network.dns.questions.name。
  • metadata:事件的背景信息。
NETWORK_DNS 的 UDM 示例

以下示例说明了如何针对 Google SecOps UDM 设置 NETWORK_DNS 类型事件的格式:

{
    "metadata": {
        "event_timestamp": "2023-07-04T18:54:15.943301Z",
        "event_type": "NETWORK_DNS"
    },
    "principal": {
        "ip": [
            "1.2.3.4"
        ]
    },
    "network": {
        "application_protocol": "DNS",
        "dns": {
            "questions": {
                "name": "www.acme.com"
            }
        }
    }
}

如本示例所示,该事件分为以下 UDM 类别:

  • metadata:事件的背景信息。
  • principal:发出 DNS 请求的设备的相关信息。
  • network:有关 DNS 网络连接和所查询域名的详细信息。

NETWORK_HTTP

NETWORK_HTTP 事件类型表示从主账号到目标网络服务器的 HTTP 网络连接。

必填字段:

  • metadata:包括必填字段。
  • target:表示 Web 服务器。请提供设备信息和可选端口号。
    • 如果目标端口号可用,请仅指定一个 IP 地址以及与该网络连接关联的端口号(尽管可以为目标提供多个其他机器标识符)。
    • 对于 target.url,请填充访问的网址。

可选字段:

  • principal:表示发起 Web 请求的客户端。至少包含一个机器标识符(例如主机名、IP、MAC、专有资产标识符)或用户标识符(例如用户名)。
    • 如果描述了特定网络连接,并且客户端端口号可用,请仅指定一个 IP 地址以及与该网络连接关联的端口号(不过,也可以提供其他机器标识符,以便更好地描述参与者设备)。
    • 如果没有可用的源端口,您可以指定描述主体设备的任何和所有 IP 和 MAC 地址、资产标识符和主机名值。
  • network 和 network.http:包括 HTTP 网络连接的详细信息。您必须填充以下字段:
    • network.ip_protocol
    • network.application_protocol
    • network.http.method
  • about:表示在 HTTP 事务中找到的其他实体(例如,已上传或已下载文件)。
  • intermediary:表示代理服务器(如果与主账号或目标不同)。
  • metadata:填充其他元数据字段。
  • network:填充其他网络字段。
  • network.email:如果 HTTP 网络连接源自电子邮件中显示的网址,请使用详细信息填充 network.email。
  • observer:代表被动嗅探器(如果存在)。
  • security_result:向 security_result 字段添加一个或多个项,以表示检测到的恶意活动。
NETWORK_HTTP 的 UDM 示例

以下示例说明了如何将 NETWORK_HTTP 类型的 Sophos 杀毒软件事件转换为 Google SecOps UDM 格式。

以下是原始的 Sophos 防病毒软件:

date=2013-08-07 time=13:27:41 timezone="GMT" device_name="CC500ia" device_id= C070123456-ABCDE log_id=030906208001 log_type="Anti-Virus" log_component="HTTP" log_subtype="Virus" status="" priority=Critical fw_rule_id=0 user_name="john.smith" iap=7 av_policy_name="" virus="TR/ElderadoB.A.78" url="altostrat.fr/img/logo.gif" domainname="altostrat.fr" src_ip=10.10.2.10 src_port=60671 src_country_code= dst_ip=203.0.113.31 dst_port=80 dst_country_code=FRA

以下是您在 Proto3 中使用 Google SecOps UDM 语法设置相同信息格式的方法:

metadata {
  event_timestamp: "2013-08-07T13:27:41+00:00"
  event_type: NETWORK_HTTP
  product_name: "Sophos Antivirus"
  product_log_id: "030906208001"
}

principal {
  hostname: "CC500ia"
  asset_id: "Sophos.AV:C070123456-ABCDE"
  ip: "10.10.2.10"
  port: 60671
  user {  userid: "john.smith" }
}

target {
  hostname: "altostrat.fr"
  ip: "203.0.113.31"
  port: 80
  url: "altostrat.fr/img/logo.gif"
}

network {
  ip_protocol: TCP
 }

security_result {
  about {
    url: "altostrat.fr/img/logo.gif"
    category: SOFTWARE_MALICIOUS
    category_details: "Virus"
    threat_name: "TR/ElderadoB.A.78"
    severity: HIGH                   # Google Security Operations-normalized severity
    severity_details: "Critical"    # Vendor-specific severity string
  }
}

additional { "dst_country_code" : "FRA", "iap" : "7" "fw_rule_id" : "0" }

如本例所示,该事件分为以下 UDM 类别:

  • metadata:事件的相关背景信息。
  • principal:检测到事件的安全设备。
  • 目标设备:收到恶意软件的设备。
  • network:有关恶意主机的网络信息。
  • security_result:有关恶意软件的安全详细信息。
  • additional:UDM 范围之外的供应商信息。

PROCESS_INJECTION、PROCESS_LAUNCH、PROCESS_OPEN、PROCESS_TERMINATION、PROCESS_UNCATEGORIZED

必填字段:

  • metadata:包括必填字段。
  • principal:
    • 至少一个机器标识符。
    • 对于进程注入和进程终止事件,如果可用,principal.process 必须包含有关启动操作的进程的信息;比方说,对于进程启动事件,principal.process 必须包含有关父进程的详细信息(如果可用)。
  • target:
    • target.process:包括注入、打开、启动或终止的进程的相关信息。
    • 如果目标进程是远程进程,则目标必须包含至少一个机器的机器标识符(例如,IP 地址、MAC、主机名或第三方资产标识符)。

可选字段:

  • security_result:描述检测到的恶意活动。
  • principal.user 和 target.user:填充启动进程 (principal) 和目标进程(如果用户信息可用)。
PROCESS_LAUNCH 的 UDM 示例

以下示例展示了如何使用 Google SecOps UDM 语法设置 PROCESS_LAUNCH 事件的格式:

metadata {
  event_timestamp: "2020-01-01T13:27:41+00:00"
  event_type: PROCESS_LAUNCH
  vendor_name: "Microsoft"
  product_name: "Windows"
}
principal {
  hostname: "altostrat.com"
}
target {
  process {
    pid: "0xc45"
    file {
      full_path: "C:\\Windows\\regedit.exe"
    }
  }
}

如本例所示,该事件分为以下 UDM 类别:

  • metadata:事件的相关背景信息。
  • principal:设备详细信息。
  • target:进程详细信息。

PROCESS_MODULE_LOAD

必填字段:

  • metadata:包括必填字段。
  • principal:
    • 至少包含一个机器标识符(在 principal 或 target 中)。
    • principal.process:填充加载模块的进程的相关信息。
  • target:
    • target.process:填充已加载模块进程的相关信息,包括 target.process.file(例如 DLL 或共享对象)或 target.process.product_specific_process_id 中的至少一项。

可选字段:

  • security_result:描述检测到的恶意活动。
  • principal.user:在进程有可用的用户信息时填充。
PROCESS_MODULE_LOAD 的 UDM 示例

以下示例说明了如何使用 Google SecOps UDM 语法设置 PROCESS_MODULE_LOAD 事件的格式:

{
    "metadata": {
        "event_timestamp": "2023-07-03T20:40:29.854097Z",
        "event_type": "PROCESS_MODULE_LOAD"
    },
    "principal": {
        "hostname": "pinguino-01",
        "process": {
            "file": {
                "full_path": "foo.bar"
            }
        }
    },
    "target": {
        "process": {
            "file": {
                "full_path": "foo.bar"
            }
        }
    }
}

如本示例所示,该事件已划分为以下 UDM 类别:

  • metadata:事件的背景信息。
  • principal:有关设备和加载模块的进程的详细信息。
  • target:进程和模块详细信息。

PROCESS_PRIVILEGE_ESCALATION

必填字段:

  • metadata:包括必填字段。
  • principal:
    • 至少包含一个机器标识符(在 principal 或 target 中)。
    • principal.process:填充有关启动提权的进程的信息。
    • principal.user:填充发起提权的用户的信息,包括至少一个用户标识符。
  • target:填充有关提权目标的信息(例如,对于具有提权权限的进程,填充 target.process)。target 字段不能为空。

可选字段:

  • security_result:描述检测到的恶意活动。
PROCESS_PRIVILEGE_ESCALATION 的 UDM 示例

以下示例说明了如何针对 Google SecOps UDM 设置 PROCESS_PRIVILEGE_ESCALATION 类型的事件的格式:

{
    "metadata": {
        "event_timestamp": "2023-07-04T19:04:12.573338Z",
        "event_type": "PROCESS_PRIVILEGE_ESCALATION"
    },
    "principal": {
        "user": {
            "userid": "pinguino"
        },
        "hostname": "pinguino-01",
        "process": {
            "file": {
                "full_path": "foo.bar"
            }
        }
    },
    "target": {
        "process": {
            "file": {
                "full_path": "foo.bar"
            }
        }
    }
}

如本示例所示,该事件已划分为以下 UDM 类别:

  • metadata:事件的背景信息。
  • principal:有关设备、用户和发起提权的进程的详细信息。
  • target:有关升级流程的详细信息。

REGISTRY_CREATION、REGISTRY_MODIFICATION、REGISTRY_DELETION、REGISTRY_UNCATEGORIZED

必填字段:

  • metadata:包括必填字段。
  • principal:
    • 至少一个机器标识符。
    • 如果用户模式进程执行注册表修改,则 principal.process 必须包含修改注册表的进程相关信息。
    • 如果内核进程执行注册表修改,则 principal 不得包含进程信息。
  • target:
    • target.registry:如果目标注册表远程,则目标必须至少包含一个目标机器标识符(例如,IP 地址、MAC、主机名或第三方资产标识符)。
    • target.registry.registry_key:所有注册表事件都必须包含受影响的注册表项。

可选字段:

  • security_result:描述检测到的恶意活动。例如,注册表项错误。
  • principal.user:在进程有可用的用户信息时填充。
REGISTRY_MODIFICATION 的 UDM 示例

以下示例说明了如何使用 Google SecOps UDM 语法在 Proto3 中设置 REGISTRY_MODIFICATION 事件的格式:

metadata {
  event_timestamp: "2020-01-01T13:27:41+00:00"
  event_type: REGISTRY_MODIFICATION
  vendor_name: "Microsoft"
  product_name: "Windows"
}
principal {
  hostname: "test-win"
  user {
    userid: "test"
    windows_sid: "ABCDEFGH-123456789-1111111-1000"
  }
  process {
    pid: "0xc45"
    file {
      full_path: "C:\\Windows\\regedit.exe"
    }
  }
}
target {
  registry {
    registry_key: "\\REGISTRY\\USER\\TEST_USER\\Control Panel\\PowerCfg\\PowerPolicy"
    registry_value_name: "Description"
    registry_value_data: "For extending battery life."
  }
}

如本例所示,该事件分为以下 UDM 类别:

  • metadata:事件的相关背景信息。
  • principal:设备、用户和进程的详细信息。
  • target:受修改影响的注册表条目。

RESOURCE

事件类型:

  • RESOURCE_CREATION
  • RESOURCE_DELETION
  • RESOURCE_PERMISSIONS_CHANGE
  • RESOURCE_READ
  • RESOURCE_WRITTEN

最小 UDM 事件:

{
   "metadata": {
       "event_timestamp": "2023-07-04T20:19:53.394745Z",
       "event_type": "RESOURCE_CREATION"
   },
   "principal": {
       "user": {
           "userid": "pinguino"
       }
   },
   "target": {
       "resource": {
           "name": "foo.bar"
       }
   }
}

SCAN_FILE、SCAN_HOST、SCAN_PROCESS、SCAN_VULN_HOST、SCAN_VULN_NETWORK

对于 SCAN_FILE:

{
  "metadata": {
    "event_timestamp": "2023-07-06T06:57:08.443142Z",
    "event_type": "SCAN_FILE"
  },
  "principal": {
    "hostname": "pinguino-01"
  },
  "target": {
    "file": {
      "full_path": "foo.bar"
    }
  }
}

对于 SCAN_PROCESS:

{
  "metadata": {
    "event_timestamp": "2023-07-06T06:59:17.690425Z",
    "event_type": "SCAN_PROCESS"
  },
  "principal": {
    "hostname": "pinguino-01"
  },
  "target": {
    "process": {
      "file": {
        "full_path": "foo.bar"
      }
    }
  }
}

必填字段:

  • metadata:event_timestamp 和事件的背景信息。
  • observer:捕获扫描仪本身的相关信息。如果扫描仪是远程扫描仪,则机器详细信息必须由 observer 字段捕获。对于本地扫描仪,请留空。
  • target:捕获有关正在扫描的对象的机器的信息。如果正在扫描文件,target.file 必须捕获扫描的文件的相关信息。如果正在扫描进程,target.process 必须捕获有关扫描进程的信息。
  • extensions:对于 SCAN_VULN_HOST 和 SCAN_VULN_NETWORK,请使用 extensions.vuln 字段定义漏洞。

可选字段:

  • principal:表示发起连接的设备,至少包含一个机器标识符(例如主机名、IP 地址、MAC 地址、专有资产标识符)或用户标识符。
  • target:有关目标对象的用户详细信息(例如文件创建者或进程所有者),应在 target.user 中捕获。
  • security_result:描述检测到的恶意活动。
SCAN_HOST 的 UDM 示例

以下示例说明了如何针对 Google SecOps UDM 设置 SCAN_HOST 类型的事件的格式:

metadata: {
  event_timestamp: {
    seconds: 1571386978
  }
  event_type: SCAN_HOST
  vendor_name: "vendor"
  product_name: "product"
  product_version: "1.0"
}
target: {
  hostname: "testHost"
  asset_id: "asset"
  ip: "192.168.200.200"
}
observer: {
  hostname: "testObserver"
  ip: "192.168.100.100"
}
security_result: {
  severity: LOW
  confidence: HIGH_CONFIDENCE
}

如本例所示,该事件分为以下 UDM 类别:

  • metadata:事件的相关背景信息。
  • target:接收恶意软件的设备。
  • observer:观察和报告相关事件的设备。
  • security_result:有关恶意软件的安全详细信息。
SCAN_VULN_HOST 的 UDM 示例

以下示例说明了如何针对 Google SecOps UDM 设置 SCAN_VULN_HOST 类型的事件的格式:

metadata: {
  event_timestamp: "2025-05-09T12:59:52.45298Z",
  event_type: 18005,
  product_name: "TestProduct",
  vendor_name: "TestVendor"
  },
principal {
  asset_id: "TEST:Mwl8ABcd",
  ip: "127.0.0.3",
  hostname: "TEST-Localhost",
  mac: ["02:00:00:00:00:01"]
  },
extensions: {
  vulns: {
    vulnerabilities: [
      {
      cve_id: "CVE-6l9VxQmz",
      vendor_vulnerability_id: "TEST:7gmCmFWX",
      name: "CVE pA7DzwPU",
      severity: 2,
      vendor: "TestVendor",
      last_found: "2025-05-09T14:59:52.45300Z",
      first_found: "2025-05-09T13:59:52.45300Z"
       }
      ]
    }
  }

如本例所示,该事件分为以下 UDM 类别:

  • metadata:事件的相关背景信息。
  • principal:收到恶意软件的设备。
  • extensions:漏洞详情。

SCHEDULED_TASK_CREATION、SCHEDULED_TASK_DELETION、SCHEDULED_TASK_DISABLE、SCHEDULED_TASK_ENABLE、SCHEDULED_TASK_MODIFICATION、SCHEDULED_TASK_UNCATEGORIZED

必填字段:

  • principal:对于所有 SCHEDULED_TASK 事件,主账号必须包含机器标识符和用户标识符。
  • target:添加一个有效的 target.resource,并将 target.resource.resource_type 设置为 TASK。

可选字段:

  • security_result:描述检测到的恶意活动。
SCHEDULED_TASK_CREATION 的 UDM 示例

以下示例说明了如何针对 Google SecOps UDM 设置 SCHEDULED_TASK_CREATION 类型的事件的格式:

metadata: {
  event_timestamp: {
    seconds: 1577577998
  }
  event_type: SCHEDULED_TASK_CREATION
  vendor_name: "Microsoft"
  product_name: "Windows"
}
principal: {
  hostname: "fake-host.altostrat.com"
  user: {
    userid: "TestUser"
    windows_sid: "AB123CDE"
  }
  process {
    pid: "1234"
  }
}
target: {
  resource: {
    resource_type: TASK
    name: "\\Adobe Acrobat Update Task"
  }
}
intermediary: {
  hostname: "fake-intermediary.altostrat.com"
}
security_result: {
  rule_name: "EventID: 6789"
  summary: "A scheduled task was created."
  severity: INFORMATIONAL
}

如本例所示,该事件分为以下 UDM 类别:

  • metadata:事件的相关背景信息。
  • principal:安排可疑任务的设备。
  • target:成为可疑任务的目标的软件。
  • intermediary:涉及可疑任务的中介。
  • security_result:有关可疑任务的安全详细信息。

SETTING_UNCATEGORIZED, SETTING_CREATION, SETTING_MODIFICATION, SETTING_DELETION

必填字段:

  • principal:必须存在、不为空,并且包含机器标识符。

  • target:必须存在、不为空,并且包含 target.resource.resource_type 指定为 SETTING 的资源。

事件类型 SETTING_MODIFICATION 的 UDM 示例

以下示例说明了如何针对 Google SecOps UDM 设置 SETTING_MODIFICATION 类型的事件的格式:

{
    "metadata": {
        "event_timestamp": "2023-07-05T14:15:27.070909Z",
        "event_type": "SETTING_MODIFICATION"
    },
    "principal": {
        "hostname": "foo.bar"
    },
    "target": {
        "resource": {
            "resource_type": "SETTING",
            "name": "foo.bar"
        }
    }
}

如本示例所示,该事件已划分为以下 UDM 类别:

  • metadata:事件的背景信息。
  • principal:发生设置修改的设备的相关信息。
  • target:有关设置资源的详细信息。

SERVICE_UNSPECIFIED、SERVICE_CREATION、SERVICE_DELETION、SERVICE_MODIFICATION、SERVICE_START、SERVICE_STOP

必填字段:

  • metadata:包含必填字段(event_timestamp 和 event_type)。
  • principal:至少包含一个机器标识符(principal.hostname、principal.ip、principal.mac 或 principal.asset_id)。
  • target:至少指定 target.process 或 target.application 中的一项。

可选字段:

  • target.user:如果服务账号或目标用户有用户信息,则填充此字段。
  • target.resource:填充服务资源详细信息(例如 resource_type: SERVICE)。
SERVICE_UNSPECIFIED 的 UDM 示例

以下示例展示了如何针对 Google SecOps UDM 设置 SERVICE_UNSPECIFIED 类型的事件的格式:

metadata: {
 event_timestamp: {
   seconds: 1595656745
   nanos: 832000000
    }
 event_type: SERVICE_UNSPECIFIED
   vendor_name: "Preempt"
   product_name: "PREEMPT_AUTH"
   product_event_type: "SERVICE_ACCESS"
   description: "Remote Procedures (RPC)"
   }
 principal: {
   hostname: "XXX-YYY-ZZZ"
   ip: "10.10.10.10"
   }
 target: {
   hostname: "TestHost"
   user: {
      userid: "ORG\\User"
      user_display_name: "user name"
   }
 application: "application.name"
   resource: {
      resource_type: SERVICE
      name: "RPC"
   }
 }

如本例所示,该事件分为以下 UDM 类别:

  • metadata:事件的相关背景信息。
  • principal:设备和位置详细信息。
  • target:主机名和用户标识符。
  • application:应用名称和资源类型。

STATUS_HEARTBEAT、STATUS_STARTUP、STATUS_SHUTDOWN、STATUS_UNCATEGORIZED、STATUS_UPDATE

必填字段:

  • metadata:包括必填字段。
  • principal:至少一个机器标识符(IP 或 MAC 地址、主机名或资源标识符)。
STATUS_HEARTBEAT 的 UDM 示例

以下示例说明了如何针对 Google SecOps UDM 设置 STATUS_HEARTBEAT 类型的事件的格式:

metadata: {
  event_timestamp: {
    seconds: 1588180305
  }
  event_type: STATUS_HEARTBEAT
  vendor_name: "DMP"
  product_name: "ENTRE"
}
principal: {
  hostname: "testHost"
  location: {
    name: "Building 1"
  }
}
intermediary: {
  ip: "8.8.8.8"
}
security_result: {
  summary: "Event - Locked"
  description: "description"
  severity: LOW
  severity_details: "INFO"
}

如本例所示,该事件分为以下 UDM 类别:

  • metadata:事件的相关背景信息。
  • principal:设备和位置详细信息。
  • intermediary:设备 IP 地址。
  • security_result:安全结果详细信息。

SYSTEM_AUDIT_LOG_UNCATEGORIZED、SYSTEM_AUDIT_LOG_WIPE

必填字段:

  • principal:包含对日志执行操作的用户的用户标识符,以及存储日志的机器标识符(如果是擦除的数据)。
SYSTEM_AUDIT_LOG_WIPE 的 UDM 示例

以下示例说明了如何针对 Google SecOps UDM 设置 SYSTEM_AUDIT_LOG_WIPE 类型的事件的格式:

metadata {
  event_timestamp: "2020-01-01T13:27:41+00:00"
  event_type: SYSTEM_AUDIT_LOG_WIPE
  vendor_name: "Microsoft"
  product_name: "Windows"
}
principal {
  hostname: "altostrat.com"
  user {
    userid: "test"
    windows_sid: "ABCDEFGH-123456789-1111111-1000"
  }
}

如本例所示,该事件分为以下 UDM 类别:

  • metadata:事件的相关背景信息。
  • principal:设备和用户的详细信息。

USER_BADGE_IN

必填字段:

  • metadata:包括必填字段。
  • target:必须至少包含一个机器标识符(例如 target.hostname)。
  • extensions:必须在 extensions.auth.type 中提供身份验证机制。
USER_BADGE_IN 的 UDM 示例

以下示例展示了如何为 Google SecOps UDM 设置 USER_BADGE_IN 类型的事件的格式:

{
    "metadata": {
        "event_timestamp": "2023-07-05T20:31:18.303584Z",
        "event_type": "USER_BADGE_IN"
    },
    "target": {
        "hostname": "jamon-01"
    },
    "extensions": {
        "auth": {
            "type": "MACHINE"
        }
    }
}

如本示例所示,该事件分为以下 UDM 类别:

  • metadata:事件的背景信息。
  • target:有关发生刷卡进入事件的设备或位置的信息。
  • extensions:有关所用身份验证机制的详细信息。

USER_CHANGE_PASSWORD, USER_CHANGE_PERMISSIONS

必填字段:

  • metadata:包括必填字段。
  • target:不得为空。使用已修改的用户账号 (target.user) 或发生更改的目标机器、应用或资源的相关信息填充 target。
  • target.user 或 principal.user:使用用户标识符(userid、windows_sid、email_addresses 或 employee_id)填充 target.user(被修改的用户账号)或 principal.user(发起更改的用户)中的至少一个。

可选字段:

  • principal:如果您在 target.user 中提供了用户标识符,则 principal.user 是可选的。如果用户账号是从远程位置修改的,请在 principal 中填充发起修改的机器的相关信息。
  • intermediary:对于单点登录,intermediary 必须至少包含单点登录服务器的机器标识符(如果有)。

USER_COMMUNICATION

必填字段:

  • principal:使用用户发起的(发件人)通信(例如 Google Chat 或 Slack 中的聊天消息)填充 principal.user 字段、Zoom 或 Google Meet 中的视频会议或 VoIP 连接。

可选字段:

  • target:(推荐)使用云通信资源的目标用户(接收器)信息填充 target.user 字段。使用目标云端通信应用的信息填充 target.application 字段。

USER_CREATION、USER_DELETION

必填字段:

  • metadata:包含 event_timestamp 和 event_type。
  • principal:在 principal.user(userid、windows_sid、email_addresses 或 employee_id,最多 256 个字符)中为发起创建或删除操作的账号添加至少一个有效的用户标识符。如果未设置 target.application,则 principal 还必须包含至少一个机器标识符(hostname、ip、mac 或 asset_id)。
  • target:在 target.user 中为要创建或删除的用户账号添加至少一个有效的用户标识符(最多 256 个字符)。如果 principal 不包含机器标识符,请填充 target.application。

可选字段:

  • principal.process:发起用户创建或删除请求的机器的进程详细信息。
  • target:有关目标机器的信息(如果与主机器不同)。

USER_LOGIN, USER_LOGOUT

必填字段:

  • metadata:包括必填字段。
  • principal:对于远程用户活动(例如远程登录),请使用发起用户活动的机器的相关信息填充 principal。对于本地用户活动(例如本地登录),请勿设置 principal。
  • target:使用已登录或已退出的用户的信息填充 target.user。如果未设置 principal(例如本地登录),则 target 还必须至少包含一个标识目标机器的机器标识符。对于机器到机器的用户活动(例如远程登录、SSO、云服务、VPN),目标必须包含目标应用、目标机器或目标 VPN 服务器的相关信息。
  • intermediary:对于单点登录,中介必须包含 SSO 服务器的至少一个机器标识符(如果有)。
  • network 和 network.http:如果通过 HTTP 登录,您必须将所有可用的详细信息放入 network.ip_protocol、network.application_protocol 和 network.http 中。
  • authentication 扩展程序:必须确定与事件相关的身份验证系统类型(例如机器、SSO 或 VPN)以及采用的机制(用户名和密码、OTP 等)。
  • security_result:添加 security_result 字段,以在登录失败时表示登录状态。如果身份验证失败,请使用 AUTH_VIOLATION 值指定 security_result.category。
USER_LOGIN 的 UDM 示例

以下示例展示了如何为 Google SecOps UDM 设置 USER_LOGIN 类型的事件的格式:

{
    "metadata": {
        "event_timestamp": "2023-07-05T20:48:50.657334Z",
        "event_type": "USER_LOGIN"
    },
    "target": {
        "user": {
            "userid": "jamon"
        }
    },
    "extensions": {
        "auth": {
            "type": "MACHINE"
        }
    }
}

如本示例所示,该事件分为以下 UDM 类别:

  • metadata:事件的背景信息。
  • target:登录用户的信息。
  • extensions:有关所用身份验证机制的详细信息。

USER_RESOURCE_ACCESS

必填字段:

  • principal:使用有关尝试访问云资源(例如,Salesforce 案例、Office365 日历、Google 文档或 ServiceNow 服务工单)的详细信息填充 principal.user 字段。
  • target:使用目标云资源的相关信息填充 target.resource 字段。

可选字段:

  • target.application:(推荐)使用目标云应用的相关信息填充 target.application 字段。

USER_RESOURCE_CREATION、USER_RESOURCE_DELETION

必填字段:

  • principal:使用与在云资源(例如,Salesforce 案例、Office 365 日历、Google 文档或 ServiceNow 服务工单)中创建的用户关联的详细信息填充 principal.user 字段。
  • target:使用目标云资源的相关信息填充 target.resource 字段。

可选字段:

  • target.application:(推荐)使用目标云应用的相关信息填充 target.application 字段。

USER_RESOURCE_UPDATE_CONTENT

必填字段:

  • principal:使用与在云资源(例如,Salesforce 案例、Office365 日历、Google 文档或 ServiceNow 服务工单)中更新内容的用户相关联的详细信息填充 principal.user 字段。
  • target:使用目标云资源的相关信息填充 target.resource 字段。

可选字段:

  • target.application:(推荐)使用目标云应用的相关信息填充 target.application 字段。

USER_RESOURCE_UPDATE_PERMISSIONS

必填字段:

  • principal:使用与在云资源(例如,Salesforce 案例、Office 365 日历、Google 文档或 ServiceNow 服务工单)中更新权限的用户相关联的详细信息填充 principal.user 字段。
  • target:使用目标云资源的相关信息填充 target.resource 字段。

可选字段:

  • target.application:(推荐)使用目标云应用的相关信息填充 target.application 字段。

USER_UNCATEGORIZED

必填字段:

  • metadata:包含 event_timestamp 和 event_type。
  • principal 或 target:
    • 如果未填充 target,则 principal 必须在 principal.user 中包含至少一个有效的用户标识符(userid、windows_sid、email_addresses 或 employee_id,最多 256 个字符)或至少一个机器标识符(hostname、ip、mac 或 asset_id)。
    • 如果填充了 target,则必须至少填充以下一项:target.user 中的用户标识符、target 中的机器标识符或 principal.user 中的有效用户标识符。

可选字段:

  • principal.process:与用户活动关联的进程详细信息。
  • security_result:描述检测到的任何恶意或异常活动。