abiramr44/log-analyzer

GitHub: abiramr44/log-analyzer

一款基于 Python 的安全日志分析工具,通过解析 SSH、Nginx 和 Apache 日志自动检测暴力破解与提权行为,并集成 IP 信誉查询生成结构化报告。

Stars: 2 | Forks: 0

# Log Analyzer — SSH 认证日志安全工具 一个基于 Python 的日志分析工具,用于解析认证日志、检测可疑活动、检查 IP 信誉,并生成 TXT 和 JSON 两种格式的结构化安全报告。 ## 检测内容 - 暴力破解 SSH 登录尝试以及通过 401/403 状态码触发的 Web 暴力破解 - 通过 sudo 提权至 root - 按源 IP 统计的失败登录尝试 ## 功能 - 多格式日志支持:auth.log、nginx 和 Apache 访问日志 - 基于 browser 的 dashboard UI,用于可视化警报(加载 security_report.json) - 检测到 HIGH 严重级别警报时的电子邮件提醒 - 命令行参数支持:可分析任意日志文件 - AbuseIPDB 集成:实时 IP 信誉检查 - 双重报告输出:同时生成 .txt 和 .json 报告 - 模块化代码库:parser、detector、reporter 和 reputation 作为独立模块 ## 支持的日志格式 - auth.log:SSH 暴力破解、失败登录、sudo 提权 - Nginx 访问日志:401/403 状态码激增检测 - Apache 访问日志:401/403 状态码激增检测 ## Dashboard UI 在任何 browser 中打开 dashboard.html 并加载 security_report.json 以可视化查看: - 按严重程度分类的警报摘要卡片 - 包含源 IP 和时间戳的暴力破解尝试表 - 权限提升事件 - 来自 AbuseIPDB 的 IP 信誉分数 ## 电子邮件提醒 在 config.py 中进行配置 — 默认禁用。设置 `EMAIL_ENABLED = True` 并提供 SMTP 凭证,以便在检测到 HIGH 严重级别的事件时接收提醒。 ## 项目结构 log-analyzer/ ├── analyzer.py # 主入口 ├── parser.py # 多格式日志解析模块 ├── detector.py # 检测逻辑 ├── reporter.py # 报告生成(TXT + JSON) ├── reputation.py # AbuseIPDB IP 信誉检查器 ├── notifier.py # 电子邮件提醒模块 ├── config.py # 电子邮件和阈值配置 ├── dashboard.html # 基于 browser 的警报可视化 ├── sample_logs/ # 用于测试的 auth、nginx、apache 示例日志 ├── reports/ # 生成的报告在此输出 └── requirements.txt # Python 依赖项 ## 用法 python3 analyzer.py 示例: python3 analyzer.py sample_logs/auth.log python3 analyzer.py sample_logs/nginx.log python3 analyzer.py sample_logs/apache.log ## 安装说明 pip install -r requirements.txt export ABUSEIPDB_API_KEY="your_api_key_here" 在 https://abuseipdb.com 获取免费的 API key ## 检测逻辑 - 暴力破解 (SSH):标记任何有 3 次及以上失败密码尝试的 IP - 暴力破解 (Web):标记在 nginx/apache 日志中有 3 次及以上 401/403 响应的 IP - Sudo 提权:标记任何提权至 root 的 sudo 命令 - IP 信誉:向 AbuseIPDB 查询所有被标记 IP 的滥用置信度分数 ## 示例输出 [*] Starting log analysis... [*] Target log file: sample_logs/auth.log [+] Parsed 12 log entries [*] Running detections... [*] Checking IP reputation... [+] 192.168.1.105 — Score: 0/100 | Reports: 0 | Status: CLEAN [+] 10.0.0.55 — Score: 0/100 | Reports: 0 | Status: CLEAN [*] Generating report... TOTAL ALERTS: 3 ## 展现的技能 - 使用 Python 正则表达式进行多格式日志解析(auth、nginx、apache) - 跨 SSH 和 Web 攻击向量的基于模式的威胁检测 - AbuseIPDB REST API 集成 - 用于安全警报可视化的基于 browser 的 dashboard - 针对 SOC 工作流的 SMTP 电子邮件提醒 - 双重格式报告生成(TXT + JSON) - 模块化 Python 架构 - 与 SOC 相关的警报分类逻辑 ## 作者 Abiram R — 有志成为 SOC Analyst | ISC2 CC Candidate GitHub: https://github.com/abiramr44 Medium: https://medium.com/@abiramr44 LinkedIn: https://linkedin.com/in/abiramr44
标签:IP信誉查询, Python, URL发现, 免杀技术, 可视化面板, 多模态安全, 安全检测, 无后门, 暴力破解检测, 红队行动, 逆向工具