SohamSurve22/Maltrain
GitHub: SohamSurve22/Maltrain
基于深度学习的恶意软件家族聚类与可视化框架,利用 CNN 特征提取和降维技术分析恶意软件家族间的相似性结构。
Stars: 0 | Forks: 0
# Maltrain
## 概述
Maltrain 是一个基于深度学习的恶意软件家族聚类与可视化框架,旨在为恶意软件分类领域的研究探索提供支持。该项目专注于从恶意软件图像中提取学习到的表征,并利用 CNN embeddings、PCA 降维和 t-SNE 可视化技术分析家族级别的相似性结构。
本项目使用的主要数据集是来自 Kaggle 的 **Malimg malware dataset**。
数据集来源:
https://www.kaggle.com/datasets/manmandes/malimg
## 项目结构
```
Maltrain/
│
├── data/ # Dataset storage (not included in repo)
├── scripts/ # Training, visualization, and analysis scripts
├── src/ # Core model and feature extraction pipeline
├── results/ # Generated plots, embeddings, and reports
├── models/ # Saved trained models
└── README.md
```
## 数据集设置
### 下载数据集
1. 访问:
https://www.kaggle.com/datasets/manmandes/malimg
2. 下载数据集存档。
3. 将数据集解压到 `data/` 目录中:
```
data/
└── malimg_dataset/
├── Family1/
├── Family2/
└── ...
```
最终路径应类似于:
```
Maltrain/data/malimg_dataset/
```
## 安装
创建虚拟环境:
```
python -m venv venv
source venv/bin/activate # Linux/Mac
venv\Scripts\activate # Windows
```
安装依赖:
```
pip install -r requirements.txt
```
## 训练流程
运行预处理和模型训练:
```
python scripts/train_cnn.py
```
此脚本将:
* 加载恶意软件图像样本
* 执行归一化和数据增强。
* 训练 CNN 特征提取器。
* 保存模型检查点。
## 可视化流程
### PCA 投影
```
python scripts/pca_visualization.py
```
生成:
* 家族级别的可分性图。
### t-SNE Embedding 可视化
```
python scripts/tsne_visualization.py
```
生成用于恶意软件家族聚类的出版级 embedding 图。
## 输出结果
结果存储在:
```
results/
├── embeddings/
├── plots/
└── metrics/
```
典型输出包括:
* 混淆矩阵
* 家族相似性图
* 降维投影
## 研究目的
本项目适用于:
* 恶意软件家族聚类研究
* 表征学习分析
* 高维恶意软件 embeddings 可视化
* 实验性网络安全 ML 探索
目前尚未针对生产环境部署进行优化。
## 未来改进
* 添加分层交叉验证评估。
* 引入基于 Transformer 的恶意软件表征模型。
* 扩展至对抗鲁棒性测试分析。
* 添加基于 SHAP 的可解释性可视化。
* 与经典 ML 基线进行对比测试。
## 引用
如果您在学术或研究目的中使用本项目,请引用该仓库。
数据集引用:
Malimg Malware Dataset — https://www.kaggle.com/datasets/manmandes/malimg
## 作者
由 SohamSurve22 维护
标签:Apex, CNN, DAST, Malimg数据集, malware visualization, Mutation, PCA降维, Python, t-SNE, 人工智能, 可视化, 图像分类, 威胁情报, 嵌入向量, 开发者工具, 恶意代码家族聚类, 恶意软件分析, 数据科学, 数据预处理, 无后门, 机器学习, 模式识别, 深度学习, 特征提取, 用户模式Hook绕过, 科研工具, 网络安全, 资源验证, 逆向工具, 隐私保护