NATTOMR/Android-Malware-Detector--My-Final-Year-Project-2026-
GitHub: NATTOMR/Android-Malware-Detector--My-Final-Year-Project-2026-
一个结合静态与动态分析、使用随机森林和 XGBoost 进行共识判定的 Android 恶意软件检测平台,并提供 SHAP 可解释性可视化。
Stars: 1 | Forks: 0
# 混合 AI 驱动的 Android 恶意软件检测系统
[](https://www.python.org/)
[](https://flask.palletsprojects.com/)
[](https://nextjs.org/)
[](LICENSE)
一个使用机器学习分类器(Random Forest 和 XGBoost)的混合静态与动态 Android 恶意软件分析平台。本项目作为毕业设计课题构建,旨在展示多模态移动安全验证。
## 📐 系统架构
该平台执行双通道分析以判定恶意软件结论:
```
graph TD
A[Upload APK File] --> B(Static Analysis Engine)
A --> C(Dynamic Behavior Log Parser)
B --> B1[Androguard Extraction]
B1 --> B2[Permissions & API Vectors]
C --> C1[Behavioral Signature Matches]
B2 --> D[Machine Learning Models]
C1 --> D
D --> D1[Random Forest Predictor]
D --> D2[XGBoost Predictor]
D1 --> E[Hybrid Consensus Verdict]
D2 --> E
E --> F[Next.js Dashboard Display]
```
## ✨ 功能
- **静态分析通道:**
- 使用 **Androguard** 快速提取权限和 Android Manifest 属性。
- 审计 14 个高度敏感的 API 签名(例如 `sendTextMessage`、`getDeviceId`、`Runtime;->exec`)。
- 通过 **Jadx** 命令行集成实现可选的深度结构反编译。
- **动态分析通道:**
- 实时日志解析以获取行为特征:检测异常的网络 socket 请求、文件写入和后台服务执行。
- **可解释 AI (XAI) 集成:**
- 集成模型预测解释框架(SHAP)以可视化特征贡献。
- **现代用户界面:**
- 使用 Tailwind CSS v4 设置样式并使用 Framer Motion 制作动画的完全响应式 Web 界面。
- 交互式历史记录、指标可视化和实时文件上传。
## 📊 数据集与模型性能
- **数据集来源:** 从 **Androzoo** 获取的元数据和精选样本。
- **特征空间:** 21 维静态权限和 API 调用标志。
- **评估指标:**
| 分类器 | 准确率 | 精确率 | 召回率 | F1 分数 |
| :--- | :--- | :--- | :--- | :--- |
| **Random Forest** | 94.2% | 93.8% | 94.5% | 94.1% |
| **XGBoost** | 93.6% | 92.9% | 94.1% | 93.5% |
*注意:系统实施了 **高召回率(混合)** 共识逻辑——如果任一模型将 APK 标记为恶意,它就会被归类为恶意软件,以最大程度地减少假阴性。*
## 🚀 设置与安装
### 前置条件
- Python 3.10+
- Node.js 18+(用于前端)
- Jadx(可选,用于深度扫描功能)
### 1. 运行后端 API
1. 导航至项目目录:
cd android-malware-detector
2. 安装依赖项:
pip install -r requirements.txt
3. 启动 Flask 应用:
python app.py
*后端将在 `http://127.0.0.1:5000` 启动。*
### 2. 运行 Next.js 前端
1. 导航至前端目录:
cd android-malware-detector/frontend
2. 安装 Node 模块:
npm install
3. 启动开发服务器:
npm run dev
*前端仪表板将可在 `http://localhost:3000` 访问。*
## 📁 仓库结构
- [android-malware-detector/app.py](android-malware-detector/app.py):后端 Flask 服务器。
- [android-malware-detector/frontend/src/app/page.tsx](android-malware-detector/frontend/src/app/page.tsx):前端 React 布局。
- [android-malware-detector/models/](android-malware-detector/models/):预训练权重(`.pkl` 文件)。
- [android-malware-detector/src/](android-malware-detector/src/):用于特征提取、预测和模型的源模块。
- [android-malware-detector/scripts/](android-malware-detector/scripts/):数据集设置和测试实用工具。
- [android-malware-detector/tests/](android-malware-detector/tests/):单元测试用例占位符。
## 📜 许可证
基于 [MIT 许可证](LICENSE) 授权。
标签:Android安全, Apex, Flask, 云安全监控, 机器学习, 逆向工具, 静态分析