收集 Tanium Stream 日志
支持范围:
Google SecOps
SIEM
本文档介绍了如何使用 Tanium Connect 的原生 AWS S3 导出功能将 Tanium Stream 日志注入到 Google Security Operations。Tanium Stream 以 JSON 格式提供实时端点遥测、威胁搜寻数据和行为分析,这些数据可以使用 Tanium Connect 直接导出到 S3,而无需自定义 Lambda 函数。该解析器会将来自 Tanium Stream 的原始 JSON 日志转换为统一数据模型 (UDM)。它首先对常见字段进行标准化,然后根据“logType”或“eventType”应用特定逻辑,将相关信息映射到适当的 UDM 字段,从而处理各种事件类型,例如网络连接、用户登录、进程启动和文件修改。
准备工作
请确保满足以下前提条件:
- Google SecOps 实例
- Tanium Core Platform 7.0 或更高版本
- 已安装并配置 Tanium Stream 模块
- 已安装 Tanium Connect 模块,且具有有效许可
- Tanium Threat Response 3.4.346 或更高版本(如果使用 TR 集成)
- 对 Tanium 控制台的特权访问权限(具有管理权限)
- 对 AWS(S3、IAM)的特权访问权限
配置 Tanium Stream 服务账号
- 登录 Tanium 控制台。
- 依次前往模块 > Stream。
- 点击右上角的设置。
- 在服务账号部分中,配置以下内容:
- 服务账号用户:选择具有适当 Stream 权限的用户。
- 验证该账号是否具有 Connect User 角色权限。
- 确认对 Stream 数据源和端点的访问权限。
- 点击保存以应用服务账号配置。
收集 Tanium Stream 前提条件
- 以管理员身份登录 Tanium 控制台。
- 依次前往管理 > 权限 > 用户。
- 创建或确定具有以下角色的服务账号用户:
- Stream Administrator 或 Stream Read Only User 角色。
- 连接用户角色权限。
- 对受监控计算机群组(建议:所有计算机群组)的访问权限。
- 针对 Stream 内容集的读取已保存的问题权限。
为 Google SecOps 配置 AWS S3 存储桶和 IAM
- 按照以下用户指南创建 Amazon S3 存储桶:创建存储桶
- 保存存储桶名称和区域(例如
tanium-stream-logs),以供日后参考。 - 按照以下用户指南创建用户:创建 IAM 用户。
- 选择创建的用户。
- 选择安全凭证标签页。
- 点击访问密钥部分中的创建访问密钥。
- 选择第三方服务作为用例。
- 点击下一步。
- 可选:添加说明标记。
- 点击创建访问密钥。
- 点击下载 CSV 文件,保存访问密钥和私有访问密钥,以供日后使用。
- 点击完成。
- 选择权限标签页。
- 点击权限政策部分中的添加权限。
- 选择添加权限。
- 选择直接附加政策
- 搜索并选择 AmazonS3FullAccess 政策。
- 点击下一步。
- 点击添加权限。
配置 Tanium Connect AWS S3 目标
- 登录 Tanium 控制台。
- 依次前往模块 > 连接。
- 点击 Create Connection。
- 提供以下配置详细信息:
- 名称:输入一个描述性名称(例如
Stream Telemetry to S3 for SecOps)。 - 说明:可选说明(例如
Export endpoint telemetry and threat hunting data to AWS S3 for Google SecOps ingestion)。 - 启用:选择此选项可启用连接,使其按时间表运行。
- 名称:输入一个描述性名称(例如
- 点击下一步。
配置连接来源
- 在来源部分,提供以下配置详细信息:
- Source Type(来源类型):选择 Saved Question(已保存的问题)。
- 已保存的问题:选择以下与 Stream 相关的一个已保存问题:
- Stream - Endpoint Events,用于实时端点遥测。
- Stream - Network Events,用于监控网络活动。
- Stream - Process Events,用于跟踪进程执行情况。
- Stream - File Events,用于文件系统活动。
- Stream - Threat Hunting Data,用于行为分析。
- 计算机群组:选择所有计算机或要监控的特定计算机群组。
- 刷新间隔:设置适当的数据收集间隔(例如,实时遥测设置为 5 分钟)。
- 点击下一步。
配置 AWS S3 目标
- 在目标部分,提供以下配置详细信息:
- 目标类型:选择 AWS S3。
- 目标名称:输入一个唯一名称(例如
Google SecOps Stream S3 Destination)。 - AWS 访问密钥:输入在 AWS S3 配置步骤中下载的 CSV 文件中的 AWS 访问密钥。
- AWS 私有访问密钥:输入在 AWS S3 配置步骤中下载的 CSV 文件中的 AWS 私有访问密钥。
- 存储桶名称:输入您的 S3 存储桶名称(例如
tanium-stream-logs)。 - 区域:选择 S3 存储桶所在的 AWS 区域。
- Key Prefix(键前缀):输入 S3 对象的前缀(例如
tanium/stream/)。
- 点击下一步。
配置过滤器
- 在过滤条件部分,配置数据过滤选项:
- 仅发送新内容:选择此选项,系统将仅发送自上次导出以来新增的遥测数据。
- 列过滤条件:根据需要,基于特定事件属性添加过滤条件(例如,按事件类型、进程名称或威胁指标进行过滤)。
- 点击下一步。
为 AWS S3 格式化数据
- 在格式部分,配置数据格式:
- 格式:选择 JSON。
- 选项:
- 包含标题:取消选择此选项可避免在 JSON 输出中包含标题。
- 包含空单元格:根据您的偏好进行选择。
- 高级选项:
- 文件命名:使用默认的基于时间戳的命名。
- 压缩:选择 Gzip 可降低存储费用并缩短传输时间。
- 点击下一步。
安排连接
- 在时间表部分,配置导出时间表:
- 启用时间表:选择此选项可启用自动定期导出。
- 时间表类型:选择周期性。
- 频率:选择每 5 分钟,以获取近乎实时的遥测数据。
- 开始时间:为首次导出设置适当的开始时间。
- 点击下一步。
保存并验证连接
- 在摘要屏幕中查看连接配置。
- 点击保存以创建连接。
- 点击测试连接以验证配置。
- 如果测试成功,请点击立即运行以执行初始导出。
- 在连接概览页面中监控连接状态。
在 Google SecOps 中配置 Feed 以注入 Tanium Stream 日志
- 依次前往设置 > 数据管理 > Feed。如果您使用的是仅 SIEM 平台,请依次前往设置 > Feed。
- 点击 + 添加新 Feed。
- 在 Feed 名称字段中,输入 Feed 的名称(例如
Tanium Stream logs)。 - 选择 Amazon S3 V2 作为来源类型。
- 选择 Tanium Stream 作为日志类型。
- 点击下一步。
- 为以下输入参数指定值:
- S3 URI:
s3://tanium-stream-logs/tanium/stream/ - 来源删除选项:根据您的偏好选择删除选项。
- 文件存在时间上限:包含过去指定天数内修改过的文件。默认值为 180 天。
- 访问密钥 ID:有权访问 S3 存储桶的用户访问密钥。
- Secret Access Key:有权访问 S3 存储桶的用户 Secret。
- 资产命名空间:资产命名空间。
- 注入标签:应用于此 Feed 中事件的标签。
- S3 URI:
- 点击下一步。
- 在最终确定界面中查看新的新闻信息流配置,然后点击提交。
UDM 映射表
| 日志字段 | UDM 映射 | 逻辑 |
|---|---|---|
| additional.event__AlgorithmName | additional.fields.key: eventAlgorithmName additional.fields.value.string_value: %{additional.eventAlgorithmName} |
直接取自原始日志字段 additional.event__AlgorithmName 的值。 |
| additional.event__AuthenticationPackageName | target.resource.name: %{additional.event__AuthenticationPackageName} | 直接取自原始日志字段 additional.event__AuthenticationPackageName 的值。 |
| additional.event__CallerProcessId | principal.process.pid: %{additional.event__CallerProcessId} | 直接取自原始日志字段 additional.event__CallerProcessId 的值。 |
| additional.event__CallerProcessName | principal.process.file.fullpath: %{additional.event_CallerProcessName} | 直接取自原始日志字段 additional.event__CallerProcessName 的值。 |
| additional.event__ClientProcessId | principal.process.pid: %{additional.event__ClientProcessId} | 直接取自原始日志字段 additional.event__ClientProcessId 的值。 |
| additional.event__ClientProcessStartKey | additional.fields.key: eventClientProcessStartKey additional.fields.value.string_value: %{additional.eventClientProcessStartKey} |
直接取自原始日志字段 additional.event__ClientProcessStartKey 的值。 |
| additional.event__CommandLine | target.process.commandline: %{additional.event_CommandLine} | 直接取自原始日志字段 additional.event__CommandLine 的值。 |
| additional.event__ElevatedToken | additional.fields.key: event__ElevatedToken additional.fields.value.string_value: Yes/No |
直接取自原始日志字段 additional.event__ElevatedToken 的值。如果值为“%%1842”,则替换为“是”。 如果值为“%%1843”,则替换为“否”。 |
| additional.event__FQDN | principal.hostname: %{additional.event__FQDN} | 直接取自原始日志字段 additional.event__FQDN 的值。 |
| additional.event__FailureReason | additional.fields.key: eventFailureReason additional.fields.value.string_value: %{additional.eventFailureReason} |
直接取自原始日志字段 additional.event__FailureReason 的值。 |
| additional.event__ImpersonationLevel | additional.fields.key: eventImpersonationLevel additional.fields.value.string_value: %{additional.eventImpersonationLevel} |
直接取自原始日志字段 additional.event__ImpersonationLevel 的值。 |
| additional.event__IpAddress | target.ip: %{additional.event__IpAddress} | 直接取自原始日志字段 additional.event__IpAddress 的值。 |
| additional.event__IpPort | target.port: %{additional.event__IpPort} | 直接从原始日志字段 additional.event__IpPort 获取并转换为整数的值。 |
| additional.event__KeyLength | additional.fields.key: eventKeyLength additional.fields.value.string_value: %{additional.eventKeyLength} |
直接取自原始日志字段 additional.event__KeyLength 的值。 |
| additional.event__KeyName | additional.fields.key: eventKeyName additional.fields.value.string_value: %{additional.eventKeyName} |
直接取自原始日志字段 additional.event__KeyName 的值。 |
| additional.event__KeyType | additional.fields.key: eventKeyType additional.fields.value.string_value: %{additional.eventKeyType} |
直接取自原始日志字段 additional.event__KeyType 的值。 |
| additional.event__LmPackageName | additional.fields.key: eventLmPackageName additional.fields.value.string_value: %{additional.eventLmPackageName} |
直接取自原始日志字段 additional.event__LmPackageName 的值。 |
| additional.event__LogonGuid | target.resource.product_objectid: %{additional.event_LogonGuid} | 直接从原始日志字段 additional.event__LogonGuid 中获取的值,并移除了大括号。 |
| additional.event__LogonProcessName | target.process.file.fullpath: %{additional.event_LogonProcessName} | 直接取自原始日志字段 additional.event__LogonProcessName 的值。 |
| additional.event__LogonType | extensions.auth.authdetails: Logon Type: %{additional.event_LogonType} | 直接取自原始日志字段 additional.event__LogonType 的值。 |
| additional.event__MandatoryLabel | additional.fields.key: eventMandatoryLabel additional.fields.value.string_value: %{additional.eventMandatoryLabel} |
直接取自原始日志字段 additional.event__MandatoryLabel 的值。 |
| additional.event__NewProcessId | target.process.pid: %{additional.event__NewProcessId} | 直接取自原始日志字段 additional.event__NewProcessId 的值。 |
| additional.event__NewProcessName | target.process.file.fullpath: %{additional.event_NewProcessName} | 直接取自原始日志字段 additional.event__NewProcessName 的值。 |
| additional.event__ObjectServer | security_result.categorydetails: %{additional.event_ObjectServer} | 直接取自原始日志字段 additional.event__ObjectServer 的值。 |
| additional.event__Operation | additional.fields.key: eventOperation additional.fields.value.string_value: %{additional.eventOperation} |
直接取自原始日志字段 additional.event__Operation 的值。 |
| additional.event__ParentProcessId | principal.process.parentprocess.pid: %{additional.event_ParentProcessId} | 直接取自原始日志字段 additional.event__ParentProcessId 的值。 |
| additional.event__ParentProcessName | principal.process.parent_process.file.fullpath: %{additional.event_ParentProcessName} | 直接取自原始日志字段 additional.event__ParentProcessName 的值。 |
| additional.event__ProcessId | principal.process.pid: %{additional.event__ProcessId} | 直接取自原始日志字段 additional.event__ProcessId 的值。 |
| additional.event__ProcessName | principal.process.file.fullpath: %{additional.event_ProcessName} | 直接取自原始日志字段 additional.event__ProcessName 的值。 |
| additional.event__PrivilegeList | principal.user.attribute.permissions.name: %{additional.event__PrivilegeList} | 直接取自原始日志字段 additional.event__PrivilegeList 的值。 |
| additional.event__ProviderName | additional.fields.key: eventProviderName additional.fields.value.string_value: %{additional.eventProviderName} |
直接取自原始日志字段 additional.event__ProviderName 的值。 |
| additional.event__RestrictedAdminMode | additional.fields.key: eventRestrictedAdminMode additional.fields.value.string_value: %{additional.eventRestrictedAdminMode} |
直接取自原始日志字段 additional.event__RestrictedAdminMode 的值。 |
| additional.event__ReturnCode | additional.fields.key: eventReturnCode additional.fields.value.string_value: %{additional.eventReturnCode} |
直接取自原始日志字段 additional.event__ReturnCode 的值。 |
| additional.event__RpcCallClientLocality | additional.fields.key: eventRpcCallClientLocality additional.fields.value.string_value: %{additional.eventRpcCallClientLocality} |
直接取自原始日志字段 additional.event__RpcCallClientLocality 的值。 |
| additional.event__Service | securityresult.description: %{additional.event_Service} | 直接取自原始日志字段 additional.event__Service 的值。 |
| additional.event__Status | additional.fields.key: eventStatus additional.fields.value.string_value: %{additional.eventStatus} |
直接取自原始日志字段 additional.event__Status 的值。 |
| additional.event__SubStatus | additional.fields.key: eventSubStatus additional.fields.value.string_value: %{additional.eventSubStatus} |
直接取自原始日志字段 additional.event__SubStatus 的值。 |
| additional.event__SubjectDomainName | principal.administrativedomain: %{additional.event_SubjectDomainName} | 直接取自原始日志字段 additional.event__SubjectDomainName 的值。 |
| additional.event__SubjectLogonId | additional.fields.key: eventSubjectLogonId additional.fields.value.string_value: %{additional.eventSubjectLogonId} |
直接取自原始日志字段 additional.event__SubjectLogonId 的值。 |
| additional.event__SubjectUserName | principal.user.user_displayname: %{additional.event_SubjectUserName} | 直接取自原始日志字段 additional.event__SubjectUserName 的值。 |
| additional.event__SubjectUserSid | principal.user.windowssid: %{additional.event_SubjectUserSid} | 直接取自原始日志字段 additional.event__SubjectUserSid 的值。 |
| additional.event__TaskContentNew | additional.fields.key: eventTaskContentNew additional.fields.value.string_value: %{additional.eventTaskContentNew} |
直接取自原始日志字段 additional.event__TaskContentNew 的值。 |
| additional.event__TaskName | additional.fields.key: eventTaskName additional.fields.value.string_value: %{additional.eventTaskName} |
直接取自原始日志字段 additional.event__TaskName 的值。 |
| additional.event__TargetDomainName | target.administrativedomain: %{additional.event_TargetDomainName} | 直接取自原始日志字段 additional.event__TargetDomainName 的值。 |
| additional.event__TargetLinkedLogonId | additional.fields.key: eventTargetLinkedLogonId additional.fields.value.string_value: %{additional.eventTargetLinkedLogonId} |
直接取自原始日志字段 additional.event__TargetLinkedLogonId 的值。 |
| additional.event__TargetLogonId | additional.fields.key: eventTargetLogonId additional.fields.value.string_value: %{additional.eventTargetLogonId} |
直接取自原始日志字段 additional.event__TargetLogonId 的值。 |
| additional.event__TargetOutboundDomainName | additional.fields.key: eventTargetOutboundDomainName additional.fields.value.string_value: %{additional.eventTargetOutboundDomainName} |
直接取自原始日志字段 additional.event__TargetOutboundDomainName 的值。 |
| additional.event__TargetOutboundUserName | additional.fields.key: eventTargetOutboundUserName additional.fields.value.string_value: %{additional.eventTargetOutboundUserName} |
直接取自原始日志字段 additional.event__TargetOutboundUserName 的值。 |
| additional.event__TargetSid | target.user.windowssid: %{additional.event_TargetSid} | 直接取自原始日志字段 additional.event__TargetSid 的值。 |
| additional.event__TargetUserName | target.user.userid: %{additional.event__TargetUserName} | 直接取自原始日志字段 additional.event__TargetUserName 的值。 |
| additional.event__TargetUserSid | target.user.windowssid: %{additional.event_TargetUserSid} | 直接取自原始日志字段 additional.event__TargetUserSid 的值。 |
| additional.event__TokenElevationType | additional.fields.key: eventTokenElevationType additional.fields.value.string_value: %{additional.eventTokenElevationType} |
直接取自原始日志字段 additional.event__TokenElevationType 的值。 |
| additional.event__TransmittedServices | additional.fields.key: eventTransmittedServices additional.fields.value.string_value: %{additional.eventTransmittedServices} |
直接取自原始日志字段 additional.event__TransmittedServices 的值。 |
| additional.event__VirtualAccount | additional.fields.key: eventVirtualAccount additional.fields.value.string_value: %{additional.eventVirtualAccount} |
直接取自原始日志字段 additional.event__VirtualAccount 的值。 |
| additional.event__WorkstationName | target.hostname: %{additional.event__WorkstationName} | 直接取自原始日志字段 additional.event__WorkstationName 的值。 |
| additional.event_id | security_result.rule_name: EventID: %{additional.event_id} | 直接从原始日志字段 additional.event_id 获取并转换为字符串的值。 |
| additional.query | network.dns.questions.name: %{additional.query} | 直接取自原始日志字段 additional.query 的值。 |
| additional.response | network.dns.answers.name: %{additional.response} | 直接取自原始日志字段 additional.response 的值。 |
| metadata.description | metadata.description: %{metadata.description} | 直接取自原始日志字段 metadata.description 的值。 |
| metadata.eventTimestamp | metadata.event_timestamp.seconds: Extracted from %{metadata.eventTimestamp} metadata.event_timestamp.nanos: Extracted from %{metadata.eventTimestamp} |
使用日期解析从原始日志字段 metadata.eventTimestamp 中提取秒和纳秒。 |
| metadata.eventType | metadata.product_event_type: %{metadata.eventType} metadata.event_type: %{metadata.eventType} |
直接取自原始日志字段 metadata.eventType 的值。 |
| metadata.logType | metadata.product_event_type: %{metadata.logType} metadata.event_type: %{metadata.logType} |
直接取自原始日志字段 metadata.logType 的值。 |
| network.applicationProtocol | network.application_protocol: %{network.applicationProtocol} | 直接取自原始日志字段 network.applicationProtocol 的值。 |
| network.direction | network.direction: %{network.direction} | 直接取自原始日志字段 network.direction 的值。 |
| network.ipProtocol | network.ip_protocol: %{network.ipProtocol} | 直接取自原始日志字段 network.ipProtocol 的值。 |
| principal.assetId | principal.asset_id: TANIUM:%{principal.assetId} | 值直接取自原始日志字段 principal.assetId,并带有“TANIUM:”前缀。 |
| principal.hostname | principal.hostname: %{principal.hostname} | 直接取自原始日志字段 principal.hostname 的值。 |
| principal.process.companySpecificParentProcessId | principal.process.product_specific_process_id: TANIUM:%{principal.assetId}:%{principal.process.companySpecificParentProcessId} | 直接从原始日志字段 principal.process.companySpecificParentProcessId 中获取的值,格式为“TANIUM:%{principal.assetId}:%{principal.process.companySpecificParentProcessId}”。 |
| principal.process.companySpecificProcessId | principal.process.product_specific_process_id: TANIUM:%{principal.assetId}:%{principal.process.companySpecificProcessId} | 值直接取自原始日志字段 principal.process.companySpecificProcessId,格式为“TANIUM:%{principal.assetId}:%{principal.process.companySpecificProcessId}”。 |
| principal.process.commandLine | target.process.command_line: %{principal.process.commandLine} | 直接取自原始日志字段 principal.process.commandLine 的值,其中双引号已移除,连字符已替换为和号。 |
| principal.process.file.fullPath | target.process.file.full_path: %{principal.process.file.fullPath} | 直接取自原始日志字段 principal.process.file.fullPath 的值。 |
| principal.process.file.md5 | target.process.file.md5: %{principal.process.file.md5} | 直接从原始日志字段 principal.process.file.md5 获取并转换为小写的值。 |
| principal.process.parentPid | principal.process.pid: %{principal.process.parentPid} | 直接从原始日志字段 principal.process.parentPid 中获取的值,仅适用于 PROCESS_LAUNCH 事件。 |
| principal.process.pid | target.process.pid: %{principal.process.pid} | 直接从原始日志字段 principal.process.pid 中获取的值,仅适用于 PROCESS_LAUNCH 事件。 |
| principal.process.productSpecificProcessId | principal.process.product_specific_process_id: TANIUM:%{principal.assetId}:%{principal.process.productSpecificProcessId} | 直接从原始日志字段 principal.process.productSpecificProcessId 中获取的值,格式为“TANIUM:%{principal.assetId}:%{principal.process.productSpecificProcessId}”。 |
| principal.user.groupid | principal.user.group_identifiers: %{principal.user.groupid} | 直接取自原始日志字段 principal.user.groupid 的值。 |
| principal.user.userid | principal.user.userid: %{principal.user.userid} | 直接取自原始日志字段 principal.user.userid 的值。 |
| src.ip | principal.ip: %{src.ip} | 直接取自原始日志字段 src.ip 的值。 |
| src.port | principal.port: %{src.port} | 直接从原始日志字段 src.port 获取并转换为整数的值。 |
| target.file.fullPath | target.file.full_path: %{target.file.fullPath} | 直接取自原始日志字段 target.file.fullPath 的值。 |
| target.file.md5 | target.file.md5: %{target.file.md5} | 直接取自原始日志字段 target.file.md5 的值。 |
| target.port | target.port: %{target.port} | 直接从原始日志字段 target.port 获取并转换为整数的值。 |
| target.registry.registryKey | target.registry.registry_key: %{target.registry.registryKey} | 直接取自原始日志字段 target.registry.registryKey 的值。 |
| target.registry.registryValue | target.registry.registry_value_data: %{target.registry.registryValue} | 直接取自原始日志字段 target.registry.registryValue 的值。 |
| target.user.userDisplayName | target.user.user_display_name: %{target.user.userDisplayName} | 直接取自原始日志字段 target.user.userDisplayName 的值。 |
| target.user.windowsSid | target.user.windows_sid: %{target.user.windowsSid} | 直接取自原始日志字段 target.user.windowsSid 的值。 |
| user-agent | network.http.user_agent: %{user-agent} | 直接从原始日志字段 user-agent 中获取的值,已移除双引号。 |
| 不适用 | extensions.auth.auth_mechanism: LOCAL/NETWORK/BATCH/SERVICE/UNLOCK/NETWORK_CLEAR_TEXT/NEW_CREDENTIALS/REMOTE_INTERACTIVE/CACHED_INTERACTIVE/MECHANISM_UNSPECIFIED | 由解析器代码根据 additional.event__LogonType 的值确定。 |
| 不适用 | extensions.auth.type: MACHINE | 由 USER_LOGIN 和 USER_LOGOUT 事件的解析器代码添加。 |
| 不适用 | metadata.event_type:PROCESS_LAUNCH/NETWORK_CONNECTION/FILE_OPEN/FILE_DELETION/REGISTRY_MODIFICATION/USER_LOGIN/STATUS_UPDATE/USER_LOGOUT/PROCESS_MODULE_LOAD/PROCESS_TERMINATION/USER_CHANGE_PERMISSIONS/SCHEDULED_TASK_MODIFICATION/SCHEDULED_TASK_DISABLE/SCHEDULED_TASK_ENABLE/SCHEDULED_TASK_DELETION/SCHEDULED_TASK_CREATION/PROCESS_UNCATEGORIZED | 由解析器代码根据 metadata.logType 和 additional.event_id 的值确定。 |
| 不适用 | metadata.log_type: TANIUM_TH | 由解析器代码添加的硬编码值。 |
| 不适用 | metadata.product_name: Stream | 由解析器代码添加的硬编码值。 |
| 不适用 | metadata.vendor_name: Tanium | 由解析器代码添加的硬编码值。 |
| 不适用 | principal.hostname: %{principal_hostname} | 从 principal.hostname 或 additional.event__FQDN 获取的值。 |
| 不适用 | principal.ip: %{srcIp} | 如果存在 src.ip,则使用 grok 从原始日志消息中提取。 |
| 不适用 | securityresult.about.resource.name: %{additional.event_AuthenticationPackageName} | 对于特定 additional.event_id 值,直接从原始日志字段 additional.event__AuthenticationPackageName 中获取的值。 |
| 不适用 | security_result.category: AUTH_VIOLATION | 由解析器代码针对特定 additional.event_id 值添加。 |
| 不适用 | security_result.rule_name: EventID: %{additional.event_id} | 直接从原始日志字段 additional.event_id 获取并转换为字符串的值。 |
| 不适用 | target.hostname: %{query_host} | 如果原始日志字段 additional.query 包含主机名,则从该字段中提取。 |
| 不适用 | target.ip: %{dstIp} | 如果存在 src.ip,则使用 grok 从原始日志消息中提取。 |
| 不适用 | target.ip: %{query_ip} | 如果原始日志字段 additional.query 包含 IP 地址,则从该字段中提取。 |
| 不适用 | target.process.command_line: %{principal_process_commandLine} | 如果不为空,则从 principal.process.commandLine 中获取值。 |
| 不适用 | target.process.file.full_path: %{principal_process_file_fullPath} | 如果不为空,则从 principal.process.file.fullPath 中获取值。 |
| 不适用 | target.process.file.md5: %{principal_process_file_md5} | 如果不为空,则从 principal.process.file.md5 中获取值。 |
| 不适用 | target.process.product_specific_process_id: TANIUM:%{principal.assetId}:%{principal.process.productSpecificProcessId} | 值取自 principal.process.productSpecificProcessId,格式为“TANIUM:%{principal.assetId}:%{principal.process.productSpecificProcessId}”。 |
| 不适用 | target.resource.resource_type: TASK | 由解析器代码针对特定 additional.event_id 值添加。 |
| 不适用 | timestamp.seconds: Extracted from %{metadata.eventTimestamp} timestamp.nanos: Extracted from %{metadata.eventTimestamp} |
使用日期解析从原始日志字段 metadata.eventTimestamp 中提取秒和纳秒。 |
更新日志
需要更多帮助?获得社区成员和 Google SecOps 专业人士的解答。