CTF比赛干货分享:内存取证volatility常用指令

admin 2024年7月8日22:30:40评论55 views字数 4092阅读13分38秒阅读模式

分析镜像:

volatility -f mem.raw imageinfo

列举可使用的命令:

volatility -f mem.raw --profile=Win7SP1x86_23418 --help

查看系统用户名

volatility -f mem.raw --profile=Win7SP1x86_23418 printkey -K "SAMDomainsAccountUsersNames"

列举缓存在内存中的注册表

volatility -f mem.raw --profile=Win7SP1x86_23418 hivelist

查看进程:

volatility -f mem.raw --profile=Win7SP1x86_23418 pslist

dump可疑进程如记事本、画图进程:

volatility -f mem.raw --profile=Win7SP1x86_23418 memdump -p 3552 --dump-dir=./ 
volatility -f mem.raw --profile=Win7SP1x86_23418 memdump -p 2648 --dump-dir=./

DUMP下可以用010分析、foremost分离或者IDA分析

查看IE浏览器历史:

volatility -f mem.raw --profile=Win7SP1x86_23418 iehistory
支持的插件命令:


callbacks 打印全系统通知例程
clipboard 提取Windows剪贴板中的内容
cmdline 显示进程命令行参数
cmdscan 提取执行的命令行历史记录(扫描_COMMAND_HISTORY信息)
connections 打印系统打开的网络连接(仅支持Windows XP 和2003)
connscan 打印TCP连接信息
consoles 提取执行的命令行历史记录(扫描_CONSOLE_INFORMATION信息)
crashinfo 提取崩溃转储信息
deskscan tagDESKTOP池扫描(Poolscaner)
devicetree 显示设备树信息

dlldump 从进程地址空间转储动态链接库

amcache 查看AmCache应用程序痕迹信息

apihooks 检测内核及进程的内存空间中的API hook

cachedump 获取内存中缓存的域帐号的密码哈希

dlllist 打印每个进程加载的动态链接库列表
driverirp IRP hook驱动检测
drivermodule 关联驱动对象至内核模块
driverscan 驱动对象池扫描
dumpcerts 提取RAS私钥及SSL公钥
dumpfiles 提取内存中映射或缓存的文件
editbox 查看Edit编辑控件信息 (Listbox正在实验中)
envars 显示进程的环境变量
filescan 提取文件对象(file objects)池信息
gahti 转储用户句柄(handle)类型信息
gditimers 打印已安装的GDI计时器(timers)及回调(callbacks)
gdt 显示全局描述符表(Global Deor Table)
getservicesids 获取注册表中的服务名称并返回SID信息
getsids 打印每个进程的SID信息
handles 打印每个进程打开的句柄的列表
hashdump 转储内存中的Windows帐户密码哈希(LM/NTLM)
hibinfo 转储休眠文件信息
hivedump 打印注册表配置单元信息
hivelist 打印注册表配置单元列表
hivescan 注册表配置单元池扫描
hpakextract 从HPAK文件(Fast Dump格式)提取物理内存数据
hpakinfo 查看HPAK文件属性及相关信息
idt 显示中断描述符表(Interrupt Deor Table)
iehistory 重建IE缓存及访问历史记录
imagecopy 将物理地址空间导出原生DD镜像文件
imageinfo 查看/识别镜像信息
kdbgscan 搜索和转储潜在KDBG值
kpcrscan 搜索和转储潜在KPCR值
notepad 查看记事本当前显示的文本
objtypescan 扫描窗口对象类型对象
patcher 基于页面扫描的补丁程序内存
printkey 打印注册表项及其子项和值
privs 显示进程权限
procdump 进程转储到一个可执行文件示例
pslist 按照EPROCESS列表打印所有正在运行的进程
psscan 进程对象池扫描
pstree 以树型方式打印进程列表
psxview 查找带有隐藏进程的所有进程列表
qemuinfo 转储 Qemu 信息
raw2dmp 将物理内存原生数据转换为windbg崩溃储格式
screenshot 基于GDI Windows的虚拟屏幕截图保存
servicediff Windows服务列表(ala Plugx)
sessions _MM_SESSION_SPACE的详细信息列表(用户登录会话)
shellbags 打印Shellbags信息
shimcache 解析应用程序兼容性Shim缓存注册表项
shutdowntime 从内存中的注册表信息获取机器关机时间
sockets 打印已打开套接字列表
sockscan TCP套接字对象池扫描
ssdt 显示SSDT条目
strings 物理到虚拟地址的偏移匹配(需要一些时间,带详细信息)
svcscan Windows服务列表扫描
symlinkscan 符号链接对象池扫描
thrdscan 线程对象池扫描
threads 调查_ETHREAD 和_KTHREADs
timeliner 创建内存中的各种痕迹信息的时间线
timers 打印内核计时器及关联模块的DPC
truecryptmaster Recover 恢复TrueCrypt 7.1a主密钥
truecryptpassphrase 查找并提取TrueCrypt密码
truecryptsummary TrueCrypt摘要信息
unloadedmodules 打印卸载的模块信息列表
userassist 打印注册表中UserAssist相关信息
userhandles 转储用户句柄表
vaddump 转储VAD数据为文件
vadinfo 转储VAD信息
vadtree 以树形方式显示VAD树信息

