收集 Cohesity 日志
概览
此解析器使用 grok 模式从 Cohesity 备份软件 syslog 消息中提取字段。它既能处理标准 syslog 消息,也能处理 JSON 格式的日志,可将提取的字段映射到 UDM,并根据正文标识符和目标标识符的存在情况动态分配 event_type。
准备工作
确保您满足以下前提条件:
- Google SecOps 实例。
- 对 Cohesity 管理的特权访问权限。
设置 Feed
您可以通过两种不同的入口点在 Google SecOps 平台中设置 Feed:
- SIEM 设置 > Feed
- 内容中心 > 内容包
通过“SIEM 设置”>“Feed”设置 Feed
如需配置 Feed,请按以下步骤操作:
- 依次前往 SIEM 设置 > Feed。
- 点击添加新 Feed。
- 在下一页上,点击配置单个 Feed。
- 在 Feed name 字段中,输入 Feed(例如 Cohesity Logs)。
- 选择 Webhook 作为来源类型。
- 选择 Cohesity 作为日志类型。
- 点击下一步。
- 可选:为以下输入参数指定值:
- 拆分分隔符:用于分隔日志行的分隔符,例如
\n
。
- 拆分分隔符:用于分隔日志行的分隔符,例如
- 点击下一步。
- 在最终确定界面中检查 Feed 配置,然后点击提交。
- 点击生成密钥,生成用于对此 Feed 进行身份验证的密钥。
- 复制并存储密钥。您将无法再次查看此密钥。如有需要,您可以重新生成新的 Secret 密钥,但此操作会使之前的 Secret 密钥失效。
- 在详情标签页中,从端点信息字段复制 Feed 端点网址。您需要在客户端应用中指定此端点网址。
- 点击完成。
设置来自内容中心的 Feed
为以下字段指定值:
- 拆分分隔符:用于分隔日志行的分隔符,例如
\n
。
高级选项
- Feed 名称:用于标识 Feed 的预填充值。
- 来源类型:用于将日志收集到 Google SecOps 中的方法。
- 资源命名空间:与 Feed 关联的命名空间。
提取标签:应用于相应 Feed 中所有事件的标签。
点击生成密钥,生成用于对此 Feed 进行身份验证的密钥。
复制并存储密钥。您将无法再次查看此密钥。如有需要,您可以重新生成新的 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 的保护作业。
- 点击保护作业旁边的操作菜单(三个垂直排列的点)> 修改。
- 选择提醒标签页。
- 点击 + Add 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 字段映射。 |
需要更多帮助?从社区成员和 Google SecOps 专业人士那里获得解答。