收集 VMware Workspace ONE UEM 日志
支持的平台:
Google SecOps
SIEM
此解析器会以 Syslog、CEF 或键值对格式从 VMware Workspace ONE UEM(以前称为 VMware AirWatch)提取日志。它会对用户名、时间戳和事件详情等字段进行标准化处理,并将其映射到 UDM。解析器会处理各种 Workspace ONE UEM 事件类型,根据不同的日志格式的特定事件数据和逻辑填充正文、目标和其他 UDM 字段。
准备工作
- 确保您有一个 Google Security Operations 实例。
- 确保您拥有对 VMware Workspace ONE 控制台的特权访问权限。
- 确保您有安装 systemd 的 Windows 或 Linux 主机。
- 如果在代理后面运行,请确保防火墙端口处于打开状态。
获取 Google SecOps 提取身份验证文件
- 登录 Google SecOps 控制台。
- 依次前往 SIEM 设置 > 收集代理。
- 下载提取身份验证文件。
获取 Google SecOps 客户 ID
- 登录 Google SecOps 控制台。
- 依次前往 SIEM 设置 > 配置文件。
- 复制并保存组织详情部分中的客户 ID。
安装 BindPlane Agent
- 对于 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 Agent 以提取 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: raw_log_field: body service: pipelines: logs/source0__chronicle_w_labels-0: receivers: - tcplog exporters: - chronicle/chronicle_w_labels
使用以下命令重启 BindPlane Agent 以应用更改:
sudo systemctl bindplane restart
在 VMware Workspace ONE UEM 中配置 syslog
- 登录 Workspace ONE UEM 控制台:
- 依次前往设置 > 系统 > 高级 > Syslog。
- 选中启用 Syslog 选项。
- 为以下输入参数指定值:
- IP 地址/主机名:输入 BindPlane 代理的地址。
- 端口:输入指定的端口(默认:514)。
- 协议:根据 BindPlane 代理配置选择 UDP 或 TCP。
- 选择日志类型:选择要发送到 Google SecOps 的日志 - 设备管理日志、控制台活动日志、合规性日志、事件日志
- 设置日志级别(例如信息、警告、错误)。
- 点击保存以应用设置
UDM 映射表
日志字段 | UDM 映射 | 逻辑 |
---|---|---|
AdminAccount |
principal.user.userid |
原始日志中的 AdminAccount 会映射到 principal.user.userid 字段。 |
Application |
target.application |
原始日志中的 Application 字段会映射到 target.application 字段。 |
ApplicationUUID |
additional.fields |
原始日志中的 ApplicationUUID 字段会作为键值对添加到 UDM 中的 additional.fields 数组。键为“ApplicationUUID”。 |
BytesReceived |
network.received_bytes |
原始日志中的 BytesReceived 字段会映射到 network.received_bytes 字段。 |
Device |
target.hostname |
原始日志中的 Device 字段会映射到 target.hostname 字段。 |
FriendlyName |
target.hostname |
当 Device 不可用时,原始日志中的 FriendlyName 字段会映射到 target.hostname 字段。 |
GroupManagementData |
security_result.description |
原始日志中的 GroupManagementData 字段会映射到 security_result.description 字段。 |
Hmac |
additional.fields |
原始日志中的 Hmac 字段会作为键值对添加到 UDM 中的 additional.fields 数组。键为“Hmac”。 |
LoginSessionID |
network.session_id |
原始日志中的 LoginSessionID 字段会映射到 network.session_id 字段。 |
LogDescription |
metadata.description |
原始日志中的 LogDescription 字段会映射到 metadata.description 字段。 |
MessageText |
metadata.description |
原始日志中的 MessageText 字段会映射到 metadata.description 字段。 |
OriginatingOrganizationGroup |
principal.user.group_identifiers |
原始日志中的 OriginatingOrganizationGroup 字段会映射到 principal.user.group_identifiers 字段。 |
OwnershipType |
additional.fields |
原始日志中的 OwnershipType 字段会作为键值对添加到 UDM 中的 additional.fields 数组。键为“OwnershipType”。 |
Profile |
target.resource.name |
当 ProfileName 不可用时,原始日志中的 Profile 字段会映射到 target.resource.name 字段。 |
ProfileName |
target.resource.name |
原始日志中的 ProfileName 字段会映射到 target.resource.name 字段。 |
Request Url |
target.url |
原始日志中的 Request Url 字段会映射到 target.url 字段。 |
SmartGroupName |
target.group.group_display_name |
原始日志中的 SmartGroupName 字段会映射到 target.group.group_display_name 字段。 |
Tags |
additional.fields |
原始日志中的 Tags 字段会作为键值对添加到 UDM 中的 additional.fields 数组。键为“标记”。 |
User |
target.user.userid |
原始日志中的 User 字段会映射到 target.user.userid 字段。原始日志中的 Event Category 会作为键值对添加到 UDM 中的 additional.fields 数组。键为“事件类别”。原始日志中的 Event Module 会作为键值对添加到 UDM 中的 additional.fields 数组。键为“Event Module”。原始日志中的 Event Source 会作为键值对添加到 UDM 中的 additional.fields 数组。键为“Event Source”(事件来源)。由解析器针对特定事件设置为“SSO”。派生自原始日志的时间戳。解析器会从原始日志中提取日期和时间,并将其转换为 UDM 时间戳。由解析器根据 event_name 和其他字段确定。请参阅解析器代码,了解映射逻辑。由解析器设置为“AIRWATCH”。原始日志中的 event_name 会映射到 metadata.product_event_type 字段。由解析器设置为“AirWatch”。由解析器设置为“VMWare”。原始日志中的 domain 会映射到 principal.administrative_domain 字段。hostname 是从原始日志中的 device_name 字段中提取的,或从 Device 或 FriendlyName 字段映射的。原始日志中的 sys_ip 会映射到 principal.ip 字段。从某些事件类型的原始日志中提取。从特定事件类型的原始日志中提取。原始日志中的 user_name 会映射到 principal.user.userid 字段。从特定事件类型的原始日志中提取。由解析器为特定事件设置。由解析器为特定事件设置。原始日志中的 event_category 会映射到 security_result.category_details 字段。从某些事件类型的原始日志中提取。从特定事件类型的原始日志中提取。原始日志中的 domain 会映射到 target.administrative_domain 字段。通过将“DeleteDeviceRequested”事件的原始日志中的 DeviceSerialNumber 和 DeviceUdid 相结合构建而成。从某些事件类型的原始日志中提取。从某些事件类型的原始日志中提取。原始日志中的 sys_ip 或其他 IP 地址会映射到 target.ip 字段。从某些事件类型的原始日志中提取。从某些事件类型的原始日志中提取。由解析器为特定事件设置。从特定事件类型的原始日志中提取。从特定事件类型的原始日志中提取。从特定事件类型的原始日志中提取。 |
更改
2024-11-15
- 增强功能:
- 为新类型的日志添加了 Grok 模式。
2024-10-17
- 增强功能:
- 添加了对新类型日志的支持。
2024-10-07
- 增强功能:
- 添加了对新类型日志的支持。
2024-09-23
- 增强功能:
- 添加了对解析未解析日志的支持。
2024-06-25
- 增强功能:
- 修复了 Grok 模式,以将“username”映射到“principal.user.user_display_name”。
- 将“device_type”映射到“additional.fields”。
- 为新类型的日志添加了 Grok 模式。
2023-09-05
- bug 修复:
- 添加了 Grok 模式来解析丢弃的日志。
2023-05-05
- bug 修复:
- 修改了 Grok 模式,以解析丢弃的日志。
2023-04-26
- bug 修复:
- 添加了对不同类型的 syslog 格式日志的支持。
2022-12-27
- bug 修复:
- 添加了对不同类型 Syslog 格式日志的支持。
- 添加了特定的条件检查,以处理多个“event_name”。
2022-09-02
- 增强功能:
- 编写了 Grok 来解析未解析的 CCF 格式日志。
2022-06-29
- 增强功能:
- 解析了 event_name 为“MergeGroupCompletedEvent”的日志
- 将“GroupManagementData”映射到“security_result.description”。
- 将“EventSource”“EventModule”映射到“event.idm.read_only_udm.additional.fields”。
- 将“cat”映射到“security_result.category_details”。
- 如果存在“principal.user.userid”或“target.user.userid”,则将“event.idm.read_only_udm.metadata.event_type”从“GENERIC_EVENT”修改为“USER_UNCATEGORIZED”。
2022-06-20
- 增强功能:
- 事件类别已映射到 _udm.additional.fields(event_category)
- 为 SecurityInformation、SecurityInformationConfirmed(event_name) 添加了事件类型 GENERIC_EVENT,以处理无法解析的日志