收集 FireEye HX 日志

支持的语言:

本文档介绍了如何使用 Bindplane 将 FireEye Endpoint Security (HX) 日志收集到 Google Security Operations。解析器会尝试将输入消息处理为 JSON。如果消息不是 JSON 格式,则使用 grok 模式提取字段,然后根据提取的事件类型和其他条件执行有条件的 UDM 映射。

准备工作

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

获取 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: 'FIREEYE_HX'
                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
    

使用界面配置 FireEye HX Event Streamer syslog

  1. 登录 FireEye HX 管理控制台。
  2. 前往 Event Streamer
  3. 选择 Enable Event Streamer on the host
  4. 保存政策更改。
  5. 依次前往目的地 > 服务器设置 > 添加 Syslog 目的地
  6. 提供以下配置详细信息:
    • 名称:输入用于标记 Google SecOps 日志收集器的唯一名称。
    • IP 地址:输入 Bindplane 代理 IP 地址。
    • 端口:输入 Bindplane 代理端口号。
  7. 保存更改以应用。

使用 CLI 配置 FireEye HX Event Streamer syslog

  1. 使用命令行界面 (CLI) 登录 FireEye HX 设备。
  2. 运行以下命令以启用配置模式:

    enable
    configure terminal
    
  3. 运行以下命令以添加远程 syslog 服务器目标:

    logging BINDPLANE_IP_ADDRESS port PORT_NUMBER port
    
    • 替换以下内容:
      • BINDPLANE_IP_ADDRESS:Google SecOps 转发器的 IP 地址
      • PORT_NUMBER:端口号
  4. 运行以下命令以保存配置详细信息:

    write mem
    

UDM 映射表

