Linux内存取证lime+volatility(原创2019年10月10日)
字数 1030 2025-08-18 11:39:00
Linux内存取证:LiME + Volatility 完整指南
前提环境准备
在进行Linux内存取证前,需要确保系统具备以下环境:
apt-get install python
apt-get install git
第一步:下载必要工具
需要下载以下4个工具:
- 内存提取工具LiME:
git clone https://github.com/504ensicsLabs/LiME.git
- 内存分析工具Volatility:
git clone https://github.com/volatilityfoundation/volatility.git
- libelf库:
git clone https://github.com/WolfgangSt/libelf.git
- libdwarf库:
git clone https://github.com/tomhughes/libdwarf.git
下载完成后会在当前目录下生成4个对应的文件夹。
第二步:使用LiME提取内存镜像
- 进入LiME目录并编译:
cd LiME/src
make
- 提取内存镜像(注意根据实际情况修改参数):
insmod ./lime-5.2.0-kali2-amd64.ko "path=/root/tem/kali.lime format=lime"
说明:
lime-5.2.0-kali2-amd64.ko是make命令后生成的,不同Linux系统名称不同path=后面接的是内存镜像保存路径和文件名- 生成的内存镜像文件大小与系统内存相同,需确保有足够空间
第三步:配置Volatility环境
1. 安装libdwarf
cd libdwarf/scripts/
sh FIX-CONFIGURE-TIMES
cd ..
./configure
make
make install
2. 安装libelf
cd libelf
make clean # 防止make报错,或make报错后执行
make
make install
3. 安装Linux头文件
apt install linux-headers-$(uname -r)
头文件用于与Volatility打包形成新的profile。
4. 配置Volatility
cd volatility/tools/linux
make
zip volatility/volatility/plugins/overlays/linux/kali.zip /boot/System.map-5.2.0-kali2-amd64 volatility/tools/linux/module.dwarf
此命令把头文件和volatility中的dwarf文件打包成zip放到volatility的linux目录下。
常见问题解决
如果make命令报错找不到libelf.so.0:
- 检查
/etc/ld.so.conf.d/libc.conf文件内容是否为/usr/local/lib - 如果不是,修改为
/usr/local/lib - 无论是否修改,都需要执行以下命令更新lib:
ldconfig
注意:/etc/ld.so.conf.d/libc.conf这个文件在不同Linux发行版中名称可能不同,需在ld.so.conf.d/文件夹中自行查找对应文件。
第四步:加载新的profile并分析内存
- 进入volatility文件夹检查新profile:
cd volatility
python vol.py --plugins=profiles --info | grep Linux
如果配置成功,应该能看到一个新的适用profile(如"Linuxkalix64")。
- 使用新profile分析内存:
python vol.py --profile=Linuxkalix64 -f /root/tem/kali.lime linux_arp
- 查看所有可用命令:
python vol.py --info
特别提示
-
如果取证和分析在不同系统下进行,必须保证:
- 发行版相同
- 版本号相同
- 架构相同
-
安装过程中常见报错点:
- libdwarf安装可能报错
- libelf安装可能报错
- volatility/tools/linux下的make可能报错
-
配置过程复杂,报错点多,需仔细按照指南操作。
通过以上步骤,您已经完成了Linux内存取证环境的搭建,可以使用Volatility的各种插件对内存镜像进行深入分析了。