khairnaratharva11/Real_Time_Threat_Intelligence_Engine
GitHub: khairnaratharva11/Real_Time_Threat_Intelligence_Engine
基于六模型异构集成与软投票机制的实时URL威胁检测与钓鱼分类引擎。
Stars: 0 | Forks: 0
# 实时威胁情报与 URL 分类引擎
## 📌 概述
本仓库包含一个专为网络安全设计的高级机器学习 pipeline。它作为一个实时威胁情报引擎,能够动态从 URL 中提取词法和结构特征,将其分类为安全、恶意或钓鱼。
该系统采用**多模型异构集成**。它不依赖于单一算法或数据集,而是在两个不同的数据集上训练两组独立的模型(Random Forest、Logistic Regression 和 Gradient Boosting)。随后,通过一个自定义的 **Soft-Voting** 机制汇总所有六个模型的威胁概率,从而提供最终且高度稳健的判定结果。
## 🚀 渐进式方法与架构
该项目被拆分为三个独立的脚本,以将训练阶段与实时预测引擎区分开来:
* **`train_model_1.py`(常规威胁检测):** * 加载 `malicious_urls.csv` 数据集。
* 执行探索性数据分析 (EDA) 并保存分布图表。
* 训练三个基线模型(RF、LR、GB)以识别常规的恶意 URL 模式。
* 将模型、scaler 和 encoder 序列化并导出为 `.pkl` artifacts。
* **`train_model_2.py`(特定钓鱼检测):** * 加载定向的 `dataset_phishing.csv` 数据集。
* 训练使用相同三种算法(RF、LR、GB)的第二套独立模型,专门针对捕捉钓鱼指标进行调优。
* 序列化这些特定于钓鱼的 artifacts。
* **`predict_model.py`(实时引擎):** * 核心应用程序脚本。它通过命令行或交互式输入接收目标 URL。
* 动态解析 URL 以提取统一的特征集(例如,熵、可疑词汇计数、高风险 TLD)。
* 从之前的脚本中加载所有 6 个预训练模型。
* 通过对整个集成模型中的威胁概率求平均值来计算**全局 Soft Vote**,以输出最终的安全判定结果和置信度分数。
## 🛠️ 使用的技术
* **语言:** Python 3
* **数据处理:** Pandas, NumPy, `urllib.parse`, `re` (Regex)
* **机器学习:** Scikit-Learn (Random Forest, Gradient Boosting, Logistic Regression)
* **序列化:** Joblib
* **可视化:** Seaborn, Matplotlib
## ⚙️ 如何运行
1. 将仓库克隆到本地机器。
2. 确保已安装所需的库:`pip install pandas numpy scikit-learn matplotlib seaborn joblib`。
3. 确保您的数据集(`malicious_urls.csv` 和 `dataset_phishing.csv`)位于根目录下。
4. **第 1 步:** 训练第一组模型:
python train_model_1.py
标签:Apex, Python, URL分类, 威胁情报, 开发者工具, 无后门, 机器学习, 网络安全, 逆向工具, 钓鱼检测, 隐私保护