该项目是一个基于 Ember 模型和 PEiD 资料库的恶意软件静态分析工具,可以实现对恶意软件的静态行为检测。
在 Ember 模型的基础上,实现以下创新与拓展:
- 在原先ember模型的基础上使用2025年的新恶意样本训练了新的模型
- 相比原项目的检测方法,本项目将 PE 文件的 2381 个特征提取并实现了更为精确的特征配对
- 实现更为丰富的PE文件静态检测,拓展熵值分析和加壳分析等功能
- 项目分为针对小白的交互模式和针对细致分析的命令行模式
- 项目还提供了图形界面(GUI)版本,便于非命令行用户使用。
训练好的 Ember 模型已经添加在项目文件中 想要自己训练模型的用户可访问 Ember 的 GitHub 开源项目: https://github.com/elastic/ember?tab=readme-ov-file
用以检测壳的 PEiD 资料库 userdb.TXT 也包括在项目文件中 有自定义需求的用户请访问官方网站: https://www.softpedia.com/get/Programming/Packers-Crypters-Protectors/PEiD-updated.shtml
使用者可以使用以下任一方式搭建环境:
方式一:
pip install -r requirements.txt
python setup.py install方式二:
conda config --add channels conda-forge
conda install --file requirements.txt
python setup.py install由于版本迭代的原因,按照上述步骤一起安装相关包可能在部分主机上产生问题,可以尝试单独pip install或者conda install写在requirements.txt中的项,或者将包后的版本号去除。其中特别说明yara包安装之前需要先apt install相关的软件,详细的可以自行查阅相关资料。
本项目提供两种使用模式:
直接运行:
python detec.py根据提示操作,可实现对单独文件或目录下所有文件的分析和报告存档。
提供更详细的检测报告,使用以下命令获取帮助:
python detec.py -h项目提供了图形界面版本,支持更直观的操作:
Windows系统:
run_gui.batLinux/Mac系统:
./run_gui.sh或直接运行:
python malware_rat_gui/main.pyGUI功能:
- 支持文件/文件夹选择
- 批量扫描功能
- 结果可视化展示
- JSON报告导出
- 使用 conda 环境:
conda activate malware-rat - 运行 GUI:
python malware_rat_gui/main.py
- 选择文件/文件夹:点击 "选择文件" 或 "选择文件夹" 按钮
- 开始扫描:点击 "开始扫描" 按钮进行恶意软件检测
- 查看结果:扫描结果在右侧表格中显示,包括文件名、检测结果、置信度等
- 导出报告:点击 "导出报告" 按钮可将结果保存为 JSON 文件
- 确保已安装所有依赖(使用
environment.yml或requirements.txt) - GUI 需要图形界面支持,在远程服务器上可能需要 X11 转发
在2020,2021,2025文件夹中保存了对应年份的恶意软件样本,请在安全的环境运行!你也可以在此项目中寻找你自己的样本: rshipp/awesome-malware-analysis