Udaramalinda/llm-assisted-cyber-threat-intelligence

GitHub: Udaramalinda/llm-assisted-cyber-threat-intelligence

面向 5G O-RAN 安全的端到端 pipeline,结合 XGBoost 攻击检测、SHAP 可解释性分析和本地 LLM 威胁情报丰富,实现从网络攻击检测到结构化事件报告的自动化生成。

Stars: 0 | Forks: 0

# 面向 5G O-RAN 安全的 LLM 辅助网络威胁情报 这是一个端到端的 pipeline,它使用 XGBoost 检测网络攻击,将预测结果转换为结构化的 CTI 警报,通过本地 LLM(通过 Ollama 运行的 Phi-3-mini)对其进行丰富,并使用 SHAP 解释预测结果。 ## 1. 前置条件 - Python 3.13.14 - [Ollama](https://ollama.com/download)(用于 LLM 阶段) - 数据集文件 `Network_Dataset.csv` 需放置在 `data/` 目录中 ## 2. 设置 ``` # 1. 克隆 repo git clone https://github.com/Udaramalinda/llm-assisted-cyber-threat-intelligence.git cd llm-assisted-cyber-threat-intelligence # 2. 创建并激活虚拟环境(本项目使用 Python 3.13.14) python -m venv .venv # Windows (PowerShell): .venv\Scripts\Activate.ps1 # Windows (cmd.exe): .venv\Scripts\activate.bat # macOS / Linux: source .venv/bin/activate # 3. 安装 Python 依赖(到 venv 中) pip install pandas numpy matplotlib seaborn scikit-learn imbalanced-learn xgboost shap requests jupyter # 4. 安装并启动 Ollama,然后拉取模型 # 请先从 https://ollama.com/download 下载 Ollama ollama pull phi3:mini ollama serve ``` 每当您打开并运行 notebooks 时,请保持虚拟环境处于活动状态(并让 Ollama 在其独立的终端中运行)——在运行任何单元格之前,请在 Jupyter/VS Code 中选择 `.venv` 解释器/内核。 ## 3. 运行 pipeline **按此顺序**运行 `notebooks/` 中的 notebooks —— 每一个都会使用上一步生成的文件: | # | Notebook | 生成内容 | |---|---|---| | 1 | `01_eda_preprocessing.ipynb` | 清洗后的数据、编码器 (`outputs/`) | | 2 | `02_model_training.ipynb` | 训练好的模型 `outputs/xgboost_model.pkl`、演示事件 | | 3 | `03_cti_alert_generator.ipynb` | 结构化 CTI 警报 `outputs/alerts/` | | 4 | `04_llm_enrichment.ipynb` | 经 LLM 丰富的故障报告 `reports/` | | 5 | `05_shap_analysis.ipynb` | 基于 SHAP 的报告 `reports/shap_incident_*.md` | 打开每个 notebook 并自上而下运行所有单元格,然后再进行下一步。 ## 4. 查看位置 - `reports/sample_incident_report.md` — 一份完整的事件报告示例 - `reports/all_incident_reports.md` — 所有已丰富的报告 - `reports/all_shap_reports.md` — 包含与不包含 SHAP 的对比 - `outputs/` — 训练好的模型、图表、原始警报 ## 5. 注意事项 - 所有随机种子均已固定(`RANDOM_STATE = 42`),因此 ML 结果是可复现的。 - LLM 的输出在每次运行时会有轻微差异(temperature 设为 0.1,但它仍是一个生成式模型)。
标签:AI风险缓解, Apex, DLL 劫持, SHAP, XGBoost, 大语言模型, 威胁情报, 开发者工具, 机器学习, 网络安全, 网络流量分析, 逆向工具, 隐私保护