收集 FireEye HX 日志
支持的平台:
Google SecOps
SIEM
本文档介绍了如何使用 Bindplane 将 FireEye Endpoint Security (HX) 日志收集到 Google 安全运营团队。解析器会尝试将输入消息作为 JSON 进行处理。如果消息不是 JSON 格式,则该服务会使用 Grok 模式提取字段,然后根据提取的事件类型和其他条件执行条件 UDM 映射。
准备工作
- 确保您有一个 Google Security Operations 实例。
- 确保您使用的是 Windows 2016 或更高版本,或者使用了带有
systemd
的 Linux 主机。 - 如果在代理后面运行,请确保防火墙端口处于打开状态。
- 确保您拥有对 FireEye 终端威胁防护的特权访问权限。
获取 Google SecOps 提取身份验证文件
- 登录 Google SecOps 控制台。
- 依次前往 SIEM 设置 > 收集代理。
- 下载提取身份验证文件。将该文件安全地保存在将安装 BindPlane 的系统上。
获取 Google SecOps 客户 ID
- 登录 Google SecOps 控制台。
- 依次选择 SIEM 设置 > 配置文件。
- 复制并保存组织详细信息部分中的客户 ID。
安装 Bindplane 代理
Windows 安装
- 以管理员身份打开命令提示符或 PowerShell。
运行以下命令:
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
Linux 安装
- 打开具有 root 或 sudo 权限的终端。
运行以下命令:
sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
其他安装资源
- 如需了解其他安装选项,请参阅此安装指南。
配置 Bindplane 代理以注入 Syslog 并将其发送到 Google SecOps
访问配置文件:
- 找到
config.yaml
文件。通常,在 Linux 上,该目录位于/etc/bindplane-agent/
目录中;在 Windows 上,该目录位于安装目录中。 - 使用文本编辑器(例如
nano
、vi
或记事本)打开该文件。
- 找到
按如下方式修改
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
根据基础架构中的需要替换端口和 IP 地址。
将
<customer_id>
替换为实际的客户 ID。在获取 Google SecOps 提取身份验证文件部分中,将
/path/to/ingestion-authentication-file.json
更新为身份验证文件的保存路径。
重启 Bindplane 代理以应用更改
如需在 Linux 中重启 Bindplane 代理,请运行以下命令:
sudo systemctl restart bindplane-agent
如需在 Windows 中重启 Bindplane 代理,您可以使用服务控制台,也可以输入以下命令:
net stop BindPlaneAgent && net start BindPlaneAgent
使用界面配置 FireEye HX Event Streamer syslog
- 登录 FireEye HX 管理控制台。
- 前往活动直播。
- 选择在宿主上启用 Event Streamer。
- 保存政策更改。
- 依次前往目的地 > 服务器设置 > 添加 syslog 目的地。
- 提供以下配置详细信息:
- 名称:输入一个唯一名称来标记 Google SecOps 日志收集器。
- IP 地址:输入 Bindplane 代理 IP 地址。
- 端口:输入 Bindplane 代理端口号。
- 保存要应用的更改。
使用 CLI 配置 FireEye HX Event Streamer syslog
- 使用命令行界面 (CLI) 登录 FireEye HX 设备。
运行以下命令以启用配置模式:
enable configure terminal
运行以下命令以添加远程 syslog 服务器目的地:
logging BINDPLANE_IP_ADDRESS port PORT_NUMBER port
- 替换以下内容:
BINDPLANE_IP_ADDRESS
:Google SecOps 转发器 IP 地址PORT_NUMBER
:端口号
- 替换以下内容:
运行以下命令以保存配置详细信息:
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 | 原始日志的 decorators 字段中 FireEye 报告中的恶意软件系列。 |
alert.decorators[].data.fireeye_report.risk_summary | security_result.description | 原始日志的 decorators 字段中 FireEye 报告中的风险摘要。 |
alert.decorators[].data.fireeye_verdict | security_result.severity_details | 原始日志的 decorators 字段中的 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 | 原始日志中的进程名称。如果操作系统是 Windows,则与 alert.event_values.ipv4NetworkEvent/processPath 结合使用以创建完整路径。 |
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 | 原始日志中的身份验证方法。如果值为 local 或 LOCAL ,则设置为 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 | 根据原始日志中的严重级别设置为 LOW 、MEDIUM 或 HIGH 。 |
target_host | read_only_udm.target.hostname | 原始日志中的目标主机名。 |
target_ip | target.ip | 原始日志中的目标 IP 地址。 |
target_ip1 | target.ip | 原始日志中的目标 IPv6 地址。 |
时间戳 | 时间戳 | 原始日志中的时间戳。 |
上行 | target.url | 原始日志中的上游网址。 |
用户名 | target.user.userid | 原始日志中的用户名。 |
变化
2024-12-12
增强功能:
- 添加了对新格式 JSON 日志的支持。
2024-10-23
增强功能:
- 将
cs12
映射到additional.fields
。 - 将
cs9
映射到target.process.file.md5
。
2024-10-15
增强功能:
- 将
account_name
、UUID
、Mitre
、host_details.data.sysinfo.url
、host_details.route
、host_details.data.reported_clone
和host_details.data.timezone
映射到security_result.detection_fields
。 - 将
Desc
映射到metadata.description
。 - 将
Confidence
映射到security_result.confidence
。 - 将
alert.appliance._id
映射到additional.fields
。 - 将
host_details.data.stats.acqs
、host_details.data.stats.alerting_conditions
、host_details.data.stats.alerts
、host_details.data.stats.exploit_alerts
、host_details.data.stats.exploit_blocks
和host_details.data.stats.false_positive_alerts
映射到security_result.detection_fields
。
2024-09-12
增强功能:
- 将
categoryOutcome
、cs13
映射到additional.fields
。 - 将
cs6
映射到target.process.file.sha1
。 - 将
cs9
映射到target.process.file.md5
。
2024-08-28
增强功能:
- 将
host_details.message
映射到security_result.action_details
。 - 将
alert.md5values
、alert.resolution
、alert.is_false_positive
和alert.alert_type
映射到additional.fields
。 - 将
type.threat_type
映射到security_result.threat_name
。 - 将
ent.lms_event_id
映射到metadata.product_log_id
。 - 将
email.smtp.mail_from
映射到network.email.from
。 - 将
email.headers.subject
映射到network.email.subject
。 - 将
email.headers.to
映射到network.email.to
。 - 将
ent.type
、ent.id
、ent.name
、ent.object_source
、ent.binary
和ent.attributes.scan_id
映射到security_result.detection_fields
。
2024-08-13
增强功能:
- 将
cs11Label
映射到additional_cs11Label.key
。 - 将
cs11
映射到additional_cs11.value
。
2024-04-04
增强功能:
- 添加了 Grok 模式,用于检索 JSON 数据以解析未解析的日志。
- 将
alert.sysinfo.mac_address
映射到principal.mac
。 - 将
host_details.data.agent_version
映射到metadata.product_version
。 - 将
alert.url
映射到metadata.url_back_to_product
。 - 将
description
映射到metadata.description
。 - 将
alert.event_type
映射到metadata.product_event_type
。 - 将
alert.agent._id
映射到principal.asset.asset_id
。 - 将
alert.event_id
映射到metadata.product_log_id
。
2024-04-03
增强功能:
- 将
deviceCustomDate1Label
映射到additional_deviceCustomDate1.key
。 - 将
deviceCustomDate1
映射到additional_deviceCustomDate1.value
。 - 将
deviceCustomDate2
映射到additional_deviceCustomDate2.value
。
2024-04-02
增强功能:
- 向
fileHash
添加了正则表达式检查,以分别映射 md5 和 sha256。
2024-01-04
增强功能:
- 添加了对丢弃的日志的支持。
- 将
client
映射到principal.ip
。 - 将
principal_ip
映射到principal.ip
。 - 将
remoteaddress
映射到principal.ip
。 - 将
host_
映射到principal.hostname
。 - 将
line
映射到principal.application
。 - 将
username
映射到principal.user.userid
。 - 将
client_app_type
映射到principal.resource.attribute.labels
。 - 将
upstream
映射到target.url
。 - 将
role
映射到target.user.role_name
。 - 将
server
映射到target.resource.attribute.labels
。 - 将
localusername
映射到target.user.user_display_name
。 - 将
request
映射到additional.fields
。 - 将
mlocked
映射到additional.fields
。 - 将
kernel_stack
映射到additional.fields
。 - 将
sessionID
映射到network.session_id
。 - 将
auth_mechanism
映射到extensions.auth.mechanism
。 - 将
authsubmethod
映射到extensions.auth.auth_details
。
2023-05-08
增强功能:
- 支持新的 JSON 日志类型。
client_ip
已映射到principal.ip
。client_src_port
已映射到principal.port
。ssl_version
映射to
network.tls.version_protocol`。ssl_cipher
已映射到network.tls.cipher
。method
已映射到network.http.method
。uri_path
已映射到network.http.referral_url
。persistent_session_id
已映射到network.session_id
。uri_query
已映射到additional.fields
。rewritten_uri_query
已映射到additional.fields
。virtualservice
已映射到additional.fields
。service_engine
已映射到additional.fields
。etag
已映射到additional.fields
。pool
已映射到additional.fields
。pool_name
已映射到additional.fields
。request_state
已映射到additional.fields
。compression
已映射到additional.fields
。vs_name
已映射到additional.fields
。request_id
已映射到additional.fields
。headers_received_from_server.Server
已映射到additional.fields
。headers_received_from_server.X-Request-Id
已映射到additional.fields
。headers_received_from_server.X-Server-Id
已映射到additional.fields
。
2023-04-24
增强功能:
- 添加了对 CEF 格式日志的支持。
2022-08-19
bug 修复:
- 将 event_values.ipv4NetworkEvent/localIP 映射到
principal.ip
。 - 将日志中的事件重命名为 event1,以避免出现描述符错误。
- 在将 host_details.data.primary_ip_address 映射到
principal.ip
之前,向其添加了 null 检查。 - 在映射到
principal.mac
之前,向 host_details.data.primary_mac 添加了 null 检查。 - 在将 alert.reported_at 映射到
event.timestamp
之前,添加了 null 检查。
需要更多帮助?向社区成员和 Google SecOps 专业人士寻求解答。