收集 Cisco Firepower NGFW 日志
支持的语言:
    
      
      
        
        
        
  
    
      Google SecOps
    
  
      
    
      
      
        
        
        
  
    
      SIEM
    
  
      
    
    
  本文档介绍了如何使用 Bindplane 将 Cisco Firepower 新一代防火墙 (NGFW) 日志注入到 Google Security Operations。解析器会从各种格式(syslog、JSON 及其组合)的日志中提取数据,对时间戳进行归一化处理,并将相关字段映射到统一数据模型 (UDM)。它可处理日志中的常规 syslog 消息和 JSON 格式的载荷,利用 grok 模式和条件逻辑提取事件 ID、严重程度和客户端 IP 等字段,然后根据 HTTP 主机名和 URI 使用标签丰富数据。
准备工作
请确保满足以下前提条件:
- Google SecOps 实例
 - Windows 2016 或更高版本,或者具有 
systemd的 Linux 主机 - 如果通过代理运行,请确保防火墙端口处于开放状态
 - 对 Cisco Firepower 设备的特权访问权限
 
获取 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
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_file_path: '/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 log_type: 'CISCO_FIREPOWER_FIREWALL' raw_log_field: body ingestion_labels: service: pipelines: logs/source0__chronicle_w_labels-0: receivers: - udplog exporters: - chronicle/chronicle_w_labels- 根据基础架构的需要替换端口和 IP 地址。
 - 将 
<customer_id>替换为实际的客户 ID。 - 将 
/path/to/ingestion-authentication-file.json更新为获取 Google SecOps 提取身份验证文件部分中保存身份验证文件的路径。 
重启 Bindplane 代理以应用更改
如需在 Linux 中重启 Bindplane 代理,请运行以下命令:
sudo systemctl restart bindplane-agent如需在 Windows 中重启 Bindplane 代理,您可以使用服务控制台,也可以输入以下命令:
net stop BindPlaneAgent && net start BindPlaneAgent
在 Cisco FirePower 设备上配置 Syslog
- 登录 Firepower 设备管理器网页界面。
 - 依次前往系统设置 > 日志记录设置。
 - 将数据日志记录切换开关切换为启用。
 - 点击 Syslog 服务器下的 + 图标。
 - 点击 Create new Syslog Server。(或者,您也可以在对象 > Syslog 服务器中创建 Syslog 服务器)。
 - 提供以下配置详细信息:
- IP 地址:输入 Bindplane 代理 IP 地址。
 - 协议类型:选择 UDP。
 - 端口号:输入 Bindplane 代理端口号。
 - 选择数据接口或管理接口。
 
 - 点击确定。
 - 从列表中选择新创建的 Syslog 服务器,然后点击确定。
 - 点击用于过滤所有事件的严重程度,然后从列表中选择信息日志记录级别。
 - 点击保存。
 - 依次点击“部署新设置”图标 >“立即部署”。
 - 点击屏幕顶部的政策。
 - 将光标悬停在 ACP 规则的右侧,然后依次点击 修改图标 修改。
 - 前往记录标签页。
 - 选择在连接结束时。
 - 打开选择 Syslog 提醒配置列表。
 - 选择 Bindplane Syslog 服务器。
 - 点击确定。
 - 依次点击“部署新设置”图标 >“立即部署”。
 
