Trong-Binh/Project_1_2025.2_202416781
GitHub: Trong-Binh/Project_1_2025.2_202416781
一款基于 XGBoost 与 SHAP 可解释 AI 的桌面应用,通过静态分析 Windows PE 文件实现恶意软件家族分类。
Stars: 0 | Forks: 0
# ThreatScan:机器学习恶意软件分类
**项目 I (IT3910E)** - 河内科技大学
**作者:** Pham Trong Binh - 学号:202416781
## 项目概述
ThreatScan 是一款桌面应用程序,专为安全地静态分析和分类 Windows Portable Executable (PE) 文件而设计。该系统摒弃了传统的基于特征码的检测方法,转而使用 **XGBoost** 机器学习模型来预测可执行文件是良性文件,还是属于特定的恶意软件家族(Ransomware、Stealer、Trojan)。
为了克服 AI 的“黑盒”特性,ThreatScan 集成了 **SHAP (SHapley Additive exPlanations)**,通过交互式的 JavaFX 用户界面为每一次预测提供透明的数学推理解释。
## 核心功能
- **零风险静态分析:** 解析 PE 头以提取 13 个关键的结构特征,全程无需执行 payload。
- **高精度 ML 引擎:** 实现 97.74% 的分类准确率。
- **可解释 AI (XAI):** 渲染动态条形图,展示促成模型决策的核心结构特征。
- **未知威胁检测:** 利用概率阈值来标记高度异常的文件。
- **解耦架构:** JavaFX 前端与 Python 后端通过标准 I/O 和 JSON 实现无缝通信。
## 技术栈
- **前端:** Java、JavaFX、Maven、Gson
- **后端:** Python、XGBoost、Scikit-learn、SHAP、pefile、pandas
## 仓库结构
```
Project_1_2025.2_202416781/
├── backend_Python/ # Python engine (Feature extraction, XGBoost, SHAP)
├── frontend_Java/ # JavaFX UI, Controllers, and PythonBridgeService
├── doc/ # LaTeX source code and final Project_1.pdf
└── README.md # Project documentation
```
标签:Apex, JavaFX, JS文件枚举, XGBoost, 云安全监控, 可解释AI, 域名枚举, 机器学习, 蓝队工具, 逆向工具, 静态分析