diallosanazy/log-triage-bot

GitHub: diallosanazy/log-triage-bot

一个轻量级的日志分析自动化工具,通过预定义规则扫描 Windows 和 Linux 日志中的可疑行为并生成带风险评分的每日事件摘要报告,帮助 SOC 分析师自动化日常分诊工作。

Stars: 0 | Forks: 0

# Log Triage Bot ![Triage 报告预览](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/89482bdbcc182859.svg) [![CI](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/ccde60378f182900.svg)](https://github.com/diallosanazy/log-triage-bot/actions/workflows/ci.yml) 一个小巧的 **Python + PowerShell** 自动化工具,用于扫描 Windows Event Logs 和 Linux syslog/auth.log 查找可疑模式,对其进行评分,并生成每日事件检测摘要。 本项目的目的是自动化 SOC 分析师每天早晨枯燥的前 30 分钟工作:无需手动使用 grep 查找日志,只需运行一条命令即可获得一个“值得查看的事项”的排序列表。 ## 检测内容 | 规则 | 查找目标 | |-------------------------------|------------------------------------------------------------------| | `failed_login_burst` | 5 分钟内来自同一来源的 >= 10 次失败登录 | | `successful_after_failures` | 来自刚刚多次登录失败的 IP 的成功登录 | | `privilege_escalation` | `sudo`、`su -`、`runas`,或新的本地管理员 / sudoers 条目 | | `suspicious_powershell` | 编码命令,`Invoke-Expression`,`DownloadString` 等 | | `unusual_process_spawn` | 从 `winword.exe` 等生成的 `cmd.exe` / `powershell.exe` | 每次匹配都会生成一个带有数字分数(10–100)的发现。分数 ≥ 70 的发现被标记为 **High**;≥ 40 的标记为 **Medium**;其余的标记为 **Low**。 ## 技术栈 - Python 3.10+(仅使用标准库——解析器/评分器无需第三方依赖) - PowerShell 5.1+,用于 `collect_windows_logs.ps1`(写入一个规范化的 JSON 文件) - `sample_logs/` 中的示例日志,使项目开箱即用 ## 快速开始 ``` git clone https://github.com/diallosanazy/log-triage-bot.git cd log-triage-bot # 对捆绑的示例 Log 运行 Triage python triage_bot.py --auth sample_logs/auth.log --syslog sample_logs/syslog \ --windows sample_logs/windows_events.json \ --out reports/today.md cat reports/today.md ``` 要从真实的 Windows 主机提取日志,请首先运行 PowerShell 收集器: ``` .\collect_windows_logs.ps1 -Hours 24 -OutFile windows_events.json ``` 然后让 Python 机器人指向生成的 JSON。 ## 每日摘要报告 该机器人将 Markdown 报告写入 `reports/.md`,包含三个部分: 1. **高优先级发现**(分数 >= 70)——当前需要查看的内容。 2. **中/低优先级发现**——用于日常审查。 3. **统计信息**——处理的事件数、主要来源 IP、主要用户、时间范围。 将该脚本放入 cron / Task Scheduler 中并每天通过电子邮件发送此文件。 ## 文件结构 ``` log-triage-bot/ ├── triage_bot.py # CLI entrypoint ├── parsers.py # Linux auth.log / syslog / Windows JSON parsers ├── rules.py # Detection rules + scoring ├── collect_windows_logs.ps1 # Pull recent Windows events into normalized JSON ├── sample_logs/ # Realistic sample inputs └── reports/ # Generated reports ``` ## 许可证 MIT
标签:AI合规, AMSI绕过, auth.log, CSV导出, HTTP/HTTPS抓包, IPv6, IT运维, Linux日志, Markdown报告, OpenCanary, PowerShell, Python, Socks5代理, syslog, Windows事件日志, 免杀技术, 初始访问检测, 威胁检测, 库, 应急响应, 异常行为分析, 态势感知, 恶意命令执行, 搜索语句(dork), 数字取证, 无后门, 日志分类, 日志评分, 暴力破解检测, 权限提升检测, 红队行动, 网络安全, 自动化脚本, 蓝军工具, 逆向工具, 防御矩阵, 隐私保护