MakwanaOm1615/EnsemblePhish

GitHub: MakwanaOm1615/EnsemblePhish

一个结合规则与机器学习集成的钓鱼网址检测系统,提供实时分析、可解释结果与交互式仪表盘。

Stars: 0 | Forks: 0

# 🛡️ EnsemblePhish — AI-Powered Phishing URL Detection System EnsemblePhish 是一个**专业的网络安全项目**,它通过**基于规则的分析和机器学习集成模型**来检测钓鱼网址。 它旨在通过使用 Streamlit 构建的交互式 Web 界面,提供**准确、可解释且实时的检测**。 ## 🚀 功能特性 * 🔗 **实时网址检测** * 📋 **批量网址扫描** * 📄 **PDF 链接提取** * 🧠 **机器学习集成(随机森林 + 支持向量机 + 神经网络)** * ⚙️ **基于规则的安全引擎** * 📊 **自定义数据集上传与模型再训练** * 🎯 **高准确率(~96%+)** * 💡 **可解释的结果(为什么某个网址是钓鱼/安全的)** ## 🧠 工作原理 系统采用**多层架构**: 1. **白名单检查** 受信任的域名会立即被标记为安全。 2. **特征提取** 提取以下关键网址特征: * IP 地址使用情况 * 网址长度 * HTTPS 状态 * 特殊符号(@、-) * 子域名 3. **基于规则的评分** 根据可疑模式分配钓鱼风险评分(0–100)。 4. **机器学习集成** * 随机森林 🌲 * 支持向量机 ⚡ * 神经网络 🧠 多数投票提高预测准确性。 5. **最终决策** 结合: * 60% 机器学习预测 * 40% 规则评分 ## 🛠️ 技术栈 * **前端/UI:** Streamlit * **后端:** Python * **机器学习模型:** Scikit-learn * **库:** NumPy、Pandas * **可选:** PyMuPDF(用于 PDF 链接提取) ## 📂 项目结构 ``` EnsemblePhish/ │── app.py │── dataset.csv │── requirements.txt │── README.md ``` ## ⚙️ 安装与设置 ### 1. 克隆仓库 ``` git clone https://github.com/YOUR_USERNAME/EnsemblePhish.git cd EnsemblePhish ``` ### 2. 安装依赖 ``` pip install -r requirements.txt ``` ### 3. 运行应用程序 ``` streamlit run app.py ``` ## 📊 数据集信息 * 📌 总网址数:**11,055** * 📌 特征数:**30** * 📌 标签: * `-1` → 钓鱼 * `1` → 合法 ## 🔥 关键亮点 * 混合 **规则 + 机器学习** 方法 * **可解释的人工智能输出** * 干净的 **网络安全主题 UI** * 支持 **真实世界的钓鱼检测用例** ## ⚠️ 免责声明 本项目仅用于**教育和研究目的**。 它不应作为生产系统中唯一的安全措施。 ## ⭐ 支持 如果您喜欢这个项目: * ⭐ 为仓库点赞 * 🍴 分支项目 * 🧠 贡献改进
标签:Apex, HTTPS检测, IP使用, Kubernetes, NumPy, PDF链接提取, Python后端, Scikit-learn, SEO, Streamlit, URL检测, 云计算, 前端UI, 可解释性, 子域名分析, 安全分类, 安装部署, 实时分析, 支持向量机, 无服务器架构, 机器学习, 模型重训练, 特征提取, 白名单检查, 神经网络, 符号检测, 网络安全, 自定义数据集, 规则引擎, 访问控制, 逆向工具, 钓鱼检测, 随机森林, 隐私保护, 集成学习, 项目结构, 高准确率