BettinaSM/threat-detection-lab2
GitHub: BettinaSM/threat-detection-lab2
模拟多平台 SOC 安全运营流水线的教学实验环境,涵盖日志收集、规则检测引擎、威胁关联分析和轻量级 SIEM 界面。
Stars: 0 | Forks: 0
# 威胁检测实验室 2 - 多平台 SIEM 模拟
## 概述
本项目模拟了一个真实的安全运营中心 (SOC) pipeline,包括日志收集、检测工程、关联分析以及一个轻量级的 SIEM 界面。
它演示了如何处理、分析和调查来自多个平台的安全事件。
## 架构
数据 → 解析器 → 检测引擎 → 关联分析 → 输出 → SIEM
## 支持的平台
- Linux (系统日志)
- AIX (审计日志)
- Unix (messages 日志)
- Cloud (类 CloudTrail 的 JSON 日志)
## 功能特性
- 多源日志收集
- 日志标准化层
- 基于规则的检测引擎 (Detection as Code)
- 威胁关联引擎
- 严重级别分类
- SIEM 模拟包含:
- 仪表盘视图
- 告警搜索功能
## 项目结构
## 支持的平台
- Linux (系统日志)
- AIX (审计日志)
- Unix (messages 日志)
- Cloud (类 CloudTrail 的 JSON 日志)
## 功能特性
- 多源日志收集
- 日志标准化层
- 基于规则的检测引擎 (Detection as Code)
- 威胁关联引擎
- 严重级别分类
- SIEM 模拟包含:
- 仪表盘视图
- 告警搜索功能
## 项目结构
threat-detection-lab2/
├── data/
├── detection/
├── rules/
├── siem/
├── output/
├── main.py
## 检测引擎
检测使用外部化规则实现:
- 规则定义在 `rules/detection_rules.json` 中
- 每个规则包含:
- name (名称)
- keywords (关键字)
- severity (严重级别)
此方法遵循现代检测工程 (Detection Engineering) 实践。
## 关联引擎
关联引擎用于识别告警之间的模式。
示例:
- 多次身份验证失败 → 潜在的暴力破解攻击
## SIEM 模拟
本项目包含一个轻量级的 SIEM 界面:
### 仪表盘
显示:
- 告警总数
- 关联威胁
- 按类型划分的告警分布
### 搜索
允许基于关键字对所有告警进行调查。
## 如何运行
### 1. 执行检测 pipeline
python3 main.py
### 2. 启动 SIEM 界面
python3 siem/app.py
## 示例输出
生成的文件:
output/alerts.json
包含:
- 告警
- 关联
- 严重级别汇总
- 时间戳
## 应用场景
- 安全监控模拟
- 检测工程实践
- SOC 工作流演示
- SIEM 基础知识学习
## 未来改进
- MITRE ATT&CK 映射
- Sigma 规则支持
- 实时日志收集
- 集成云原生日志 (AWS, GCP, Azure)
- 可视化仪表盘 (Grafana / Kibana)
## 展示技能
- 检测工程 (Detection Engineering)
- 日志分析
- 安全自动化
- Python 安全应用
- SIEM 概念
- 多平台安全监控
## 作者
本项目作为 DevSecOps 与云安全学习路线图的一部分而开发。
标签:AIX, AMSI绕过, CloudTrail, Homebrew安装, PoC, Python, Unix, 云计算, 代理支持, 代码化检测, 关联分析, 告警, 多平台, 威胁检测, 子域名变形, 安全仪表盘, 安全合规, 安全运营中心, 异常检测, 攻击模拟, 数字足迹, 数据摄取, 无后门, 日志归一化, 日志管道, 暴力破解, 正则匹配, 网络代理, 网络安全, 网络映射, 规则引擎, 逆向工具, 隐私保护, 驱动签名利用