vadwalk 显示遍历VAD树

ldrmodules 检测未链接的动态链接DLL

lsadump 从注册表中提取LSA密钥信息(已解密)

malfind 查找隐藏的和插入的代码

mbrparser 扫描并解析潜在的主引导记录(MBR)

memdump 转储进程的可寻址内存

memmap 打印内存映射

messagehooks 桌面和窗口消息钩子的线程列表

moddump 转储内核驱动程序到可执行文件的示例

modscan 内核模块池扫描

modules 打印加载模块的列表

multiscan 批量扫描各种对象

mutantscan 对互斥对象池扫描

vboxinfo 转储Virtualbox信息(虚拟机)
verinfo 打印PE镜像中的版本信息
vmwareinfo 转储VMware VMSS/VMSN 信息
volshell 内存镜像中的shell
windows 打印桌面窗口(详细信息)
wintree Z顺序打印桌面窗口树
wndscan 池扫描窗口站
yarascan 以Yara签名扫描进程或内核内存

volatility -f 1.raw --profile=Win7SP1x86_23418 cmdscan 查看cmd历史命令

volatility -f 1.raw --profile=Win7SP1x86_23418 clipboard 查看剪切板命令

volatility -f 1.raw --profile=Win7SP1x86_23418 filescan | grep "Desktop"

volatility -f 1.raw --profile=Win7SP1x86_23418 filescan | grep -i  "flag" -i 不区分大小写

 volatility -f 1.raw --profile=Win7SP1x86_23418 filescan | grep "桌面"    

volatility -f 1.raw --profile=Win7SP1x86_23418 pslist  查看进程列表

volatility -f 1.raw --profile=Win7SP1x86_23418 dumpregistry 提取注册表数据

volatility -f 1.raw --profile=Win7SP1x86_23418 shutdowntime 查看最后关机时间

volatility -f 1.raw --profile=Win7SP1x86_23418 hashdump 查看Windows帐户hash

volatility -f 1.raw --profile=Win7SP1x86_23418 svcscan 查看服务列表

volatility -f 1.raw --profile=Win7SP1x86_23418 sockets 查看网络通讯连接

volatility -f 1.raw --profile=Win7SP1x64 filescan |grep -E 'png|jpg|gif|zip|rar|7z|pdf|txt|doc'

volatility -f Browser.raw --profile=Win7SP1x64 pslist |find "chrome.exe" #使用find查找所有谷歌浏览器进程

volatility -f 1.raw --profile=Win7SP1x86 printkey -K "SAMDomainsAccountUsersNames"  #列出SAM表用户

volatility -f 1.raw --profile=Win7SP1x86 printkey -K 'Controlset001ControlComputernameComputername'  获取主机名

volatility --plugins=/root/volatility/volatility/plugins/ -f 1.raw --profile=Win7SP1x86_23418 mimikatz 获取密码


原文始发于微信公众号(小话安全):CTF比赛干货分享:内存取证volatility常用指令

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年7月8日22:30:40
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   CTF比赛干货分享:内存取证volatility常用指令https://cn-sec.com/archives/2933376.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息