收集 SecureAuth Identity Platform 日志

支持的语言:

本文档介绍了如何使用 Bindplane 将 SecureAuth Identity Platform 日志注入到 Google Security Operations。解析器使用 grok 和 XML 过滤器从各种日志格式(SYSLOG、XML、键值对)中提取字段。然后,它将提取的字段映射到相应的 UDM(统一数据模型)属性,通过安全事件上下文丰富数据,并标准化输出以供进一步分析。

准备工作

  • 确保您拥有 Google Security Operations 实例。
  • 确保您使用的是 Windows 2016 或更高版本,或者具有 systemd 的 Linux 主机。
  • 如果通过代理运行,请确保防火墙端口处于开放状态。
  • 确保您拥有 SecureAuth 的特权访问权限。

获取 Google SecOps 注入身份验证文件

  1. 登录 Google SecOps 控制台。
  2. 依次前往 SIEM 设置 > 收集代理
  3. 下载注入身份验证文件。将文件安全地保存在将要安装 Bindplane 的系统上。

获取 Google SecOps 客户 ID

  1. 登录 Google SecOps 控制台。
  2. 依次前往 SIEM 设置 > 配置文件
  3. 复制并保存组织详细信息部分中的客户 ID

安装 Bindplane 代理

Windows 安装

  1. 以管理员身份打开命令提示符PowerShell
  2. 运行以下命令:

    msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
    

Linux 安装

  1. 打开具有 root 或 sudo 权限的终端。
  2. 运行以下命令:

    sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
    

其他安装资源

  • 如需了解其他安装选项,请参阅此安装指南

配置 Bindplane 代理以注入 Syslog 并将其发送到 Google SecOps

  1. 访问配置文件:

    1. 找到 config.yaml 文件。通常,它位于 Linux 上的 /etc/bindplane-agent/ 目录中或 Windows 上的安装目录中。
    2. 使用文本编辑器(例如 nanovi 或记事本)打开该文件。
  2. 按如下方式修改 config.yaml 文件:

    receivers:
        udplog:
            # Replace the port and IP address as required
            listen_address: "0.0.0.0:514"
    
    exporters:
        chronicle/chronicle_w_labels:
            compression: gzip
            # Adjust the path to the credentials file you downloaded in Step 1
            creds: '/path/to/ingestion-authentication-file.json'
            # Replace with your actual customer ID from Step 2
            customer_id: <customer_id>
            endpoint: malachiteingestion-pa.googleapis.com
            # Add optional ingestion labels for better organization
            ingestion_labels:
                log_type: SECUREAUTH_SSO
                raw_log_field: body
    
    service:
        pipelines:
            logs/source0__chronicle_w_labels-0:
                receivers:
                    - udplog
                exporters:
                    - chronicle/chronicle_w_labels
    
  3. 根据基础架构的需要替换端口和 IP 地址。

  4. <customer_id> 替换为实际的客户 ID。

  5. /path/to/ingestion-authentication-file.json 更新为获取 Google SecOps 提取身份验证文件部分中保存身份验证文件的路径。

重启 Bindplane 代理以应用更改

  • 如需在 Linux 中重启 Bindplane 代理,请运行以下命令:

    sudo systemctl restart bindplane-agent
    
  • 如需在 Windows 中重启 Bindplane 代理,您可以使用服务控制台,也可以输入以下命令:

    net stop BindPlaneAgent && net start BindPlaneAgent
    

配置 SecureAuth Identity Platform

  1. 登录 SecureAuth Identity 控制台
  2. 选择日志
  3. 日志选项部分中,提供以下配置详细信息:
    • 日志实例 ID:输入日志实例 ID、应用名称或 realm 名称;例如 SecureAuth1
    • 审核日志:选中 Syslog 复选框。
    • 错误日志:选中 Syslog 复选框。
    • Syslog 服务器:输入 Bindplane 代理的 IP 地址。
    • Syslog 端口:输入 Bindplane 代理端口号;例如,514
    • Syslog RFC 规范:选择 RFC 5424
  4. 点击保存

UDM 映射表

