内存取证 && volatility工具(持续更新)

本文介绍如何使用Volatility工具进行内存取证分析,包括系统信息获取、进程管理、文件扫描及导出、命令历史查看、网络连接检查等多项核心功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

题目是一个 mem.raw 内存镜像。volatility项目地址GitHub - volatilityfoundation/volatility: An advanced memory forensics framework,推荐使用volatility已经编译好的工具Release Downloads | Volatility Foundation。内存镜像文件一般为 raw、vmem、dmp、img 等格式。

用法为

# 查看内存镜像的系统,找出对应的profile
# 此后根据这个profile用相应的插件功能
# volatility -f mem.raw --profile=Win7SP1x64 yourcommand
volatility -f mem.raw imageinfo                

# 从内存镜像里找出用户名、密码信息     
volatility -f mem.raw --profile=Win7SP1x64 hashdump 

# 查看进程列表,树可看出进程父子关系,重点关注可疑进程
volatility -f mem.raw --profile=Win7SP1x64 pslist   
volatility -f mem.raw --profile=Win7SP1x64 pstree  

# 扫描文件列表,文件比较多推荐对 flag 等关键字过滤
# 列表第一列十六进制数是文件的内存地址
volatility -f mem.raw --profile=Win7SP1x64 filescan             
volatility -f mem.raw --profile=Win7SP1x64 filescan | egrep (flag|hint|exe) 

# 使用dumpfiles+内存地址可以导出文件
# -Q 指定内存地址
# -D 指定导出目录
volatility -f mem.raw --profile=Win7SP1x64 dumpfiles -Q=0x6F -D ./

# 查看cmd上的操作,列出命令行下运行的程序
volatility -f mem.raw --profile=Win7SP1x64 cmdscan    
volatility -f mem.raw --profile=Win7SP1x64 cmdline   

# 查看有无恶意连接
volatility -f mem.raw --profile=Win7SP1x64 connections    
volatility -f mem.raw --profile=Win7SP1x64 sockets        

# 查看一个进程的dll,显示包括隐藏dll的具体信息。
volatility -f mem.raw --profile=Win7SP1x64 dlllist -p 3064       
volatility -f mem.raw --profile=Win7SP1x64 ldrmodules -p 3064 -v 

# 找出注入的可执行代码或者DLL,根据pid导出程序
volatility -f mem.raw --profile=Win7SP1x64 malfind -p 3064       
volatility -f mem.raw --profile=Win7SP1x64 memdump -p 3064 -D . 

# ie浏览器历史记录
# netscan查看网络连接情况 相当于看netstat -ano
# 查看截屏
volatility -f mem.raw --profile=Win7SP1x64 iehistory   
volatility -f mem.raw --profile=Win7SP1x64 netscan     
volatility -f mem.raw --profile=Win7SP1x64 screenshot -D . 

# 查看驱动程序
# 导出驱动程序
# 查看启动的windows服务
volatility -f mem.raw --profile=Win7SP1x64 modules      
volatility -f mem.raw --profile=Win7SP1x64 moddump -D . 
volatility -f mem.raw --profile=Win7SP1x64 svcscan      

# 查看注册表项,-K指定要看的注册表项
# SAM表中的用户     "SAM\Domains\Account\Users\Names" 
# 最后登录系统的用户 "SOFTWARE\Microsoft\Windows 
volatility -f mem.raw --profile=Win7SP1x64 printkey     
volatility -f mem.raw --profile=Win7SP1x64 printkey -K "SAM\Domains\Account\Users\Names" 
volatility -f mem.raw --profile=Win7SP1x64 printkey -K "SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" 

# 查看注册表
# 导出注册表
volatility -f mem.raw --profile=Win7SP1x64 hivelist  
volatility -f mem.raw --profile=Win7SP1x64 hivedump -o 0x000000000eb09010 

 可以看出 mem.raw 很可能是一个 Win7SP1x64 操作系统的内存镜像,很可惜没账号密码信息

pslist 进程列表里面 PID 是当前进程号,PPID是父进程号,如果一个进程已经结束了,那么在 Exit 列有进程结束的时间。

pstree 可以识别子进程和父进程,且可以显示出被隐藏的病毒

filescan 扫描所有文件列表,文件比较多推荐对 flag 等关键字过滤

cmdscan 查看 cmd 上的操作,cmdline 列出命令行下运行的程序。

connections、sockets 查看有无恶意连接,看来没有。

dlllist 查看一个进程(-p <PID>)加载的dll。 ldrmodules 显示包括隐藏dll的具体信息。malfind

找出注入的可执行代码或者DLL。

memdump 根据PID导出程序,-D指定输出目录。

 iehistory查看IE浏览器的历史记录

netscan查看网路连接情况,相当于看 netstat -ano

screenshot 查看截屏,-D将截屏输出到指定目录

modules查看驱动程序,moddump 导出驱动程序 -D指定导出目录

svcscan查看开启的windows服务。

printkey查看注册表项

hivelist 查看注册表信息, hivedump导出注册表信息。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

苦行僧(csdn)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值