2. SIEM 日志源接入与解析验证

SIEM 日志源接入与解析验证 学习卡片

为什么“接进来”不等于“能用”

SIEM 的价值取决于日志能否被正确解析成可检索字段。防火墙、终端 EDR、身份认证(AD/SSO)三类日志源的原始格式差异很大:防火墙多为 syslog 键值对,终端多为 JSON,身份认证常为 Windows 事件日志或 CSV 导出。接入后必须验证“原始日志 → 解析 → 字段映射 → 可检索”这条链路,否则告警规则会因字段缺失而失效。

SIEM 日志源接入与解析验证链路 防火墙 syslog / KV 格式 终端 EDR JSON 格式 身份认证 Windows 事件 / CSV 采集器 Syslog / Agent API 拉取 文件监控 解析引擎 正则 / Grok JSON 解析器 字段映射表 索引存储 字段可检索 告警规则匹配 仪表盘展示 解析验证检查点 ① 原始日志到达 确认采集器有数据流入 ② 解析规则命中 检查 parser 是否匹配 ③ 字段映射正确 src_ip / user / action ④ 字段可检索 用查询语句验证 ⑤ 告警规则触发 模拟攻击验证 ⑥ 仪表盘可见 确认可视化正常

三类日志源的接入与解析要点

日志源典型格式接入方式关键字段解析难点
防火墙syslog KVSyslog 接收器src_ip, dst_ip, dst_port, action不同厂商键名不一致
终端 EDRJSONAPI 拉取 / Agenthostname, process, user, hash嵌套 JSON 需展平
身份认证Windows 事件 / CSVWinlogbeat / 文件监控user, src_ip, event_id, result事件 ID 语义映射

解析规则配置示例(Grok 模式)

以防火墙 syslog 为例,原始日志行:

2024-06-15T10:23:45Z fw01 action=deny src=10.1.2.3 dst=192.168.1.10 dport=445 proto=tcp

对应的 Grok 解析规则:

%{TIMESTAMP_ISO8601:timestamp} %{WORD:device} action=%{WORD:action} src=%{IP:src_ip} dst=%{IP:dst_ip} dport=%{NUMBER:dst_port} proto=%{WORD:protocol}

解析后应得到字段:timestamp、device、action、src_ip、dst_ip、dst_port、protocol。若 src_ip 为空,说明正则未匹配到 IP 段,需检查日志中是否含额外空格或字段顺序变化。

字段映射验证查询

解析配置完成后,用以下查询验证字段是否可检索:

# 验证防火墙字段
action:deny AND src_ip:10.1.2.3 AND dst_port:445

# 验证终端字段
hostname:PC-001 AND process_name:powershell.exe

# 验证身份认证字段
event_id:4625 AND user:admin AND result:failed

若查询返回结果,说明字段已正确映射并可检索;若返回空,需回到解析规则检查字段名是否与索引映射一致。

验证顺序建议:先确认原始日志到达 → 再确认解析规则命中 → 再确认字段映射正确 → 最后确认告警规则可触发。每一步都应有明确的检查命令或查询语句,避免跳步排查。
常见坑:字段名大小写不一致(如 src_ip vs srcIP)、时间戳格式未统一导致排序错乱、JSON 嵌套字段未展平导致无法直接检索。接入前先与日志源负责人确认字段命名规范。

接入验证检查清单

  • 采集器状态:确认 syslog/agent/API 连接正常,无丢包或认证失败。
  • 原始日志:在 SIEM 搜索界面确认能看到原始日志行。
  • 解析命中:检查 parser 匹配率,未命中日志需单独分析。
  • 字段映射:逐字段核对 src_ip、user、action、timestamp 等关键字段。
  • 可检索性:用字段查询语句验证返回结果。
  • 告警联动:模拟一条攻击日志,确认告警规则能触发并生成事件。