UDM 映射表
| 日志字段 | UDM 映射 | 逻辑 | 
|---|---|---|
AccessControlRuleAction | 
security_result.action | 
直接从原始日志映射。值已标准化为 UDM(允许/禁止)。 | 
AccessControlRuleName | 
security_result.rule_name | 
直接从原始日志映射。 | 
ACPolicy | 
security_result.rule_labels.value | 
直接从原始日志映射。键设置为“ACPolicy”。 | 
ApplicationProtocol | 
network.application_protocol | 
直接从原始日志映射。 | 
Client | 
network.http.user_agent | 
直接从原始日志映射。 | 
ClientVersion | 
principal.asset.platform_version | 
直接从原始日志映射。 | 
collection_time.nanos | 
metadata.event_timestamp.nanos | 
直接从原始日志映射。 | 
collection_time.seconds | 
metadata.event_timestamp.seconds | 
直接从原始日志映射。 | 
ConnectionDuration | 
network.session_duration.seconds | 
直接从原始日志映射,必要时转换为秒(例如,从时长格式转换)。 | 
data | 
metadata.description | 
与 eventId 结合使用,可生成更具描述性的说明。还用于使用 Grok 和正则表达式提取其他字段。 | 
deviceId | 
metadata.product_log_id | 
在重命名为 device_uuid 后直接从原始日志映射。 | 
device_uuid | 
metadata.product_log_id | 
直接从原始日志映射。 | 
DstIP | 
target.asset.ip,target.ip | 
直接从原始日志映射。 | 
DstPort | 
target.port | 
直接从原始日志映射。 | 
EgressInterface | 
principal.asset.attribute.labels.value | 
直接从原始日志映射。键设置为“EgressInterface”。 | 
EgressZone | 
target.location.name | 
直接从原始日志映射。 | 
eventId | 
metadata.product_event_type | 
直接从原始日志映射。还用于条件逻辑和过滤。 | 
FileAction | 
security_result.summary | 
直接从原始日志映射。 | 
FileDirection | 
metadata.description | 
直接从原始日志映射并附加到说明中。 | 
FileName | 
target.file.full_path | 
直接从原始日志映射。 | 
FilePolicy | 
security_result.rule_name | 
直接从原始日志映射。 | 
FileSize | 
target.file.size | 
直接从原始日志映射。 | 
FileSHA256 | 
target.file.sha256 | 
直接从原始日志映射。 | 
FileSandboxStatus | 
security_result.description | 
直接从原始日志映射。 | 
HTTPReferer | 
network.http.referral_url | 
直接从原始日志映射。 | 
HTTPResponse | 
network.http.response_code | 
直接从原始日志映射。 | 
HTTP_Hostname | 
target.resource.attribute.labels.value | 
直接从原始日志映射。键设置为“HTTP_Hostname”。 | 
HTTP_URI | 
target.resource.attribute.labels.value | 
直接从原始日志映射。键设置为“HTTP_URI”。 | 
IngressInterface | 
principal.asset.attribute.labels.value | 
直接从原始日志映射。密钥设置为“IngressInterface”。 | 
IngressZone | 
principal.location.name | 
直接从原始日志映射。 | 
InitiatorBytes | 
network.received_bytes | 
直接从原始日志映射。 | 
InlineResult | 
security_result.action_details | 
直接从原始日志映射。 | 
IntrusionPolicy | 
security_result.rule_name | 
直接从原始日志映射。 | 
log_type | 
metadata.log_type | 
直接从原始日志映射。 | 
Message | 
security_result.description | 
直接从原始日志映射,通常以“Message : ”开头。 | 
NAPPolicy | 
principal.asset.attribute.labels.value | 
直接从原始日志映射。键设置为“NAPPolicy”。 | 
Prefilter Policy | 
security_result.rule_labels.value | 
直接从原始日志映射。键设置为“Prefilter Policy”。 | 
Priority | 
security_result.priority_details | 
直接从原始日志映射。 | 
priorityId | 
security_result.priority_details | 
直接从原始日志映射。 | 
product | 
metadata.product_name | 
设置为“Firepower 防火墙”。 | 
Protocol | 
network.ip_protocol | 
直接从原始日志映射。值已归一化为 UDM(TCP、UDP、ICMP 等)。 | 
ResponderBytes | 
network.sent_bytes | 
直接从原始日志映射。 | 
Revision | 
security_result.about.labels.value | 
直接从原始日志映射。键设置为“Singnature_Version”。 | 
ruleId | 
security_result.rule_id | 
直接从原始日志映射。 | 
security_result.severity | 
security_result.severity | 
根据原始日志中的 severity 字段设置,使用查找表映射到 UDM 严重程度值。 | 
security_result.severity_details | 
security_result.severity_details | 
根据原始日志中的 severity 字段设置,使用查找表映射到 UDM 严重程度详细信息。 | 
SID | 
security_result.threat_id | 
直接从原始日志映射。 | 
SrcIP | 
principal.asset.ip,principal.ip | 
直接从原始日志映射。 | 
SrcPort | 
principal.port | 
直接从原始日志映射。 | 
syslog_msg_id | 
metadata.product_event_type | 
直接从原始日志转换成字符串后映射。用于替换 eventId(如果存在)。 | 
syslog_msg_text | 
metadata.description,security_result.description | 
直接从原始日志映射,有时会添加“Message : ”前缀。用于替换从 data 和 eventId 生成的说明。 | 
syslog_severity | 
security_result.severity | 
直接从原始日志转换为字符串后映射。用于替换从 eventId 派生的严重程度。值已标准化为 UDM(INFORMATIONAL、WARNING、ERROR 等)。 | 
sysloghost | 
intermediary.hostname | 
直接从原始日志映射。 | 
ThreatName | 
security_result.threat_name | 
直接从原始日志映射。 | 
ts | 
metadata.event_timestamp | 
使用日期过滤条件和各种格式从原始日志中解析。 | 
ts_year | 
metadata.event_timestamp | 
使用日期过滤条件和各种格式从原始日志中解析。 | 
URL | 
target.url | 
直接从原始日志映射。 | 
URLCategory | 
security_result.category_details | 
直接从原始日志映射。 | 
URLReputation | 
security_result.confidence_details | 
直接从原始日志映射。 | 
User | 
target.user.userid | 
直接从原始日志映射。 | 
UserAgent | 
network.http.user_agent | 
直接从原始日志映射。 | 
UserName | 
target.user.userid | 
直接从原始日志映射。 | 
user_name | 
principal.user.email_addresses | 
直接从特定事件类型的原始日志映射。 | 
WebApplication | 
target.application | 
直接从原始日志映射。 | 
metadata.event_type 设置为默认值 NETWORK_CONNECTION,有时会根据 eventId 或其他字段进行替换。 | 
||
metadata.vendor_name 始终设置为“Cisco”。 | 
需要更多帮助?从社区成员和 Google SecOps 专业人士那里获得解答。