收集 Cohesity 日志
支持的平台:
Google SecOps
SIEM
概览
此解析器使用 grok 模式从 Cohesity 备份软件 syslog 消息中提取字段。它既可处理标准 syslog 消息,也可处理 JSON 格式的日志,将提取的字段映射到 UDM,并根据是否存在主标识符和目标标识符动态分配 event_type。
准备工作
- 确保您拥有 Google SecOps 实例。
- 确保您拥有对 Cohesity 管理的权限。
在 Google SecOps 中配置 Feed 以提取 Cohesity 日志
- 依次前往 SIEM 设置 > Feed。
- 点击新增。
- 在Feed 名称字段中,输入 Feed 的名称(例如 Cohesity 日志)。
- 选择 Webhook 作为来源类型。
- 选择 Cohesity 作为日志类型。
- 点击下一步。
- 可选:为以下输入参数指定值:
- 分隔符:用于分隔日志行(例如
\n
)的分隔符。 - 资源命名空间:资源命名空间。
- 提取标签:应用于此 Feed 中的事件的标签。
- 分隔符:用于分隔日志行(例如
- 点击下一步。
- 在最终确定界面中查看 Feed 配置,然后点击提交。
- 点击生成 Secret 密钥,生成用于对此 Feed 进行身份验证的 Secret 密钥。
- 复制并存储密钥。您将无法再查看此密钥。如有必要,您可以重新生成新的 Secret 密钥,但此操作会使之前的 Secret 密钥过时。
- 在详情标签页中,从端点信息字段复制 Feed 端点网址。您需要在客户端应用中指定此端点网址。
- 点击完成。
为该 Webhook Feed 创建 API 密钥
依次前往 Google Cloud 控制台 > 凭据。
点击创建凭据,然后选择 API 密钥。
限制 API 密钥对 Chronicle API 的访问权限。
指定端点网址
- 在客户端应用中,指定 webhook Feed 中提供的 HTTPS 端点网址。
通过在自定义标头中指定 API 密钥和密钥(格式如下)来启用身份验证:
X-goog-api-key = API_KEY X-Webhook-Access-Key = SECRET
建议:将 API 密钥作为标头指定,而不是在网址中指定。
如果您的 webhook 客户端不支持自定义标头,您可以使用以下格式的查询参数指定 API 密钥和密钥:
ENDPOINT_URL?key=API_KEY&secret=SECRET
替换以下内容:
ENDPOINT_URL
:Feed 端点网址。API_KEY
:用于对 Google SecOps 进行身份验证的 API 密钥。SECRET
:您为对 Feed 进行身份验证而生成的密钥。
在 Cohesity 中为 Google SecOps 配置 Webhook
- 登录 Cohesity 集群管理界面。
- 前往保护作业部分。
- 选择要为其配置 webhook 的保护作业。
- 依次点击保护作业旁边的操作菜单(三个垂直排列的点)> 修改。
- 选择提醒标签页。
- 点击 + 添加 Webhook。
- 为以下参数指定值:
- 名称:为该 webhook 提供描述性名称(例如“Google SecOps”)。
- 网址:输入 Google SecOps
<ENDPOINT_URL>
。 - 方法:选择 POST。
- 内容类型:选择 application/json。
- 载荷:此字段取决于您要发送的具体数据。
- 启用 Webhook:勾选该复选框以启用 webhook。
- 保存配置:点击保存,将网络钩子配置应用于保护作业。
UDM 映射表
日志字段 | UDM 映射 | 逻辑 |
---|---|---|
ClientIP |
principal.asset.ip |
直接从 ClientIP 字段映射。 |
ClientIP |
principal.ip |
直接从 ClientIP 字段映射。 |
description |
security_result.description |
直接从 description 字段映射。 |
DomainName |
target.asset.hostname |
直接从 DomainName 字段映射。 |
DomainName |
target.hostname |
直接从 DomainName 字段映射。 |
EntityPath |
target.url |
直接从 EntityPath 字段映射。 |
host |
principal.asset.hostname |
直接从 host 字段映射。 |
host |
principal.hostname |
直接从 host 字段映射。从 ts 字段(已解析为时间戳)复制而来。由解析器逻辑根据 principal_mid_present 、target_mid_present 和 principal_user_present 的存在情况确定。可能的值:NETWORK_CONNECTION 、USER_UNCATEGORIZED 、STATUS_UPDATE 、GENERIC_EVENT 。已硬编码为“Cohesity”。 |
product_event_type |
metadata.product_event_type |
直接从 product_event_type 字段映射。已硬编码为“COHESITY”。 |
pid |
principal.process.pid |
直接从 pid 字段映射。 |
Protocol |
network.application_protocol |
直接从 Protocol 字段映射,并转换为大写形式。 |
RecordID |
additional.fields (键:“RecordID”,值:RecordID ) |
直接从 RecordID 字段映射,嵌套在 additional.fields 下。 |
RequestType |
security_result.detection_fields (键:“RequestType”,值:RequestType ) |
直接从 RequestType 字段映射,嵌套在 security_result.detection_fields 下。 |
Result |
security_result.summary |
直接从 Result 字段映射。 |
sha_value |
additional.fields (键:“SHA256”,值:sha_value ) |
直接从 sha_value 字段映射,嵌套在 additional.fields 下。 |
target_ip |
target.asset.ip |
直接从 target_ip 字段映射。 |
target_ip |
target.ip |
直接从 target_ip 字段映射。 |
target_port |
target.port |
直接从 target_port 字段映射,转换为整数。 |
Timestamp |
metadata.collected_timestamp |
从 Timestamp 字段解析为时间戳后直接映射。 |
ts |
events.timestamp |
从 ts 字段解析为时间戳后直接映射。 |
UserID |
principal.user.userid |
直接从 UserID 字段映射,转换为字符串。 |
UserName |
principal.user.user_display_name |
直接从 UserName 字段映射。 |
UserSID |
principal.user.windows_sid |
直接从 UserSID 字段映射。 |
更改
2024-09-24
- 移除了用于设置 JSON 日志格式的“gsub”。
2024-09-10
- 添加了“gsub”,以从日志中移除不需要的字符。
- 将“prin_ip”映射到“principal.ip”。
2024-07-28
- 将“EntityId”和“RegisteredSource.EntityId”映射到“principal.user.userid”。
- 将“Description”和“EventMessage”映射到“metadata.description”。
- 将“IP”映射到“principal.ip”和“principal.asset.ip”。
- 将“用户”映射到“principal.user.user_display_name”。
- 将“Action”“Domain”“ServiceContext”“AttributeMap.AttemptNum”“cluster_id”“cluster_name”“ClusterInfo.ClusterId”“ClusterInfo.ClusterName”“TaskId”“EntityName”“EntityType”“BackupJobId”“BackupJobName”“EnvironmentType”“RegisteredSource.EntityName”“RegisteredSource.EntityType”“AttributeMap.BridgeConstituent”“ReplicationTarget.ClusterName”和“ReplicationTarget.ClusterId”映射到“additional.fields”。
2024-05-16
- 新创建的解析器。