收集 Nutanix Prism 日志
支持的语言:
Google SecOps
SIEM
概览
此解析器可处理 Nutanix Prism 日志,并支持 JSON 和 syslog 格式。它从各种日志结构中提取字段,将这些字段标准化为 UDM,并使用用户信息、网络详细信息和安全严重程度等其他上下文信息来丰富数据。解析器还会根据 HTTP 方法和日志级别执行特定操作,将事件归类为 UDM 事件类型,例如 USER_LOGIN、STATUS_UPDATE 和 GENERIC_EVENT。
准备工作
- 确保您拥有 Google SecOps 实例。
- 确保您拥有对 Nutanix Prism Central 的特权访问权限。
- 确保您拥有 Windows 2012 SP2 或更高版本或带有 systemd 的 Linux 主机。
- 如果是在代理后面运行,请确保防火墙端口处于开放状态。
获取 Google SecOps 注入身份验证文件
- 登录 Google SecOps 控制台。
- 依次前往 SIEM 设置 > 收集代理。
- 下载注入身份验证文件。
获取 Google SecOps 客户 ID
- 登录 Google SecOps 控制台。
- 依次前往 SIEM 设置 > 个人资料。
- 复制并保存组织详细信息部分中的客户 ID。
安装 BindPlane 代理
- 对于 Windows 安装,请运行以下脚本:
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
。 - 对于 Linux 安装,请运行以下脚本:
sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
。 - 如需了解其他安装选项,请参阅此安装指南。
配置 Bindplane 代理以注入 Syslog 并将其发送到 Google SecOps
- 访问安装了 Bindplane 代理的机器。
按如下方式修改
config.yaml
文件:receivers: tcplog: # Replace the below port <54525> and IP (0.0.0.0) with your specific values listen_address: "0.0.0.0:54525" exporters: chronicle/chronicle_w_labels: compression: gzip # Adjust the creds location below according the placement of the credentials file you downloaded creds: '{ json file for creds }' # Replace <customer_id> below with your actual ID that you copied customer_id: <customer_id> endpoint: malachiteingestion-pa.googleapis.com # You can apply ingestion labels below as preferred ingestion_labels: log_type: SYSLOG namespace: Namespace raw_log_field: body service: pipelines: logs/source0__chronicle_w_labels-0: receivers: - tcplog exporters: - chronicle/chronicle_w_labels
使用以下命令重启 Bindplane 代理以应用更改:
sudo systemctl bindplane restart
从 Nutanix Prism 导出 Syslog
- 使用特权账号登录 Prism Central。
- 从菜单中选择 Prism Central 设置。
- 前往 Syslog 服务器。
- 点击 + 配置 Syslog 服务器。
- 在 Syslog 服务器对话框中,为输入参数指定值:
- 服务器名称:输入服务器的名称(例如 Google SecOps Bindplane 服务器)
- IP 地址:输入 Bindplane 代理的 IP。
- 端口:输入 Bindplane 代理侦听的端口。
- 传输协议:选择 TCP。
- 点击配置。
- 点击数据源选项中的 + 修改。
- 在数据源和相应严重程度对话框中,为输入参数指定值:
- 选择 API 审核、审核和 Flow。
- 将每个的严重级别设置为 6 - 信息。
- 点击保存。
UDM 映射表
日志字段 | UDM 映射 | 逻辑 |
---|---|---|
@timestamp |
metadata.event_timestamp |
系统会从 @timestamp 字段中解析事件时间戳。支持 yyyy-MM-dd HH:mm:ss.SSS 、yyyy-MM-ddTHH:mm:ssZ 和 ISO8601 格式。 |
agent.id |
observer.asset_id |
与 agent.type 结合使用,以“agent.type:agent.id”格式构成观测者资产 ID。 |
agent.type |
observer.application |
用于观测的应用。 |
agent.version |
observer.platform_version |
观测器应用的版本。 |
alertUid |
security_result.detection_fields.value |
提醒 UID 的值会映射到 detection_fields 中的 value 字段。key 设置为“Alert Uid”。 |
api_version |
metadata.product_version |
API 版本。 |
clientIp |
principal.ip ,principal.asset.ip |
客户端 IP 地址。 |
client_type |
principal.labels.value |
客户端类型的值。key 设置为“client_type”。 |
defaultMsg |
metadata.description |
默认消息。 |
entity_uuid |
metadata.product_log_id |
实体的 UUID。 |
http_method |
network.http.method |
HTTP 方法。已转换为大写。 |
host.architecture |
principal.asset.hardware.cpu_platform |
主机的架构。 |
host.id |
principal.asset_id |
以“NUTANIX:”为前缀,创建主资产 ID。 |
host.ip |
principal.ip ,principal.asset.ip |
主机 IP 地址。 |
host.mac |
principal.mac |
主机 MAC 地址。 |
host.os.kernel |
principal.platform_patch_level |
主机操作系统的内核版本。 |
host.os.platform |
principal.platform |
主机操作系统的平台。映射到 LINUX 、WINDOWS 、MAC 或 UNKNOWN_PLATFORM 。 |
host.os.version |
principal.platform_version |
宿主操作系统的版本。 |
input.type |
network.ip_protocol |
网络协议。映射到“UDP”或“TCP”。 |
log.source.address |
principal.ip 、principal.asset.ip 、principal.port |
已解析,以提取源 IP 和端口。 |
logstash.collect.host |
observer.ip |
Logstash 收集器的 IP 地址。 |
logstash.collect.timestamp |
metadata.collected_timestamp |
收集日志时的时间戳。 |
logstash.ingest.host |
intermediary.hostname |
Logstash 注入服务器的主机名。 |
logstash.ingest.timestamp |
metadata.ingested_timestamp |
日志的提取时间。 |
logstash.irm_environment |
principal.labels.value |
IRM 环境的值。key 设置为“irm_environment”。 |
logstash.irm_region |
principal.labels.value |
IRM 区域的值。key 设置为“irm_region”。 |
logstash.irm_site |
principal.labels.value |
IRM 网站的值。key 设置为“irm_site”。 |
logstash.process.host |
intermediary.hostname |
Logstash 处理服务器的主机名。 |
operationType |
metadata.product_event_type |
操作类型。 |
originatingClusterUuid |
additional.fields.value.string_value |
原始集群 UUID。key 设置为“源集群 UUID”。 |
params.mac_address |
target.mac |
参数中的 MAC 地址。 |
params.requested_ip_address |
target.ip ,target.asset.ip |
参数中请求的 IP 地址。 |
params.vm_name |
target.resource.name |
参数中的虚拟机名称。 |
program |
metadata.product_event_type |
计划名称。 |
rest_endpoint |
target.url |
REST 端点。 |
sessionId |
additional.fields.value.string_value |
会话 ID。key 设置为“会话 ID”。 |
syslog_host |
principal.hostname ,principal.asset.hostname |
Syslog 主机。 |
timestamp |
metadata.event_timestamp |
事件时间戳。 |
username |
principal.user.user_display_name 或 principal.user.userid |
即用户名。如果 http_method 为“POST”,则用作用户 ID。 |
uuid |
metadata.product_log_id |
UUID。 |
不适用 | metadata.vendor_name |
硬编码为“Nutanix_Prism”。 |
不适用 | metadata.product_name |
硬编码为“Nutanix_Prism”。 |
不适用 | metadata.event_type |
由解析器逻辑根据 has_principal 、has_target 、audit_log 、network_set 和 http_method 的值确定。可以是 GENERIC_EVENT 、USER_LOGIN 、STATUS_UPDATE 、USER_RESOURCE_ACCESS 、RESOURCE_CREATION 、USER_RESOURCE_UPDATE_CONTENT 或 USER_RESOURCE_DELETION 。 |
不适用 | metadata.log_type |
硬编码为“NUTANIX_PRISM”。 |
不适用 | extensions.auth.type |
如果 metadata.event_type 为 USER_LOGIN ,则设置为“AUTHTYPE_UNSPECIFIED”。 |
不适用 | security_result.severity |
由解析器逻辑根据 log_level 和 syslog_pri 确定。可以是 CRITICAL 、ERROR 、HIGH 、MEDIUM 或 INFORMATIONAL 。 |
需要更多帮助?从社区成员和 Google SecOps 专业人士那里获得解答。