IQSeC-Lab/MADAR
GitHub: IQSeC-Lab/MADAR
MADAR 是一个基于分布感知重放策略的恶意软件分析持续学习框架,旨在应对威胁分布演变下的模型性能衰减问题。
Stars: 11 | Forks: 1
# MADAR:基于分布感知重放的高效恶意软件分析持续学习
#### 已被 2025 年信息安全应用机器学习大会 (CAMLIS) 接收。
[阅读论文](https://proceedings.mlr.press/v299/rahman25a.html)
#### 引用格式
```
@inproceedings{madar,
title={{MADAR}: Efficient Continual Learning for Malware Analysis with Distribution-Aware Replay},
author={Rahman, Mohammad Saidur and Coull, Scott and Yu, Qi and Wright, Matthew},
booktitle={Conference on Applied Machine Learning in Information Security (CAMLIS) },
year={2025},
publisher={Proceedings of Machine Learning Research (PMLR)}
}
```
## 依赖项与所需安装包
请确保您已准备好并安装了所有依赖项。
- NVIDIA GPU
- CentOS Linux 7/Ubuntu 22.04
- Python3-venv/ conda
- CUDA 版本:12.2
- Python 版本:3.10+
-- 请使用以下命令安装所需的安装包:
`pip install -r requirements.txt`
我们建议用户创建一个 `python virtual environment` 或 `conda environment` 并安装所需的安装包。
```
conda create -n MADAR python=3.10
conda activate MADAR
conda install numpy=1.25.2
conda install pytorch=2.12.1 torchvision=0.27.1 pytorch-cuda=12.4 -c pytorch -c nvidia
```
或者,您也可以使用我们在实验中所用的完全相同的 `conda environment`。
1. 从 environment.yml 文件创建环境:
``conda env create -f environment.yml``
2. 激活新环境:``conda activate MADAR``
3. 验证新环境是否安装正确:``conda env list``
## 数据集
### EMBER-Domain 和 AZ-Domain 数据集已在 [HugginfFace](https://doi.org/10.57967/hf/5859) 上共享。
### EMBER
对于 EMBER 实验,我们使用了由 Rahman 等人 [1] 提供的数据集。
### AZ
我们收集的 AZ 数据集可以从 ``AZ_Datasets`` 目录下载。该目录包含两个数据集。
- `AZ_Domain.tar.bz2` 在论文中作为 AZ Domain-IL 实验的 AZ-Domain 数据集。
- `AZ_Family.tar.bz2` 在论文中作为 AZ Class-IL 和 AZ Task-IL 实验的 AZ-Class 数据集。
请注意,这些数据集是作为 ``.apk`` 文件从 AndroZoo 仓库 [2] 收集的。然后从 ``.apk`` 文件中提取 Drebin [3] 特征。最后,使用 ``standard scaler`` 对特征进行标准化处理,这些最终数据集用于运行论文中的所有实验。
## 基于重放的持续学习
## 基于 Isolation Forest 的采样 (IFS)
## 基于异常权重的采样 (AWS)
## EMBER 实验