Abhay-tec/CypherScout

GitHub: Abhay-tec/CypherScout

一个基于 Flask 的网络情报分析平台,结合 VirusTotal 与自研机器学习引擎,提供 URL 和文件的风险评估及闭环反馈机制。

Stars: 0 | Forks: 0

# CypherScout CypherScout 是一个基于 Flask 的 URL 和文件安全分析平台,具有以下功能: - URL 风险分析(VirusTotal + 启发式算法 + ML 评分) - 文件深度扫描启发式分析 - Google OAuth 和本地凭证登录 - 通过邮件 OTP 验证码找回密码 - 登录和威胁通知邮件 - 仪表盘指标和历史记录 - 用于 ML 重训练的反馈循环 ## 项目结构 ``` CypherScout/ app/ __init__.py # App factory + OAuth setup config.py # Environment-driven configuration db.py # SQLite connection + schema init ml.py # ML training/prediction engine routes/ web.py # HTML routes api.py # JSON API routes services/ intel.py # URL/file scanning and enrichment logic templates/ # HTML templates main.py # Local run entrypoint wsgi.py # Production WSGI entrypoint requirements.txt Procfile runtime.txt .env.example ``` ## 快速开始(本地) 1. 创建并激活虚拟环境 - Windows (PowerShell): python -m venv .venv .\.venv\Scripts\Activate.ps1 2. 安装依赖 pip install -r requirements.txt 3. 从 `.env.example` 创建 `.env` 并设置所需的密钥: - `SECRET_KEY` - `GOOGLE_CLIENT_ID` - `GOOGLE_CLIENT_SECRET` - `VT_API_KEY` 4. 运行应用 python main.py 5. 打开: - `http://localhost:5000` ## 生产环境部署 使用 WSGI server (Gunicorn) 运行 `wsgi:app`。 ### 示例(Render / Railway / Fly / 类似平台) 1. 根据 `.env.example` 设置环境变量。 2. 构建命令: pip install -r requirements.txt 3. 启动命令: gunicorn --bind 0.0.0.0:$PORT wsgi:app ## 环境变量 | Variable | Required | Description | |---|---|---| | `SECRET_KEY` | 是 | Flask 会话签名密钥 | | `DATABASE_PATH` | 否 | SQLite DB 路径(默认为 `cypher.db`) | | `SESSION_DAYS` | 否 | 会话有效期(天)(默认为 `7`) | | `ALLOW_INSECURE_OAUTH` | 否 | 仅在本地非 HTTPS OAuth 时设为 `true` | | `VT_API_KEY` | 推荐 | VirusTotal API 密钥 | | `GOOGLE_CLIENT_ID` | 是(用于 Google 登录) | OAuth 客户端 ID | | `GOOGLE_CLIENT_SECRET` | 是(用于 Google 登录) | OAuth 客户端密钥 | | `OAUTH_REDIRECT_URI` | 推荐 | 显式 OAuth 回调 URL(例如 `https://your-domain.com/auth`) | | `MAX_UPLOAD_BYTES` | 否 | 文件上传大小上限(默认 20MB) | | `MAIL_ENABLED` | 否 | 启用邮件通知(默认为 `true`) | | `SMTP_HOST` | 是(用于邮件) | SMTP 服务器主机(Gmail: `smtp.gmail.com`) | | `SMTP_PORT` | 否 | SMTP 端口(默认为 `587`) | | `SMTP_USE_TLS` | 否 | 启用 STARTTLS(默认为 `true`) | | `SMTP_USER` | 是(用于邮件) | SMTP 用户名/邮箱 | | `SMTP_PASSWORD` | 是(用于邮件) | SMTP 密码 / Gmail 应用专用密码 | | `MAIL_FROM` | 否 | 发件人邮箱身份 | ## 安全注意事项 - 不要提交 `.env` 或真实的密钥。 - 生产环境中保持 `ALLOW_INSECURE_OAUTH=false`。 - 生产环境中使用 HTTPS 进行 OAuth 回调。 - 上线前轮换 `SECRET_KEY` 和 API 密钥。 - 对于 Gmail SMTP,请使用应用专用密码而非常规账户密码。
标签:AMSI绕过, Apex, Ask搜索, Flask, Google OAuth, Gunicorn, HTTP/HTTPS抓包, ML重训练, Python, SQLite, URL风险分析, VirusTotal, WSGI, 反馈闭环, 后端开发, 启发式扫描, 威胁检测, 安全仪表盘, 安全运营, 态势感知, 情报分析平台, 扫描框架, 文件深度扫描, 无后门, 机器学习, 神经网络引擎, 网络安全, 自动化威胁分析, 逆向工具, 钓鱼检测, 隐私保护, 风险评分