Zeek日志分析入门指南:网络安全监控核心技术解析

本文深入解析Zeek网络监控系统的日志分析技术,涵盖日志类型、唯一标识符解析、网络取证方法及威胁检测实践,帮助安全人员掌握被动式网络监控的核心技术架构与应用场景。

Zeek日志分析入门指南

网络监控工具概述

Zeek(原Bro IDS)是由Vern Paxson于1995年开发的网络监控系统,2016年更名为Zeek。该系统通过被动方式捕获网络流量,生成结构化日志用于安全分析,核心功能包括:

  • 元数据提取与网络取证
  • 协议解析(DNS/HTTP/TLS等)
  • 文件传输记录
  • 加密流量分析(TLS握手/证书信息)

日志生成机制

数据采集模式

  1. 实时流量监控:通过端口镜像或网络分路器捕获流量
  2. 离线PCAP分析:支持对保存的数据包文件进行回溯分析

日志格式

  • TSV格式:默认输出,字段以制表符分隔,包含类型定义行
  • JSON格式:字段自描述,便于SIEM集成但存储开销较大
  • 关键工具:zeek-cut(字段提取)、jq(JSON处理)

核心日志类型解析

连接日志(conn.log)

  • 记录所有连接尝试(包括未成功连接)
  • 字段结构:
    1
    
    TS(时间戳)| UID(唯一ID)| 源IP/端口 | 目标IP/端口 | 协议 | 服务类型 | 持续时间
    
  • 连接状态标识(如S0表示无响应尝试)

应用层协议日志

  • DNS日志:关联查询与响应,记录TTL和记录类型
  • HTTP日志:记录请求方法/URI/事务深度(trans_depth)
  • SSL日志:记录TLS版本/密码套件/SNI(服务器名称指示)
  • 文件传输日志:记录文件哈希(SHA1/MD5)、MIME类型、关联连接ID

关键分析技术

唯一标识符体系

  • 连接ID(UID):关联同一连接的多协议事件
  • 文件ID(FUID):跟踪文件传输,支持嵌套归档分析(parent_fuid)
  • 社区ID(Community ID):基于五元组生成连接指纹

流量方向定义

  • 发起端(Originator):建立连接的初始主机
  • 响应端(Responder):接受连接的主机
  • 本地网络标识(local_orig/local_resp)基于IP段配置

实战应用场景

安全检测

  • 自定义检测规则(通过Notice日志告警)
  • 弱加密协议审计(TLS 1.0/SSHv1)
  • 异常文件传输监控(可执行文件传输)

网络取证

  • 双向流量关联分析
  • 加密流量元数据提取(证书/协议协商)
  • 时间线重建(基于时间戳和持续时间字段)

部署建议

  • 监控位置选择
    • 外部部署:捕获入站攻击但难以定位内网主机
    • 内部部署:检测外联信标但可能错过边界攻击
  • 硬件要求:千兆以下流量可使用商用硬件,高速环境需专用网卡

扩展能力

  • 包管理器(packages.zeek.org):如JA3 TLS指纹插件
  • 自定义脚本:支持协议解析扩展和日志字段增强

通过系统化分析Zeek日志,可构建高效的网络监控体系,实现从基础流量审计到高级威胁狩猎的全场景覆盖。

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计