概述
一个基于分类类型处理 Windows 内存镜像的 Python 脚本。
依赖项
- Python3
- Bulk Extractor
- Volatility2 及社区插件
- Volatility3
- Plaso
- Yara
使用方法
快速分类
python3 winSuperMem.py -f memdump.mem -o output/ -tt 1
完整分类
python3 winSuperMem.py -f memdump.mem -o output/ -tt 2
综合分类
python3 winSuperMem.py -f memdump.mem -o output/ -tt 3
安装
- 安装 Python 3
- 安装 Python 2
- pip3 install -r requirements.txt
- 安装 Volatility 3 框架
- 安装 Volatility 2 框架
- 下载 Volatility 2 社区插件
- 安装 Bulk Extractor
- 安装 Plaso
- 安装 Yara
- 安装 Strings
- 安装 EVTxtract
如何解读输出
- 综合分类的输出目录结构:
- BEoutputdir - Bulk Extractor 输出
- DumpedDllsOutput - 转储的已加载进程 DLL
- DumpedFilesOutput - 转储的内存文件
- DumpedModules - 转储的已加载驱动程序
- DumpedProcessOutput - 转储的运行中进程
- DumpedRegistry - 转储的已加载注册表配置单元
- EVTxtract - 使用 EVTxtract 提取的数据
- IOCs.csv - 输出数据集中识别到的已收集 IP
- Logging.log - 脚本日志
- Plaso - Plaso 主时间线
- Strings - Unicode、Ascii、Big Endian 字符串输出
- Volatility2 - Volatility2 插件输出
- Volatility3 - Volatility3 插件输出
- Yara - Yara 匹配结果
故障排除
本节概述了一些已知 bug。
- 在 Windows 8 以下的 Windows 镜像上,转储文件可能无法正常工作。volatility3 filescan 插件提供的偏移量有时是物理地址而不是虚拟地址,也没有描述符指明返回的是哪种地址。当前脚本只期望虚拟地址。你可以通过将 dumpfiles 函数从
--virtaddr 改为 --physaddr 来解决此问题。