日志字段 UDM 映射 逻辑
action_msg read_only_udm.target.process.command_line action_msg 字段的值
设备 read_only_udm.principal.domain.name Appliance 字段的值
设备 read_only_udm.target.administrative_domain Appliance 字段的值
BrowserSession read_only_udm.network.session_id BrowserSession 字段的值
read_only_udm.metadata.product_event_type cat 字段的值
类别 read_only_udm.metadata.product_event_type Category 字段的值
cn1 security_result.severity cn1Label 为“Priority”时,根据 cn1 的值进行映射:1 - HIGH,2 - MEDIUM,3 或 4 - LOW
公司 read_only_udm.additional.fields.value.string_value Company 字段的值
cs1 read_only_udm.network.session_id cs1Label 为“BrowserSession”时,cs1 字段的值
cs3 read_only_udm.additional.fields.value.string_value cs3Label 为“CompanyName”时,cs3 字段的值
dst read_only_udm.target.ip dst 字段的值
网域 read_only_udm.principal.domain.name domain 字段的值
dvc read_only_udm.intermediary.ip dvc 字段的值
EventID read_only_udm.metadata.product_log_id EventID 字段的值
HostName read_only_udm.principal.hostname 当 grok 无法匹配 IP 地址时,HostName 字段的值
HostName read_only_udm.principal.ip 当 grok 匹配 IP 地址时,HostName 字段的值
ip read_only_udm.principal.ip ip 字段的值
消息 read_only_udm.metadata.description Message 字段的值
消息 security_result.description Message 字段的值
nat_ip read_only_udm.principal.nat_ip nat_ip 字段的值
优先级 security_result.severity 根据 Priority 的值进行映射:1 - HIGH,2 - MEDIUM,3 或 4 - LOW
SAMLConsumerURL read_only_udm.target.url SAMLConsumerURL 字段的值
sec_msg security_result.description sec_msg 字段的值
SecureAuthIdPAppliance read_only_udm.target.administrative_domain SecureAuthIdPAppliance 字段的值
SecureAuthIdPApplianceMachineName read_only_udm.target.hostname SecureAuthIdPApplianceMachineName 字段的值
SecureAuthIdPDestinationSiteUrl read_only_udm.target.url SecureAuthIdPDestinationSiteUrl 字段的值
SecureAuthIdPProductType read_only_udm.additional.fields.value.string_value SecureAuthIdPProductType 字段的值
session read_only_udm.network.session_id session 字段的值
spid read_only_udm.target.process.pid spid 字段的值
src read_only_udm.principal.ip src 字段的值
suser read_only_udm.target.user.userid suser 字段的值
UserAgent read_only_udm.network.http.user_agent UserAgent 字段的值
UserHostAddress read_only_udm.principal.nat_ip UserHostAddress 字段的值
UserHostAddress read_only_udm.target.ip UserHostAddress 字段的值
UserID read_only_udm.principal.user.userid UserID 字段的值
版本 read_only_udm.metadata.product_version Version 字段的值
read_only_udm.additional.fields.key 硬编码的值 - 'CompanyName'
read_only_udm.additional.fields.key 硬编码的值 -“公司”
read_only_udm.additional.fields.key 硬编码值 - 'SecureAuthIdPProductType'
read_only_udm.extensions.auth.type 硬编码的值 -“SSO”
read_only_udm.metadata.event_type 如果 SecureAuthIdPAuthGuiMode == 0auth_result == Success,则为“USER_LOGIN”;如果 SecureAuthIdPAuthGuiMode == 0auth_result ==WS-Trust success.,则为“USER_CHANGE_PERMISSIONS”;如果 SecureAuthIdPAuthGuiMode == 0auth_result == Session Aborted,则为“USER_LOGOUT”;如果 UserHostAddress != and `HostName` !=,则为“NETWORK_CONNECTION”;如果 ip != or `HostName` !=,则为“STATUS_UPDATE”;如果 UserHostAddress != and `HostName` ==UserID != `,则为“USER_UNCATEGORIZED”;否则为“GENERIC_EVENT”
read_only_udm.metadata.log_type 硬编码的值 - 'SECUREAUTH_SSO'
read_only_udm.metadata.product_name 硬编码的值 - 'SECUREAUTH_SSO'
read_only_udm.metadata.vendor_name 硬编码的值 - 'SECUREAUTH_SSO'
read_only_udm.target.user.email_addresses not_email 为 false 时,user_email 字段的值
security_result.severity 如果 cn1Label == Prioritycn1 == 1,则为“高”;如果 cn1Label == Prioritycn1 == 2,则为“中”;如果 cn1Label == Prioritycn1 属于 [3, 4],则为“低”;如果 Priority == 1,则为“高”;如果 Priority == 2,则为“中”;如果 Priority 属于 [3, 4],则为“低”

需要更多帮助?从社区成员和 Google SecOps 专业人士那里获得解答。