Ruthveej/Malware-Analysis-and-Classification-using-AI

GitHub: Ruthveej/Malware-Analysis-and-Classification-using-AI

基于深度学习的恶意软件家族分类系统,通过 opcode 频率特征和 Web 界面实现自动化分析与预测。

Stars: 0 | Forks: 0

# AI 恶意软件分析与分类 一个基于机器学习的系统,通过 opcode 序列对恶意软件进行分析和分类。 ## 项目结构 ``` PS2/ ├── backend/ │ ├── app.py # Flask API server │ ├── model_loader.py # Model loading utilities │ ├── preprocess.py # Data preprocessing functions │ └── models/ │ ├── best_malware_model.h5 # Trained model │ └── label_encoder.pkl # Label encoder ├── frontend/ │ ├── index.html # Main web interface │ ├── script.js # Frontend JavaScript │ └── style.css # Styling ├── requirements.txt # Python dependencies └── run_backend.py # Backend startup script ``` ## 功能 - **Web 界面**:简洁现代的 UI,用于上传 CSV 文件 - **多模型支持**:支持 CNN、LSTM、GRU 模型选择(UI 已就绪) - **实时分析**:上传文件并立即获取恶意软件分类结果 - **置信度评分**:查看预测的置信度水平 - **批量处理**:在单个 CSV 文件中处理多个样本 ## 安装说明 ### 1. 安装依赖 ``` pip install -r requirements.txt ``` ### 2. 启动后端服务器 ``` python run_backend.py ``` API 将在 `http://127.0.0.1:5000` 提供 ### 3. 打开前端 在您的 Web 浏览器中打开 `frontend/index.html`。 ## API Endpoint - `POST /predict` - 上传 CSV 文件进行恶意软件分类 - `GET /health` - 检查 API 是否正在运行 ## 使用方法 1. **准备您的数据**:创建一个包含 opcode 序列的 CSV 文件 - 第一列:文件名 - 第二列:Opcode 总数 - 第三列:Family(恶意软件家族) - 其余列:Opcode 频率计数 2. **上传并分析**: - 打开 Web 界面 - 选择您的 CSV 文件 - 选择模型类型 - 点击“Analyze” 3. **查看结果**: - 查看预测的恶意软件家族 - 检查置信度评分 - 如果有多个样本,查看所有预测结果 ## 模型信息 - **模型类型**:深度学习模型(CNN/LSTM/GRU 架构) - **输入**:Opcode 频率向量 - **输出**:恶意软件家族分类 - **预处理**:自动处理数据格式化和归一化 ## 故障排除 - **连接错误**:确保后端服务器正在运行 - **文件上传错误**:确保您的 CSV 文件符合预期格式 - **模型加载错误**:检查 `backend/models/` 目录中是否存在模型文件 ## 开发 本项目使用: - **后端**:Flask, TensorFlow, scikit-learn - **前端**:Vanilla JavaScript, HTML5, CSS3 - **模型**:用于恶意软件分类的预训练深度学习模型
标签:Apex, DAST, Flask, 恶意软件分析, 数据分类, 数据可视化, 机器学习, 深度学习, 逆向工具