MalPipe是一款功能强大的恶意软件分析与处理引擎,该工具基于模块化开发,同时也是一款恶意软件/IoC收集与处理工具。在该工具的帮助下,广大研究人员可以从多个数据源(feed)提取恶意软件或威胁行为相关的域名、URL地址和IP地址等数据,然后以此来丰富分析数据并以合适的格式导出分析处理结果。
VirusTotal (https://www.virustotal.com)
MalShare (https://malshare.com/)
BambenekFeeds (osint.bambenekconsulting.com/feeds/)
FeodoBlockList (https://feodotracker.abuse.ch)
Malc0deIPList (http://malc0de.com/)
NoThinkIPFeeds (www.nothink.org/)
OpenPhishURLs (https://openphish.com)
TorNodes (https://torstatus.blutmagie.de)
该工具基于Python开发,因此我们首先需要在本地设备上安装并配置好Python环境。
接下来,广大研究人员可以使用下列命令将该项目源码克隆至本地:
git clone https://github.com/silascutler/MalPipe.git
下载完成后,我们可以使用pip命令和项目提供的requirements.txt安装该工具所需的其他依赖组件:
pip install -r requirements.txt
项目提供了一个config_example.json文件帮助大家快速完成工具的数据feed配置,该文件中包含一个JSON独享,其中包含了相关的必要配置信息:
... "feeds": { ... "MalShare": { "ENABLED" : true, "API_KEY" : "00000000000000000000000000000000000000000000000000000000000", "EXPORTERS" : ["DetailsPrinter", "JSONLog"], "PROCESSORS" : ["YaraScan", "DNSResolver"] }, ...
由于某些数据feed会每天更新,因此每一个feed都可以以两种形式配置,即计划、主动。
处理器可以用于丰富或处理数据集。比如说,VirusTotal的数据包含每一个收集文件的YARA结果,而MalShare的数据就不痛了。那么我们此时就可以向PROCESSORS键添加YaraScan,就可以获取到所需的结果了:
... "processors": { ... "YaraScan": { "ENABLED" : false, "RULES_PATH": "/yara_rules/Malware.yara" }, ...
当前版本的MalPipe已实现了下列处理器:
ASNLookup
DNSResolver
FileType
RDNS
YaraScan
最后一个组件就是工具的数据导出器了,它可以控制数据的导出路径和格式:
... "exporters": { ... "JSONLog": { "ENABLED" : true, "PRETTY" : true, "LOG_PATH": "./temp/" }, ...
当前版本的MalPipe已实现了下列数据导出器:
DetailsPrinter
GenericWebStorage
JSONLog
LocalFileStorage
一切配置完成之后,我们就可以使用下列命令来运行MalPipe了:
python malpipe.py
本项目的开发与发布遵循GPL-3.0开源许可证协议。
MalPipe:【GitHub传送门】