FuriousFire05/phishguard-ai

GitHub: FuriousFire05/phishguard-ai

结合机器学习与安全启发式规则的钓鱼 URL 智能检测引擎,提供可解释的风险评分、威胁分类及批量扫描能力。

Stars: 1 | Forks: 0

# 🛡️ PhishGuard AI ### 智能钓鱼 URL 检测与风险分析引擎 PhishGuard AI 是一个实用的钓鱼检测系统,它结合了**机器学习**、**URL 情报**和**安全启发式规则**,能够以高准确率识别恶意链接并提供清晰的解释。 本系统以生产环境应用为导向进行构建,超越了简单的分类范畴,提供了**可解释的风险评分**、**攻击模式检测**以及**安全的后端架构**。 ## ⚡ 核心功能 * 🔍 **实时 URL 扫描** 通过训练好的机器学习模型与基于规则的智能分析,即时分析任何 URL * 🧠 **混合检测引擎** 结合了以下技术: * 机器学习 (Random Forest) * 启发式安全规则 * 域名情报 * 🎯 **高准确率检测** * 能够处理棘手的钓鱼 URL,例如: * `google.com.secure-login.xyz` * `paypal.com.login.verify.ru` * 📊 **可解释的结果** * 风险评分 (0–100%) * 威胁分类 (安全 / 可疑 / 严重) * 以人类可读的方式解释为什么该 URL 具有危险性 * 🖼️ **实时网站安全预览** * 通过代理进行截图渲染 * 具备 SSRF 防护的后端 * 📦 **批量 URL 扫描** * 使用真实的后端逻辑同时扫描多个 URL(无虚假/演示回退) ## 🧠 工作原理 ### 1. 特征提取 (共享系统) 所有 URL 都会通过一个集中式的特征处理管道: * URL 长度、信息熵、数字比例 * 子域名模式与深度 * 可疑关键词 (login, verify, secure 等) * 域名结构与 TLD 分析 * 字符分布模式 ### 2. 机器学习模型 * 模型:**Random Forest Classifier** * 训练数据: * 🔴 钓鱼 URL (PhishTank) * 🟢 合法 URL (Tranco Top Domains) * 包含真实世界样本的平衡数据集 ### 3. 风险引擎 (混合逻辑) 最终得分 = **机器学习预测 + 安全启发式规则** 增强功能包括: * 品牌冒充检测 * 可疑子域名检测 * 受信任域名的软调整(非盲目信任) ### 4. 安全的后端处理 * FastAPI 后端 * 截图端点的 SSRF 防护 * 安全的 URL 处理与验证 ## 📁 项目结构 ``` phishguard/ │ ├── backend/ # FastAPI backend ├── frontend/ # Web UI ├── model/ # Training + dataset pipeline ├── shared/ # Feature extraction logic │ ├── requirements.txt └── README.md ``` ## 🚀 快速开始 ### 1. 克隆仓库 ``` git clone cd phishguard ``` ### 2. 安装依赖 ``` pip install -r requirements.txt ``` ### 3. 准备数据集 (必需) 您需要: * PhishTank URL (钓鱼数据集) * Tranco 顶级域名 (合法数据集) 将它们放置在以下路径: ``` model/phishtank_urls.csv model/legit_urls.csv ``` ### 4. 构建数据集 ``` python model/build_dataset.py ``` ### 5. 训练模型 ``` python model/train_model.py ``` ### 6. 运行后端 ``` uvicorn backend.app:app --reload ``` ### 7. 打开前端 访问: ``` frontend/index.html ``` ## 🔒 安全考量 * 截图端点已实现 SSRF 防护 * 对已知域名不盲目信任 * 后端在处理前会验证所有 URL ## 📈 结果示例 | URL | 风险 | | --------------------------- | --------------- | | google.com | 0% (安全) | | amazon.com | 0% (安全) | | google.com.secure-login.xyz | 90%+ (严重) | | paypal.com.login.verify.ru | 95%+ (严重) | ## 🧠 技术栈 * **后端:** FastAPI * **前端:** Vanilla JS + HTML/CSS * **机器学习:** Scikit-learn (Random Forest) * **数据:** Pandas,真实世界数据集 ## 🎯 未来改进 * 模型校准 (置信度调整) * 困难负样本数据集扩充 * 云端部署 (API + UI) * 浏览器扩展集成 ## 👨‍💻 作者 本项目作为一个全栈 AI 安全项目构建,重点关注: * 真实世界的适用性 * 系统设计 * 机器学习与安全的结合 ## ⭐ 结语 这不仅是一个分类器——它是一个**钓鱼情报系统**,旨在反映真实检测管道的运作方式。 如果您觉得这个项目有用,请考虑给仓库点个 Star ⭐。
标签:Apex, DNS枚举, GraphQL安全矩阵, Python, SSRF防护, URL扫描, Web安全, XSS, 人工智能安全, 反钓鱼, 可解释性, 合规性, 后端开发, 品牌冒充, 域名情报, 多模态安全, 威胁分类, 安全启发式, 安全扫描器, 实时检测, 恶意链接, 数据可视化, 无后门, 机器学习, 混合检测引擎, 漏洞情报, 特征提取, 网络安全, 网络安全工具, 蓝队分析, 逆向工具, 钓鱼检测, 随机森林, 隐私保护, 风险分析, 风险评分