在日常的应急响应和溯源分析中,面对海量的服务器日志,安全人员往往需要一款能够快速定位威胁、提取攻击链路的工具。为了解决这一痛点,我开发了 BlueTeam Log Analyzer (BLA)

这是一款专为蓝队设计的轻量级日志分析工具,主打全离线、零依赖、高准确率,能够自动识别并分析 Windows 事件日志、Linux 认证日志以及 Web 访问日志。

GitHub 项目地址https://github.com/Hackerchen716/blueteam-log-analyzer


核心特性

  • 🛡️ 全离线分析:无需联网,无外部 API 调用,完美适应保密机房和隔离网络环境。
  • 轻量零依赖:基于 Python 3.9+ 标准库开发,开箱即用(EVTX 二进制解析为可选依赖)。
  • 🎯 高准确率检测:内置 70+ 真实攻击场景检测规则,覆盖 SQLi、XSS、命令注入、暴力破解、密码喷洒等常见威胁。
  • 🔗 ATT&CK 链路映射:自动将离散的告警事件映射到 MITRE ATT&CK 战术阶段,还原攻击者完整链路。
  • 📊 多维度报告:支持生成交互式 HTML 报告(含图表)、JSON 结构化数据以及 CSV 导出。

支持的日志类型

BLA 能够自动识别并解析以下类型的日志文件:

  1. Windows 事件日志:支持 .evtx 二进制文件(需安装 python-evtx)或导出的 XML 格式(Security、System、Sysmon、PowerShell 等)。
  2. Linux 认证日志/var/log/auth.log/var/log/secure
  3. Web 访问日志:Nginx / Apache 的 Combined 格式访问日志。

安装与使用

安装

Linux / macOS

git clone https://github.com/Hackerchen716/blueteam-log-analyzer.git
cd blueteam-log-analyzer
chmod +x install.sh
./install.sh

Windows

git clone https://github.com/Hackerchen716/blueteam-log-analyzer.git
cd blueteam-log-analyzer
# 运行安装程序(需管理员权限)
install.bat

(可选) 安装 EVTX 二进制解析支持:

pip install python-evtx

基本用法

分析单个或多个日志文件,BLA 会自动识别文件类型:

# 分析单个文件
bla /var/log/auth.log

# 分析多个文件
bla /var/log/auth.log /var/log/nginx/access.log

# 递归分析整个目录
bla /var/log/

生成报告

在应急响应中,生成直观的 HTML 报告有助于快速汇报和复盘:

# 生成交互式 HTML 报告
bla access.log --html report.html

# 生成 JSON 格式供 SIEM 接入
bla auth.log --json report.json

# 导出 CSV 便于 Excel 筛选
bla Security.xml --csv events.csv

输出效果展示

终端分析总览

在终端中,BLA 会输出彩色的分析摘要,包括综合风险评分、ATT&CK 攻击链以及高危告警列表:

╔══════════════════════════════════════════════════════════════════════════════╗
║         BlueTeam Log Analyzer (BLA)  -  Blue Team Incident Response          ║
║                    Version 1.0.0  |  100% Offline  |  No AI                  ║
╚══════════════════════════════════════════════════════════════════════════════╝

📊 分析总览
  综合风险评分: 87/100  [高危]
  分析文件数:   3
  总事件数:     1,247
  告警数量:     12

⛓ ATT&CK 攻击链分析
  ▶ 侦察 (13 事件) → ▶ 初始访问 (3 事件) → ▶ 执行 (4 事件)
  → ▶ 持久化 (2 事件) → ▶ 权限提升 (2 事件) → ▶ 凭据访问 (29 事件)

🚨 威胁告警
  [01] [严重] Web攻击: 命令注入/代码执行
  [02] [高危] 暴力破解攻击 (192.168.1.100, 失败 50 次)
  [03] [高危] 密码喷洒攻击 (针对 17 个账户)
  ...

💡 应急处置建议
  1. 【紧急】封锁攻击源 IP 192.168.1.100
  2. 【高危】审查 root 账户直接登录记录

HTML 报告

生成的 HTML 报告包含风险评分仪表盘、事件级别分布饼图、Top 攻击源 IP 柱状图以及关键事件时间线,非常适合用于应急响应报告的附件。


设计理念与致谢

在开发 BLA 时,我坚持了准确率优先完全离线的原则。安全工具不应该成为泄露敏感日志的渠道,因此 BLA 坚决不使用任何云端 API 或 AI 大模型进行分析,所有检测逻辑均基于本地的规则引擎。

本项目的规则设计参考了 Hayabusa、DeepBlueCLI、Chainsaw 等优秀的开源项目,在此向开源社区致敬。

欢迎各位师傅下载使用,如有 Bug 或新规则建议,欢迎在 GitHub 提交 Issue 或 PR!