omobolajiadeyan/log-analyzer

GitHub: omobolajiadeyan/log-analyzer

一款纯Python实现的轻量级日志威胁检测引擎,能够扫描系统和应用日志并将可疑行为自动映射到MITRE ATT&CK框架。

Stars: 0 | Forks: 0

# 日志分析器 一个轻量级的威胁检测引擎,用于扫描系统和应用程序日志文件,以发现攻击迹象、可疑行为和违规策略 —— 并将其映射到 MITRE ATT&CK 框架。 ## 为什么这很重要 日志是安全分析师在事件发生时首先查看的地方。该工具自动执行了手动审查数千行日志的繁琐过程,仅显示带有上下文的关键信息。 ## 功能 - 包含 6 个威胁类别的 13 条内置检测规则 - 为每个告警提供 MITRE ATT&CK 技术映射 - 分析 SSH、认证、Web 访问、系统和应用程序日志 - 自动识别出问题最多的 IP 地址 - 颜色编码的严重级别:`CRITICAL`、`HIGH`、`MEDIUM`、`LOW` - 导出 JSON 以便集成 SIEM 或用于报告 - 只需一条命令即可扫描整个目录下的日志文件 - 零第三方依赖 —— 纯 Python 标准库 ## 检测类别与规则 | ID | 规则 | 类别 | 严重程度 | MITRE | |---|---|---|---|---| | AUTH-001 | 登录失败尝试 | 认证 | MEDIUM | T1110 | | AUTH-002 | 多次登录失败(暴力破解) | 认证 | HIGH | T1110 | | AUTH-003 | Root 登录 | 认证 | HIGH | T1078 | | NET-001 | 检测到端口扫描 | 网络 | HIGH | T1046 | | NET-002 | SQL 注入尝试 | Web 攻击 | CRITICAL | T1190 | | NET-003 | XSS 尝试 | Web 攻击 | HIGH | T1059.007 | | NET-004 | 目录遍历 | Web 攻击 | HIGH | T1083 | | SYS-001 | 权限提升 | 权限提升 | HIGH | T1548 | | SYS-002 | 可疑命令执行 | 执行 | CRITICAL | T1059 | | SYS-003 | 文件删除 | 防御规避 | HIGH | T1070.004 | | SYS-004 | Cron 任务被修改 | 持久化 | MEDIUM | T1053.003 | | MAL-001 | 反向 Shell 指标 | 恶意软件 | CRITICAL | T1059.004 | | MAL-002 | Tor/I2P 连接 | 恶意软件 | HIGH | T1090.003 | ## 安装 ``` git clone https://github.com/oadeyan/log-analyzer.git cd log-analyzer python --version # Requires Python 3.10+ ``` ## 用法 ``` # 分析单个日志文件 python analyzer.py sample_logs/auth.log # 分析目录中的所有日志 python analyzer.py sample_logs/ # 显示每个告警的完整日志行 python analyzer.py sample_logs/ --verbose # 仅显示 HIGH 和 CRITICAL 告警 python analyzer.py sample_logs/ --severity HIGH # 将报告导出为 JSON python analyzer.py sample_logs/ --output report.json # 分析真实系统日志 (Linux) python analyzer.py /var/log/auth.log python analyzer.py /var/log/ ``` ## 示例输出 ``` LOG ANALYZER Threat detection engine for system & application logs Analyzing 2 file(s) with 13 detection rules... ================================================================= LOG ANALYZER REPORT ================================================================= Files analyzed : 2 Total lines : 21 Total alerts : 9 Critical : 2 High : 6 ================================================================= [Authentication] — 5 alert(s) [CRITICAL] Multiple Failed Logins (Brute Force) (AUTH-002) Category : Authentication MITRE : T1110 - Brute Force File : sample_logs/auth.log:6 Detail : Account locked or too many failed attempts — possible brute-force. Top Offending IPs: 192.168.1.105 — 6 alert(s) 203.0.113.99 — 2 alert(s) 10.0.0.50 — 2 alert(s) ``` ## 项目结构 ``` log-analyzer/ ├── analyzer.py # Main CLI entrypoint ├── rules.py # Detection rules with MITRE mappings ├── requirements.txt # No dependencies needed ├── sample_logs/ │ ├── auth.log # Sample SSH/auth log with threats │ └── web_access.log # Sample web log with injection attempts └── README.md ``` ## 作者 **Omobolaji Adeyan** — 网络安全作品集项目 [GitHub](https://github.com/oadeyan)
标签:AMSI绕过, CISA项目, Cloudflare, CSV导出, MITRE ATT&CK, Python, 威胁检测, 安全运营, 扫描框架, 插件系统, 文档结构分析, 无后门, 网络安全审计, 逆向工具