日志字段 UDM 映射 逻辑
alert.agent._id principal.asset.asset_id 原始日志中的代理 ID,以 AGENT ID: 为前缀
alert.agent.url principal.labels.value 原始日志中的代理网址。
alert.condition._id additional.fields.value.string_value 原始日志中的条件 ID,移除了 = 个字符。
alert.condition.url additional.fields.value.string_value 原始日志中的条件网址,移除了 = 个字符。
alert.decorators[].data.fireeye_report.indicator_verdict.malware_families.0 security_result.threat_name 原始日志的装饰器字段中的 FireEye 报告中的恶意软件系列。
alert.decorators[].data.fireeye_report.risk_summary security_result.description 原始日志的装饰器字段中 FireEye 报告的风险摘要。
alert.decorators[].data.fireeye_verdict security_result.severity_details 原始日志的装饰器字段中的 FireEye 判定。
alert.event_at read_only_udm.metadata.event_timestamp 原始日志中的事件时间戳。
alert.event_id read_only_udm.metadata.product_log_id 原始日志中的事件 ID。
alert.event_type read_only_udm.metadata.product_event_type 原始日志中的事件类型。
alert.event_values.fileWriteEvent/fullPath target.file.full_path 从原始日志写入的文件的完整路径。
alert.event_values.fileWriteEvent/md5 target.file.md5 从原始日志写入的文件的 MD5 哈希。
alert.event_values.fileWriteEvent/pid principal.process.pid 从原始日志写入文件的进程 ID。
alert.event_values.fileWriteEvent/processPath principal.process.file.full_path 从原始日志中写入文件的进程的路径。与 alert.event_values.fileWriteEvent/process 结合使用,可在操作系统为 Windows 时创建完整路径。
alert.event_values.fileWriteEvent/size target.file.size 从原始日志写入的文件的大小。
alert.event_values.fileWriteEvent/username principal.user.userid 从原始日志中写入文件的用户。
alert.event_values.ipv4NetworkEvent/localIP principal.ip 原始日志中的本地 IP 地址。
alert.event_values.ipv4NetworkEvent/localPort principal.port 原始日志中的本地端口。
alert.event_values.ipv4NetworkEvent/pid principal.process.pid 原始日志中的进程 ID。
alert.event_values.ipv4NetworkEvent/process principal.process.file.full_path 原始日志中的进程名称。与 alert.event_values.ipv4NetworkEvent/processPath 结合使用,可在操作系统为 Windows 时创建完整路径。
alert.event_values.ipv4NetworkEvent/processPath principal.process.file.full_path 原始日志中的进程路径。与 alert.event_values.ipv4NetworkEvent/process 结合使用,可在操作系统为 Windows 时创建完整路径。
alert.event_values.ipv4NetworkEvent/protocol network.ip_protocol 原始日志中的网络协议。
alert.event_values.ipv4NetworkEvent/remoteIP target.ip 原始日志中的远程 IP 地址。
alert.event_values.ipv4NetworkEvent/remotePort target.port 原始日志中的远程端口。
alert.event_values.ipv4NetworkEvent/timestamp read_only_udm.metadata.event_timestamp 原始日志中的事件时间戳。
alert.event_values.ipv4NetworkEvent/username principal.user.userid 原始日志中的用户。
alert.event_values.processEvent/md5 target.process.file.md5 原始日志中进程的 MD5 哈希值。
alert.event_values.processEvent/parentPid principal.process.pid 原始日志中的父进程 ID。
alert.event_values.processEvent/parentProcess principal.process.file.full_path 原始日志中的父进程名称。
alert.event_values.processEvent/parentProcessPath principal.process.file.full_path 原始日志中的父进程路径。
alert.event_values.processEvent/pid target.process.pid 原始日志中的进程 ID。
alert.event_values.processEvent/process target.process.file.full_path 原始日志中的进程名称。
alert.event_values.processEvent/processCmdLine target.process.command_line 原始日志中的进程命令行。
alert.event_values.processEvent/processPath target.process.file.full_path 原始日志中的进程路径。
alert.event_values.processEvent/timestamp read_only_udm.metadata.event_timestamp 原始日志中的事件时间戳。
alert.event_values.processEvent/username principal.user.userid 原始日志中的用户。
alert.event_values.urlMonitorEvent/hostname target.hostname 原始日志中的主机名。
alert.event_values.urlMonitorEvent/localPort principal.port 原始日志中的本地端口。
alert.event_values.urlMonitorEvent/pid principal.process.pid 原始日志中的进程 ID。
alert.event_values.urlMonitorEvent/process principal.process.file.full_path 原始日志中的进程名称。与 alert.event_values.urlMonitorEvent/processPath 结合使用,可在操作系统为 Windows 时创建完整路径。
alert.event_values.urlMonitorEvent/processPath principal.process.file.full_path 原始日志中的进程路径。与 alert.event_values.urlMonitorEvent/process 结合使用,可在操作系统为 Windows 时创建完整路径。
alert.event_values.urlMonitorEvent/remoteIpAddress target.ip 原始日志中的远程 IP 地址。
alert.event_values.urlMonitorEvent/remotePort target.port 原始日志中的远程端口。
alert.event_values.urlMonitorEvent/requestUrl target.url 原始日志中的请求网址。
alert.event_values.urlMonitorEvent/timestamp read_only_udm.metadata.event_timestamp 原始日志中的事件时间戳。
alert.event_values.urlMonitorEvent/urlMethod network.http.method 原始日志中的 HTTP 方法。
alert.event_values.urlMonitorEvent/userAgent network.http.user_agent 原始日志中的用户代理。
alert.event_values.urlMonitorEvent/username principal.user.userid 原始日志中的用户。
alert.indicator._id security_result.about.labels.value 原始日志中的指示器 ID。
alert.indicator.name read_only_udm.security_result.summary 原始日志中的指标名称。
alert.indicator.url security_result.about.labels.value 原始日志中的指示器网址。
alert.multiple_match read_only_udm.metadata.description 原始日志中的多重匹配消息。
alert.source additional.fields.value.string_value 原始日志中提醒的来源。
authmethod extensions.auth.mechanism 原始日志中的身份验证方法。如果值为 localLOCAL,则设置为 LOCAL;否则,设置为 MECHANISM_OTHER
authsubmethod extensions.auth.auth_details 原始日志中的身份验证子方法,已转换为大写。
客户端 principal.ip 原始日志中的客户端 IP 地址。
conditions.data.tests[].token security_result.detection_fields.key 原始日志中条件测试的令牌。
conditions.data.tests[].value security_result.detection_fields.value 原始日志中条件测试的值。
说明 read_only_udm.metadata.description 原始日志中的说明。
host.agent_version read_only_udm.metadata.product_version 原始日志中的代理版本。
host.containment_state read_only_udm.principal.containment_state 原始日志中的包含状态。
host.domain read_only_udm.principal.administrative_domain 原始日志中的网域。
host.hostname read_only_udm.principal.hostname 原始日志中的主机名。
host.os.platform read_only_udm.principal.platform 原始日志中的操作系统平台。
host.os.product_name read_only_udm.principal.platform_version 原始日志中的操作系统产品名称。
host.primary_ip_address read_only_udm.principal.ip 原始日志中的主要 IP 地址。
host.primary_mac read_only_udm.principal.mac 原始日志中的主要 MAC 地址,其中 - 个字符已替换为 :
host_ principal.hostname 原始日志中的主机名。
host_details.data.agent_version read_only_udm.metadata.product_version 原始日志中的代理版本。
host_details.data.containment_state read_only_udm.security_result.severity_details 原始日志中的包含状态。
host_details.data.domain read_only_udm.principal.administrative_domain 原始日志中的网域。
host_details.data.hostname read_only_udm.principal.hostname 原始日志中的主机名。
host_details.data.os.platform read_only_udm.principal.platform 原始日志中的操作系统平台。
host_details.data.os.product_name read_only_udm.principal.platform_version 原始日志中的操作系统产品名称。
host_details.data.primary_ip_address read_only_udm.principal.ip 原始日志中的主要 IP 地址。
host_details.data.primary_mac read_only_udm.principal.mac 原始日志中的主要 MAC 地址,其中 - 个字符已替换为 :
indicators.data.description read_only_udm.metadata.description 原始日志中的指标说明。
line target.application 原始日志中的相应行。
localusername target.user.user_display_name 原始日志中的本地用户名。
principal_ip principal.ip 原始日志中的主 IP 地址。
原始事件 read_only_udm.principal.application 原始日志中的进程名称。
process_id read_only_udm.principal.process.pid 原始日志中的进程 ID。
referrer network.http.referral_url 原始日志中的引荐来源网址。
remoteaddress principal.ip 原始日志中的远程地址。
请求 additional.fields.value.string_value 来自原始日志的请求。
角色 target.user.role_name 原始日志中的角色。
服务器 target.resource.attribute.labels.value 原始日志中的服务器。
sessionID network.session_id 原始日志中的会话 ID。
和程度上减少 security_result.severity 根据原始日志中的严重程度设置为 LOWMEDIUMHIGH
target_host read_only_udm.target.hostname 原始日志中的目标主机名。
target_ip target.ip 原始日志中的目标 IP 地址。
target_ip1 target.ip 原始日志中的目标 IPv6 地址。
时间戳 时间戳 原始日志中的时间戳。
上行 target.url 原始日志中的上游网址。
用户名 target.user.userid 原始日志中的用户名。

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