收集 Tanium Stream 日志

支持范围:

本文档介绍了如何使用 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 服务账号

  1. 登录 Tanium 控制台。
  2. 依次前往模块 > Stream。
  3. 点击右上角的设置。
  4. 在服务账号部分中,配置以下内容:
    • 服务账号用户:选择具有适当 Stream 权限的用户。
    • 验证该账号是否具有 Connect User 角色权限。
    • 确认对 Stream 数据源和端点的访问权限。
  5. 点击保存以应用服务账号配置。

收集 Tanium Stream 前提条件

  1. 以管理员身份登录 Tanium 控制台。
  2. 依次前往管理 > 权限 > 用户。
  3. 创建或确定具有以下角色的服务账号用户:
    • Stream Administrator 或 Stream Read Only User 角色。
    • 连接用户角色权限。
    • 对受监控计算机群组(建议:所有计算机群组)的访问权限。
    • 针对 Stream 内容集的读取已保存的问题权限。

为 Google SecOps 配置 AWS S3 存储桶和 IAM

  1. 按照以下用户指南创建 Amazon S3 存储桶:创建存储桶
  2. 保存存储桶名称和区域(例如 tanium-stream-logs),以供日后参考。
  3. 按照以下用户指南创建用户:创建 IAM 用户。
  4. 选择创建的用户。
  5. 选择安全凭证标签页。
  6. 点击访问密钥部分中的创建访问密钥。
  7. 选择第三方服务作为用例。
  8. 点击下一步。
  9. 可选:添加说明标记。
  10. 点击创建访问密钥。
  11. 点击下载 CSV 文件,保存访问密钥和私有访问密钥,以供日后使用。
  12. 点击完成。
  13. 选择权限标签页。
  14. 点击权限政策部分中的添加权限。
  15. 选择添加权限。
  16. 选择直接附加政策
  17. 搜索并选择 AmazonS3FullAccess 政策。
  18. 点击下一步。
  19. 点击添加权限。

配置 Tanium Connect AWS S3 目标

  1. 登录 Tanium 控制台。
  2. 依次前往模块 > 连接。
  3. 点击 Create Connection。
  4. 提供以下配置详细信息:
    • 名称:输入一个描述性名称(例如 Stream Telemetry to S3 for SecOps)。
    • 说明:可选说明(例如 Export endpoint telemetry and threat hunting data to AWS S3 for Google SecOps ingestion)。
    • 启用:选择此选项可启用连接,使其按时间表运行。
  5. 点击下一步。

配置连接来源

  1. 在来源部分,提供以下配置详细信息:
    • Source Type(来源类型):选择 Saved Question(已保存的问题)。
    • 已保存的问题:选择以下与 Stream 相关的一个已保存问题:
      • Stream - Endpoint Events,用于实时端点遥测。
      • Stream - Network Events,用于监控网络活动。
      • Stream - Process Events,用于跟踪进程执行情况。
      • Stream - File Events,用于文件系统活动。
      • Stream - Threat Hunting Data,用于行为分析。
    • 计算机群组:选择所有计算机或要监控的特定计算机群组。
    • 刷新间隔:设置适当的数据收集间隔(例如,实时遥测设置为 5 分钟)。
  2. 点击下一步。

配置 AWS S3 目标

  1. 在目标部分,提供以下配置详细信息:
    • 目标类型:选择 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/)。
  2. 点击下一步。

配置过滤器

  1. 在过滤条件部分,配置数据过滤选项:
    • 仅发送新内容:选择此选项,系统将仅发送自上次导出以来新增的遥测数据。
    • 列过滤条件:根据需要,基于特定事件属性添加过滤条件(例如,按事件类型、进程名称或威胁指标进行过滤)。
  2. 点击下一步。

为 AWS S3 格式化数据

  1. 在格式部分,配置数据格式:
    • 格式:选择 JSON。
    • 选项:
      • 包含标题:取消选择此选项可避免在 JSON 输出中包含标题。
      • 包含空单元格:根据您的偏好进行选择。
    • 高级选项:
      • 文件命名:使用默认的基于时间戳的命名。
      • 压缩:选择 Gzip 可降低存储费用并缩短传输时间。
  2. 点击下一步。

安排连接

  1. 在时间表部分,配置导出时间表:
    • 启用时间表:选择此选项可启用自动定期导出。
    • 时间表类型:选择周期性。
    • 频率:选择每 5 分钟,以获取近乎实时的遥测数据。
    • 开始时间:为首次导出设置适当的开始时间。
  2. 点击下一步。

保存并验证连接

  1. 在摘要屏幕中查看连接配置。
  2. 点击保存以创建连接。
  3. 点击测试连接以验证配置。
  4. 如果测试成功,请点击立即运行以执行初始导出。
  5. 在连接概览页面中监控连接状态。

