layan000912/Ai-security-Auditor

GitHub: layan000912/Ai-security-Auditor

一款结合规则引擎与机器学习的 AI 安全日志分析系统,支持多格式日志上传并借助 SHAP 提供可解释的威胁告警。

Stars: 0 | Forks: 0

[README.md](https://github.com/user-attachments/files/29146546/README.md) # Ai-security-Auditor 该项目是一个基于 AI 的网络安全日志分析系统,可处理 CSV、JSON 和 Syslog 文件以检测可疑活动。它结合了基于规则的检测、机器学习和 SHAP 可解释性,以识别威胁并为每个安全警报提供明确的原因。 # 🛡 AI Security Auditor v10 基于 AI 的安全日志分析系统 —— 毕业设计 ## 🚀 运行项目 ``` # 1. 安装依赖项 pip install -r requirements.txt # 2. 运行应用程序 python app.py # 3. 打开浏览器 # http://localhost:5000 ``` ## 📁 项目结构 ``` AI-Security-Auditor-v10/ ├── app.py ← Flask backend (نقطة الدخول) ├── requirements.txt ├── data/ ← ملفات تجريبية وقاعدة البيانات │ ├── sample_logs.csv │ ├── sample_logs.json │ └── sample_logs.log ├── models/ │ ├── preprocess.py ← معالجة البيانات (CSV/JSON/Syslog) │ ├── rules_engine.py ← كشف التهديدات بالقواعد │ └── ai_model.py ← Isolation Forest + Random Forest ├── templates/ │ ├── index.html ← Dashboard الرئيسي (محسّن) │ ├── history.html ← السجل التاريخي + المقارنة │ ├── alerts.html ← مركز التنبيهات │ └── timeline.html ← المخطط الزمني └── utils/ ├── helpers.py ← معالجة الملفات ├── alerts.py ← محرك التنبيهات ├── database.py ← SQLite └── pdf_report.py ← تصدير PDF ``` ## 🧠 系统工作原理 1. **上传文件** — 支持 CSV、JSON、LOG、SYSLOG、TXT 2. **数据处理** — 自动清洗数据并统一列名 3. **检测规则** — 检测:尝试频率、登录失败、可疑用户名、IP 重复 4. **AI 模型** — 训练 Isolation Forest 和 Random Forest 并选择最佳模型 (F1) 5. **Dashboard** — 展示 KPI、图表、警报以及可疑活动表 ## 📊 支持的列(灵活适配) | 列名 | 示例 | |--------|------| | timestamp / date | 2024-01-01 08:00:00 | | ip / source_ip | 192.168.1.10 | | username / user | admin | | service | SSH | | status | failed | | attempts | 7 | | port | 22 | ## ✨ v10 版本更新内容 ### 🔧 修复漏洞 - ✅ 将所有 routes 移至 `if __name__ == "__main__"` 之前(之前在 Gunicorn 下无法运行) - ✅ 在分析 endpoint 上添加了 Rate Limiting(10 次请求/分钟) - ✅ 移除了 Timeline 中的随机数据 —— 当缺少时间数据时显示明确的提示信息 - ✅ 统一了错误提示,以反映实际支持的格式 ### 🎨 界面优化 - ✅ 全新的 Dashboard,配有动态 KPI cards - ✅ 新增阿拉伯语的文本形式 AI 摘要,用于总结结果 - ✅ 动态风险量表 (Risk Gauge) - ✅ IF 和 RF 两种模型的视觉对比,配有 metric bars - ✅ 可疑活动表,支持搜索和实时过滤 - ✅ 分析期间的进度步骤 (Progress Steps) ### 🆕 新功能 - ✅ 一键从 Dashboard 和历史记录中导出 PDF - ✅ 通过对比图表比较任意两次分析结果 - ✅ API endpoint `/api/compare?id1=X&id2=Y` - ✅ 针对所有操作的 Toast notifications ## 🌐 页面 | 页面 | 链接 | 描述 | |--------|--------|-------| | 主页 | `/` | 上传文件并查看结果 | | 历史记录 | `/history` | 所有分析操作 + 对比 | | 警报 | `/alerts` | 安全警报中心 | | 时间线 | `/timeline` | 活动的时间分布 | ## 📡 API Endpoints | Method | Endpoint | 描述 | |--------|----------|-------| | POST | `/analyze` | 分析上传的文件 | | GET | `/api/history` | 所有分析结果 | | GET | `/api/history/` | 单次分析的详情 | | DELETE | `/api/history/` | 删除记录 | | GET | `/api/alerts/` | 分析的警报 | | GET | `/api/report/` | 导出 PDF | | GET | `/api/timeline/` | 时间轴图表数据 | | GET | `/api/compare?id1=&id2=` | 对比两次分析 |
标签:AI安全审计, AMSI绕过, Apex, Flask, Python, 威胁检测, 无后门, 机器学习, 网络测绘, 自定义脚本, 逆向工具