Farooq-Syed/threat-hunting-log-analysis

GitHub: Farooq-Syed/threat-hunting-log-analysis

基于 Python 的轻量级威胁狩猎项目,通过分析多平台身份验证日志来检测暴力破解和可疑登录行为,并输出可操作的调查报告与可视化。

Stars: 0 | Forks: 0

# 威胁狩猎日志分析 本项目通过分析身份验证数据,识别暴力破解行为、多次失败后的可疑成功登录,以及具有异常活动模式的源 IP。 它支持三种输入格式: - 标准化的 CSV 身份验证日志 - Linux `auth.log` 样式的 SSH 事件 - 专注于登录活动的 Windows Security 事件导出 ## 功能 - 多格式日志摄入 - 基于源 IP 和用户名的暴力破解检测 - 失败后成功的关联分析 - 异常源 IP 活动检测 - 导出调查结果报告、摘要和图表 - 用于调查演练的轻量级 notebook ## 项目结构 ``` . |-- log_hunter.py |-- requirements.txt |-- .gitignore |-- data/ | |-- sample_auth_logs.csv | |-- sample_linux_auth.log | `-- sample_windows_security_events.csv |-- assets/ | |-- failed_logins_by_ip_sample.png | `-- findings_by_type_sample.png `-- notebooks/ `-- threat_hunting_walkthrough.ipynb ``` ## 安装说明 ``` python -m pip install -r requirements.txt ``` ## 使用方法 运行标准化的 CSV 样本: ``` python log_hunter.py ``` 运行 Linux auth log: ``` python log_hunter.py --input data/sample_linux_auth.log --format linux-auth ``` 运行 Windows Security 事件导出: ``` python log_hunter.py --input data/sample_windows_security_events.csv --format windows-events ``` ## 输出内容 脚本将输出以下文件: - `output/hunting_report.csv` - `output/summary.json` - `output/plots/failed_logins_by_ip.png` - `output/plots/findings_by_type.png` ## 示例图表 按源 IP 统计的失败登录: ![按 IP 统计的失败登录](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/c5630fb38c005411.png) 按类型统计的调查结果: ![按类型统计的调查结果](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/c812f55fa4005417.png) ## 实战说明 本项目围绕常见的身份验证遥测数据设计: - Linux SSH 失败通常以 `Failed password` 和 `Accepted password` 记录的形式出现在 `auth.log` 中 - Windows 登录监控通常使用 Security 事件 `4624` 表示成功登录,使用 `4625` 表示失败登录 ## 后续计划 - 增加基于时间窗口的突发检测 - 结合地理位置或威胁情报丰富源 IP 信息 - 直接解析 EVTX,而不是使用 CSV 导出 - 添加用于 Windows 特定调查示例的 notebook
标签:CSV处理, EDR, Linux auth.log, NoSQL, Python, Windows安全事件, 免杀技术, 安全巡检, 安全脚本, 异常登录检测, 无后门, 日志关联分析, 日志解析, 暴力破解检测, 源IP异常分析, 红队行动, 网络安全, 脆弱性评估, 证书伪造, 身份验证安全, 逆向工具, 隐私保护