rover-tech/SecureWatch-IDS

GitHub: rover-tech/SecureWatch-IDS

SecureWatch-IDS 是一个基于 Flask 的轻量级入侵检测系统,通过分析 Linux 身份验证日志来识别 SSH 暴力破解攻击并提供实时告警与可视化仪表板。

Stars: 0 | Forks: 0

# 🛡️ SecureWatch IDS 一个基于 Flask 的入侵检测系统(IDS),通过分析身份验证日志来检测 SSH 暴力破解攻击,生成实时警报,并通过交互式仪表板展示安全洞察。 ## 📌 概述 SecureWatch IDS 是一个轻量级的安全监控应用程序,旨在识别潜在的 SSH 暴力破解攻击。该系统解析身份验证日志,基于可配置的阈值检测可疑的登录尝试,将警报存储在 SQLite 数据库中,并在易于使用的 Web 仪表板上将结果可视化。 该项目展示了如何使用 Python 和 Flask 实现日志分析、入侵检测、警报管理和仪表板可视化。 ## ✨ 功能 - 🔍 解析 Linux 身份验证日志(`auth.log`) - 🚨 使用基于阈值的分析检测 SSH 暴力破解攻击 - 📊 带有攻击统计数据的交互式仪表板 - 📈 主要攻击者可视化 - 🗄️ 用于存储警报的 SQLite 数据库 - ⚡ 实时仪表板更新 - 🛠️ 用于模拟和测试的开发者工具 - 🧹 清除警报数据库功能 - 📱 响应式 Web 界面 ## 🏗️ 系统架构 ``` auth.log │ ▼ Log Parser Module │ ▼ Brute Force Detection Engine │ ▼ SQLite Alert Database │ ▼ Flask Web Application │ ▼ SecureWatch Dashboard ``` ## ⚙️ 使用的技术 - Python - Flask - SQLite - HTML5 - CSS3 - JavaScript - Gunicorn - Render ## 📂 项目结构 ``` SecureWatch-IDS/ │ ├── static/ │ ├── style.css │ └── script.js │ ├── templates/ │ └── dashboard.html │ ├── app.py ├── database.py ├── detector.py ├── log_parser.py ├── monitor.py ├── tools.py ├── auth.log ├── requirements.txt ├── Procfile └── runtime.txt ``` ## 🔄 工作流程 1. 从 `auth.log` 读取身份验证日志。 2. 解析日志条目,提取时间戳、用户名、IP 地址和登录状态。 3. 检测在指定时间窗口内来自同一 IP 的多次失败登录尝试。 4. 当超过阈值时生成警报。 5. 将警报存储在 SQLite 数据库中。 6. 在仪表板上显示警报、统计数据和图表。 ## 🚀 安装说明 克隆仓库: ``` git clone https://github.com/rover-tech/SecureWatch-IDS.git ``` 导航到项目目录: ``` cd SecureWatch-IDS ``` 安装依赖: ``` pip install -r requirements.txt ``` 运行应用程序: ``` python app.py ``` 打开浏览器并访问: ``` http://127.0.0.1:5000 ``` ## 🧪 开发者工具 SecureWatch 包含内置的测试实用程序: - 模拟 SSH 攻击 - 生成示例日志 - 刷新仪表板 - 清除警报数据库 这些工具简化了测试和演示,无需依赖实时服务器。 ## 📸 截图 添加以下内容的截图: - 仪表板 - 分析数据 - 警报日志 - 开发者工具 - 系统健康状况 创建一个名为以下内容的文件夹: ``` screenshots/ ``` 并将图像放置在此处。 ## 🔮 未来增强功能 - 电子邮件通知 - 实时日志监控 - 支持更多攻击类型 - 用户身份验证 - 基于机器学习的异常检测 - 威胁情报集成 - 生成 PDF/CSV 报告 ## 👩‍💻 作者 **Arshia Anand** 计算机科学与工程(AI 与 ML)工学士 网络安全与 AI 爱好者 ## 📄 许可证 本项目专为教育和学术目的而开发。
标签:Flask, Python, SQLite, 数据可视化, 无后门, 逆向工具