volatility3学习
Volatility 是一款开源的内存取证软件,支持 Windows、Mac、linux(kali 下等等) 环境下使用。并且分别有 Volatility2 与 Volatility3 两个大版本,依次需要在 py2、py3 的环境下进行使用,也要确保系统中已安装环境,安装 pycrpto 库函数。
2与3的区别
Volatiliy 2 与 Volatiliy 3 之间的区别
Volatility 3从头开始设计为一个库,这意味着组件是独立的,在特定时间运行特定插件所需的所有状态都是自包含的,Volatility3和Volatility2的命令使用以及操作基本相同,但是volatility3中不需要指定profile ,只是插件调用方式改变,特定的操作系统有特定的插件,
下载链接:https://github.com/volatilityfoundation/volatility3.git
用法:python3 vol.py -f /root/windows.raw windows.info
过滤windows命令:
python3 vol.py --help|grep windows
一开始可能存在插件不能用的情况 -vv显示详细情况 (可以看的出来是python缺少Crypto这个库)
由于我的kali版本是2021.3 默认不自带pip3,安装pip3
wget https://bootstrap.pypa.io/get-pip.py | python3
python3 get-pip.py -i http://pypi.douban.com/simple --trusted-host pypi.douban.com
安装Crypto库
pip3 install Crypto
pip3 install pycrypto
安装完成后,可以正常使用volatility3
volatility3 安装符号表
符号表地址:
将符号表复制到/你放vol的地方/volatility3/symbols 目录下解压到windows目录中
volatiltiy3 安装插件
下载/vol_pypykatz.py将他放到pypykatz目录下方便我们找
wget https://raw.githubusercontent.com/skelsec/pypykatz-volatility3/master/vol_pypykatz.py
然后
python3 vol.py -f /root/windows.raw -p pypykatz pypykatz
问题1
RuntimeError: Framework interface version 2 is incompatible with required version 1
可以把刚才下载下来的vol_pypykatz.py中的1修改为2,如下图:
运行如下图则为正常
问题2
from volatility.framework import interfaces, constants, exceptions, symbols ModuleNotFoundError: No module named 'volatility'
注意红框中的路径,打开它
vim /usr/lib/python3/dist-packages/pypykatz/commons/readers/volatility3/init.py
并将其中的volatility修改成volatility3
我这里使用vim的尾行模式进行替换 即可使用
:1,11s/volatility/volatility3
问题3
File "/home/kali/volatility3/volatility3/framework/renderers/init.py", line 199, in init
generator = iter(generator)
TypeError: 'TreeGrid' object is not iterable
将42行到56行的内容注释掉并在下方加一句
return pparser.go_volatility3(self) 运行成功本人自己制作的镜像 下图为解密hash的结果
本文作者:LinKinHan
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!