BartChmiel/mini-incident-response-threat-hunting-lab

GitHub: BartChmiel/mini-incident-response-threat-hunting-lab

基于 Python/Pandas 的微型事件响应与威胁狩猎实验室,通过结构化样本日志演示常见检测、MITRE 映射和分诊记录生成的完整流程。

Stars: 0 | Forks: 0

# 微型事件响应与威胁狩猎实验室 个人网络安全项目,进行中 2026年5月 - 至今 ## 概述 本实验室使用结构化的 JSON/CSV 日志(用于身份验证、端点和网络安全事件),模拟一个小型的事件响应与威胁狩猎工作流。 当前实现包括: - 身份验证、端点和网络的遥测样本数据。 - 使用 Python/Pandas 检测常见的可疑行为。 - 每种发现类型的 MITRE ATT&CK 映射。 - Markdown 分诊记录,包含时间线重建、受影响实体、指标、严重性、误报考量及后续步骤。 - 已检测到的发现和汇总时间线复查的 CSV 输出。 ## 检测覆盖范围 | 检测项 | 数据源 | ATT&CK 映射示例 | | --- | --- | --- | | 暴力破解身份验证尝试 | `data/auth_logs.csv` | T1110 - Brute Force | | 多次失败后成功登录 | `data/auth_logs.csv` | T1078 - Valid Accounts, T1110 - Brute Force | | 可疑的 PowerShell 执行 | `data/endpoint_events.jsonl` | T1059.001 - PowerShell | | 非工作时间的成功登录 | `data/auth_logs.csv` | T1078 - Valid Accounts | | 特权和账户管理事件 | `data/auth_logs.csv` | T1098 - Account Manipulation | | 可疑的出站网络活动 | `data/network_events.csv` | T1071 - Application Layer Protocol, T1105 - Ingress Tool Transfer | ## 项目结构 ``` mini-incident-response-threat-hunting-lab/ data/ auth_logs.csv endpoint_events.jsonl network_events.csv docs/ mitre_mapping.md reports/ README.md src/ ir_lab/ __init__.py detections.py triage.py run_hunt.py tests/ test_detections.py requirements.txt ``` ## 快速开始 创建虚拟环境并安装依赖: ``` python -m venv .venv .\.venv\Scripts\Activate.ps1 python -m pip install -r requirements.txt ``` 运行狩猎工作流: ``` python .\src\run_hunt.py --data-dir .\data --output-dir .\reports ``` 预期输出: - `reports/findings.csv` - `reports/timeline.csv` - `reports/triage_notes.md` 运行基础测试套件: ``` python -m unittest discover -s tests ``` 如果 `pip install pandas` 提示包已安装,但脚本仍报告 `Missing dependency: pandas`,请通过运行该实验室的同一解释器进行安装: ``` .\.venv\Scripts\python.exe -m pip install -r requirements.txt .\.venv\Scripts\python.exe .\src\run_hunt.py --data-dir .\data --output-dir .\reports ``` ## 示例工作流 1. 从 `data/` 提取结构化样本日志。 2. 在 `src/ir_lab/detections.py` 中运行检测逻辑。 3. 将可疑事件标准化为可用于审计的发现记录。 4. 重建调查时间线。 5. 生成用于分析师审查的 Markdown 分诊记录。 ## 分析师说明 数据集经过有意缩减,并使用了文档专用的 IP 地址范围(例如 `203.0.113.0/24` 和 `198.51.100.0/24`)。这些是安全的占位符,而非真实指标。 本项目被设计为一个作品集实验室,可通过以下方式扩展: - 更多 Windows Event ID 概念。 - Sigma 风格的规则元数据。 - 额外的端点遥测。 - 更真实的身份提供者日志。 - 单元测试和 CI 检查。 - 在 Jupyter 或 Streamlit 中构建仪表板。
标签:Cloudflare, Homebrew安装, IP 地址批量处理, MITRE ATT&CK, OpenCanary, PowerShell监控, Python, 事件分诊, 代码示例, 免杀技术, 安全取证, 安全实验室, 安全运营, 库, 应急响应, 开源安全项目, 异常检测, 扫描框架, 数据分析, 无后门, 暴力破解检测, 端点安全, 红队行动, 网络信息收集, 网络安全, 网络流量分析, 蓝军, 补丁管理, 身份验证安全, 逆向工具, 防御加固, 隐私保护