收集 Cisco 防火墙服务模块 (FWSM) 日志

支持的语言:

本文档介绍了如何使用 Bindplane 将 Cisco 防火墙服务模块 (FWSM) 日志注入到 Google Security Operations。解析器首先使用 Grok 模式从设备 syslog 消息中提取时间戳、IP 地址和事件说明等常见字段。然后,它会将提取的信息映射到标准化的统一数据模型 (UDM) 架构,转换数据类型、重命名字段,并根据特定值和关键字丰富输出内容,添加与安全性相关的分类。

准备工作

请确保满足以下前提条件:

  • Google SecOps 实例
  • Windows 2016 或更高版本,或者具有 systemd 的 Linux 主机
  • 如果通过代理运行,请确保防火墙端口处于开放状态
  • Cisco FWSM 设备的特权访问权限

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

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

获取 Google SecOps 客户 ID

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

安装 Bindplane 代理

按照以下说明在 Windows 或 Linux 操作系统上安装 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
    

其他安装资源

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

配置 Bindpolane 代理以接收 Syslog 并将其发送到 Google SecOps

  1. 访问配置文件:
    • 找到 config.yaml 文件。通常,它位于 Linux 上的 /etc/bindplane-agent/ 目录中或 Windows 上的安装目录中。
    • 使用文本编辑器(例如 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_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_FWSM'
            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 FWSM 上配置 Syslog

  1. 使用 SSH 或控制台连接登录 Cisco FWSM。
  2. 配置日志记录:

    logging on
    
  3. 配置日志记录级别:

    logging trap <level>
    
    • 将日志记录陷阱级别更改为 6(信息)。
  4. 配置 syslog 设置:

    logging host [interface] bindplane_ip_address udp[/bindplane_port]
    

UDM 映射表

日志字段 UDM 映射 逻辑
1.1.1.1 observer.ip 使用 grok 模式从日志消息中提取。
2.2.2.2 principal.ip
target.ip
使用 grok 模式从日志消息中提取。系统会根据连接方向将目标 IP 映射到 principal.ip 或 target.ip。如果为 dst outside,则会映射到 principal.ip,否则会映射到 target.ip。
3.3.3.3 principal.ip
target.ip
使用 grok 模式从日志消息中提取。系统会根据连接的方向将源 IP 映射到 principal.ip 或 target.ip。如果为 dst outside,则会映射到 principal.ip,否则会映射到 target.ip。
4 月 3 日 10:35:40 UDM 中未捕获此时间戳。
4 月 3 日 10:44:38 UDM 中未捕获此时间戳。
4 月 3 日 11:20:34 UDM 中未捕获此时间戳。
4 月 3 日 11:20:38 UDM 中未捕获此时间戳。
4 月 29 日 16:09:44 UDM 中未捕获此时间戳。
拒绝 security_result.action_details 使用 grok 模式从日志消息中提取。
遭拒 security_result.action_details 使用 grok 模式从日志消息中提取。
FWSM-3-106011 metadata.product_event_type 使用 grok 模式从日志消息中提取。
FWSM-3-313001 metadata.product_event_type 使用 grok 模式从日志消息中提取。
FWSM-4-106023 metadata.product_event_type 使用 grok 模式从日志消息中提取。
FWSM-4-302010 metadata.product_event_type 使用 grok 模式从日志消息中提取。
FWSM-4-302016 metadata.product_event_type 使用 grok 模式从日志消息中提取。
ICMP network.ip_protocol 使用 grok 模式从日志消息中提取并转换为大写。
TCP network.ip_protocol 使用 grok 模式从日志消息中提取并转换为大写。
删除 security_result.action_details 使用 grok 模式从日志消息中提取。
UDP network.ip_protocol 使用 grok 模式从日志消息中提取并转换为大写。
111 target.port 使用 grok 模式从日志消息中提取并转换为整数。如果为 dst outside,则映射到 principal.port,否则映射到 target.port。
17608 principal.port 使用 grok 模式从日志消息中提取并转换为整数。如果为 dst outside,则映射到 principal.port,否则映射到 target.port。
3000 principal.port 使用 grok 模式从日志消息中提取并转换为整数。如果为 dst outside,则映射到 principal.port,否则映射到 target.port。
33103 target.port 使用 grok 模式从日志消息中提取并转换为整数。如果为 dst outside,则映射到 principal.port,否则映射到 target.port。
514 principal.port
target.port
使用 grok 模式从日志消息中提取并转换为整数。如果为 dst outside,则映射到 principal.port,否则映射到 target.port。
metadata.description 原始日志中的整个 descrip 字段会映射到此字段。
metadata.event_timestamp 批处理对象中的时间戳用作事件时间戳。
metadata.event_type 根据来源 IP 和目的地 IP 的存在情况确定:
- NETWORK_CONNECTION:来源 IP 和目的地 IP 均存在。
- STATUS_UPDATE:仅存在来源 IP。
- GENERIC_EVENT:来源 IP 和目标 IP 均不存在。
metadata.product_name 硬编码为 CISCO_FWSM
metadata.vendor_name 硬编码为 CISCO
principal.resource.type 从日志消息中提取的 facility 字段映射而来。
security_result.action 如果 action 字段是 DenyTeardowndeniedDenied 之一,则设置为 BLOCK
security_result.severity 根据 severity_level 字段确定:
- 7、6:信息
- 5:低
- 4:中
- 3:错误
- 2:高
- 其他:严重
network.direction 从日志消息中提取的 direction 字段映射而来。如果 direction 字段为 inbound,则此字段将设置为 INBOUND

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