收集 Semperis DSP 日志
本文档介绍了如何使用 Bindplane 代理将 Semperis Directory Services Protector (DSP) 日志注入 Google Security Operations。
Semperis Directory Services Protector (DSP) 是一个 Active Directory 威胁检测和响应平台,可监控 AD 更改和攻击,提供实时提醒和自动补救措施。解析器会从 DSP 日志条目中提取字段,并将其映射到统一数据模型 (UDM),捕获 AD 对象修改、身份验证事件、DNS 更改和安全结果。
准备工作
请确保满足以下前提条件:
- Google SecOps 实例
- Windows Server 2016 或更高版本,或者具有
systemd的 Linux 主机 - Bindplane 代理与 Semperis DSP 服务器之间的网络连接
- 如果通过代理运行,请确保防火墙端口根据 Bindplane 代理要求处于开放状态
- 具有管理员权限的 Semperis DSP 管理控制台的特权访问权限
获取 Google SecOps 注入身份验证文件
- 登录 Google SecOps 控制台。
- 依次前往 SIEM 设置 > 收集代理。
- 下载数据注入身份验证文件。
将文件安全地保存在将安装 Bindplane 的系统上。
获取 Google SecOps 客户 ID
- 登录 Google SecOps 控制台。
- 依次前往 SIEM 设置 > 个人资料。
从组织详细信息 部分复制并保存客户 ID 。
安装 Bindplane 代理
按照以下说明在 Windows 或 Linux 操作系统上安装 Bindplane 代理。
Windows 安装
- 以管理员身份打开命令提示符 或 PowerShell 。
运行以下命令:
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet等待安装完成。
运行以下命令,验证安装是否成功:
sc query observiq-otel-collector该服务应显示为正在运行 。
Linux 安装
- 打开具有根权限或 sudo 权限的终端。
运行以下命令:
sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh等待安装完成。
运行以下命令,验证安装是否成功:
sudo systemctl status observiq-otel-collector该服务应显示为 active (running) 。
其他安装资源
如需了解其他安装选项和问题排查信息,请参阅 Bindplane 代理安装指南。
配置 Bindplane 代理以注入 syslog 并发送到 Google SecOps
找到配置文件
Linux :
sudo nano /opt/observiq-otel-collector/config.yamlWindows :
notepad "C:\Program Files\observIQ OpenTelemetry Collector\config.yaml"
修改配置文件
将
config.yaml的全部内容替换为以下配置:receivers: tcplog: listen_address: "0.0.0.0:514" exporters: chronicle/semperis_dsp: compression: gzip creds_file_path: '/etc/bindplane-agent/ingestion-auth.json' customer_id: '<customer_id>' endpoint: malachiteingestion-pa.googleapis.com log_type: SEMPERIS_DSP raw_log_field: body service: pipelines: logs/semperis_dsp: receivers: - tcplog exporters: - chronicle/semperis_dsp
配置参数
替换以下占位符:
接收器配置:
tcplog:基于协议的接收器类型:- UDP syslog 的
udplog - TCP syslog 的
tcplog - RFC 3164/5424 syslog 的
syslog
- UDP syslog 的
0.0.0.0:要监听的 IP 地址:0.0.0.0,用于监听所有接口(推荐)- 用于监听一个接口的特定 IP 地址
514:要监听的端口号(例如514、1514、6514)
导出器配置:
<customer_id>:上一步中的客户 IDmalachiteingestion-pa.googleapis.com:区域级端点网址:- 美国:
malachiteingestion-pa.googleapis.com - 欧洲:
europe-malachiteingestion-pa.googleapis.com - 亚洲:
asia-southeast1-malachiteingestion-pa.googleapis.com - 如需查看完整列表,请参阅区域级端点
- 美国:
- 根据平台调整
creds_file_path:- Linux:
/etc/bindplane-agent/ingestion-auth.json - Windows:
C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json
- Linux:
保存配置文件
- 修改后,保存文件:
- Linux:依次按
Ctrl+O、Enter和Ctrl+X - Windows:依次点击文件 > 保存
- Linux:依次按
重启 Bindplane 代理以应用更改
如需在 Linux 中重启 Bindplane 代理,请运行以下命令:
sudo systemctl restart observiq-otel-collector验证服务正在运行:
sudo systemctl status observiq-otel-collector检查日志中的错误:
sudo journalctl -u observiq-otel-collector -f
如需在 Windows 中重启 Bindplane 代理,请选择以下选项之一:
以管理员身份运行命令提示符或 PowerShell:
net stop observiq-otel-collector && net start observiq-otel-collector服务控制台:
- 按
Win+R,输入services.msc,然后按 Enter 键。 - 找到 observIQ OpenTelemetry Collector 。
- 右键点击并选择重启 。
验证服务正在运行:
sc query observiq-otel-collector检查日志中的错误:
type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
- 按
配置 Semperis DSP syslog 转发
- 登录 Semperis DSP 管理控制台。
- 依次前往设置 > SIEM 集成。
- 启用 Syslog 转发。
- 提供以下配置详细信息:
- 主机:输入 Bindplane 代理主机的 IP 地址(例如
192.168.1.100)。 - 端口:输入
514(必须与 Bindplane 接收器端口匹配)。 - 协议:选择 TCP (必须与 Bindplane 接收器类型匹配)。
- 主机:输入 Bindplane 代理主机的 IP 地址(例如
- 点击保存 。
UDM 映射表
| 日志字段 | UDM 映射 | 逻辑 |
|---|---|---|
| event_type | extensions.auth.type | 如果 ObjectModificationType == "LoginADSM",则设置为“SSO” |
| host | intermediary.hostname | 直接复制值 |
| ObjectModificationType | metadata.description | 直接复制值 |
| event_type | metadata.event_type | 如果 ObjectModificationType == "CreateObject" 且 OriginatingUsers != "",则设置为 RESOURCE_CREATION;如果 ObjectModificationType == "ModifyObject" 且 OriginatingUsers != "" 且 AttributeName 包含“Password”,则设置为 RESOURCE_WRITTEN;如果 ObjectModificationType == "ModifyObject" 且 OriginatingUsers != "",则设置为 RESOURCE_WRITTEN;如果 ObjectModificationType == "DeleteObject" 且 OriginatingUsers != "",则设置为 RESOURCE_DELETION;如果 ObjectModificationType == "LoginADSM" 且 OriginatingUsers != "",则设置为 USER_LOGIN;如果 ObjectModificationType == "OperationRequest" 且 OriginatingUsers != "",则设置为 RESOURCE_WRITTEN;如果 principal_present == "true",则设置为 STATUS_UPDATE;如果 principal_user_present == "true",则设置为 USER_UNCATEGORIZED;否则设置为 GENERIC_EVENT |
| metadata.product_name | 设置为“SEMPERIS_DSP” | |
| metadata.vendor_name | 设置为“SEMPERIS” | |
| StringValueFrom | network.dns.answers.data | 清理后直接复制值 |
| NameNode | network.dns.answers.name | 直接复制值 |
| Ttl | network.dns.answers.ttl | 直接复制值,转换为 uinteger |
| Type | network.dns.answers.type | 如果 Type =~ "DNS_TYPE_A",则设置为“1”;如果 Type =~ "DNS_TYPE_PTR",则设置为“12”,转换为 uinteger |
| OriginatingServer | principal.asset.hostname | 直接复制值 |
| ip | principal.asset.ip | 验证和清理后直接复制值 |
| OriginatingServer | principal.hostname | 直接复制值 |
| ip | principal.ip | 验证和清理后直接复制值 |
| DistinguishedName | principal.user.group_identifiers | 直接合并值 |
| ForestId | principal.user.product_object_id | 直接复制值 |
| OriginatingUsers | principal.user.userid | 如果 OperationType != "LoginADSM",则直接复制值 |
| security_action | security_result.action | 直接复制值 |
| RequestedAction | security_result.summary | 如果 OperationResult =~ "Granted" 或 "Denied",则直接复制值 |
| AttributeName | target.resource.name | 如果 AttributeName != "" 且 AttributeName != "isDeleted",则直接复制值 |
| ClassName | target.resource.resource_subtype | 直接复制值 |
| OriginatingUsers | target.user.userid | 如果 OperationType == "LoginADSM",则直接复制值 |
更新日志
需要更多帮助?获得社区成员和 Google SecOps 专业人士的解答。