在 Google SecOps 中配置 Feed 以注入 Tanium Stream 日志

  1. 依次前往设置 > 数据管理 > Feed。如果您使用的是仅 SIEM 平台,请依次前往设置 > Feed。
  2. 点击 + 添加新 Feed。
  3. 在 Feed 名称字段中,输入 Feed 的名称(例如 Tanium Stream logs)。
  4. 选择 Amazon S3 V2 作为来源类型。
  5. 选择 Tanium Stream 作为日志类型。
  6. 点击下一步。
  7. 为以下输入参数指定值:
    • S3 URI:s3://tanium-stream-logs/tanium/stream/
    • 来源删除选项:根据您的偏好选择删除选项。
    • 文件存在时间上限:包含过去指定天数内修改过的文件。默认值为 180 天。
    • 访问密钥 ID:有权访问 S3 存储桶的用户访问密钥。
    • Secret Access Key:有权访问 S3 存储桶的用户 Secret。
    • 资产命名空间:资产命名空间。
    • 注入标签:应用于此 Feed 中事件的标签。
  8. 点击下一步。
  9. 在最终确定界面中查看新的新闻信息流配置,然后点击提交。

UDM 映射表

日志字段 UDM 映射 逻辑
additional.event__AlgorithmName additional.fields.key: eventAlgorithmName
additional.fields.value.string_value: %{additional.event
AlgorithmName}
直接取自原始日志字段 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.event
ClientProcessStartKey}
直接取自原始日志字段 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.event
FailureReason}
直接取自原始日志字段 additional.event__FailureReason 的值。
additional.event__ImpersonationLevel additional.fields.key: eventImpersonationLevel
additional.fields.value.string_value: %{additional.event
ImpersonationLevel}
直接取自原始日志字段 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.event
KeyLength}
直接取自原始日志字段 additional.event__KeyLength 的值。
additional.event__KeyName additional.fields.key: eventKeyName
additional.fields.value.string_value: %{additional.event
KeyName}
直接取自原始日志字段 additional.event__KeyName 的值。
additional.event__KeyType additional.fields.key: eventKeyType
additional.fields.value.string_value: %{additional.event
KeyType}
直接取自原始日志字段 additional.event__KeyType 的值。
additional.event__LmPackageName additional.fields.key: eventLmPackageName
additional.fields.value.string_value: %{additional.event
LmPackageName}
直接取自原始日志字段 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.event
MandatoryLabel}
直接取自原始日志字段 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.event
Operation}
直接取自原始日志字段 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.event
ProviderName}
直接取自原始日志字段 additional.event__ProviderName 的值。
additional.event__RestrictedAdminMode additional.fields.key: eventRestrictedAdminMode
additional.fields.value.string_value: %{additional.event
RestrictedAdminMode}
直接取自原始日志字段 additional.event__RestrictedAdminMode 的值。
additional.event__ReturnCode additional.fields.key: eventReturnCode
additional.fields.value.string_value: %{additional.event
ReturnCode}
直接取自原始日志字段 additional.event__ReturnCode 的值。
additional.event__RpcCallClientLocality additional.fields.key: eventRpcCallClientLocality
additional.fields.value.string_value: %{additional.event
RpcCallClientLocality}
直接取自原始日志字段 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.event
Status}
直接取自原始日志字段 additional.event__Status 的值。
additional.event__SubStatus additional.fields.key: eventSubStatus
additional.fields.value.string_value: %{additional.event
SubStatus}
直接取自原始日志字段 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.event
SubjectLogonId}
直接取自原始日志字段 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.event
TaskContentNew}
直接取自原始日志字段 additional.event__TaskContentNew 的值。
additional.event__TaskName additional.fields.key: eventTaskName
additional.fields.value.string_value: %{additional.event
TaskName}
直接取自原始日志字段 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.event
TargetLinkedLogonId}
直接取自原始日志字段 additional.event__TargetLinkedLogonId 的值。
additional.event__TargetLogonId additional.fields.key: eventTargetLogonId
additional.fields.value.string_value: %{additional.event
TargetLogonId}
直接取自原始日志字段 additional.event__TargetLogonId 的值。
additional.event__TargetOutboundDomainName additional.fields.key: eventTargetOutboundDomainName
additional.fields.value.string_value: %{additional.event
TargetOutboundDomainName}
直接取自原始日志字段 additional.event__TargetOutboundDomainName 的值。
additional.event__TargetOutboundUserName additional.fields.key: eventTargetOutboundUserName
additional.fields.value.string_value: %{additional.event
TargetOutboundUserName}
直接取自原始日志字段 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.event
TokenElevationType}
直接取自原始日志字段 additional.event__TokenElevationType 的值。
additional.event__TransmittedServices additional.fields.key: eventTransmittedServices
additional.fields.value.string_value: %{additional.event
TransmittedServices}
直接取自原始日志字段 additional.event__TransmittedServices 的值。
additional.event__VirtualAccount additional.fields.key: eventVirtualAccount
additional.fields.value.string_value: %{additional.event
VirtualAccount}
直接取自原始日志字段 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 专业人士的解答。