volatility取证的使用----windows内存

简介

kali下默认安装

可以对windows,linux,mac,android的内存进行分析

内存文件的准备

Win2003SP2x86下使用工具dumpit获取到了内存文件,保存为ROOT-6B78B0CA4D-20190202-044824.raw
其实不光.raw .vmem .img都是可以的

获取基本信息

volatility -f ROOT-6B78B0CA4D-20190202-044824.raw imageinfo

这里最关键的就是获取profile的类型,因为不同的系统数据结构啥的不一样,所以得用--profile=来指定。
这里自动猜解可能的系统类型,一般情况下第一个是正确的

列出所有进程

volatility -f ROOT-6B78B0CA4D-20190202-044824.raw --profile=Win2003SP0x86 pslist
psxview可以查看隐藏进程

No suitable address space mapping found
Tried to open image as:
MachOAddressSpace: mac: need base
LimeAddressSpace: lime: need base
WindowsHiberFileSpace32: No base Address Space
WindowsCrashDumpSpace64BitMap: No base Address Space
VMWareMetaAddressSpace: No base Address Space
WindowsCrashDumpSpace64: No base Address Space
HPAKAddressSpace: No base Address Space
VirtualBoxCoreDumpElf64: No base Address Space
VMWareAddressSpace: No base Address Space
QemuCoreDumpElf: No base Address Space
WindowsCrashDumpSpace32: No base Address Space
SkipDuplicatesAMD64PagedMemory: No base Address Space
WindowsAMD64PagedMemory: No base Address Space

这是因为profile指定错误的原因,因为我自己提取的内存文件,确实是win2003sp2,而他第一个猜解的profile是sp0,没有关系,挨个试试就好了,重新列出进程

volatility -f ROOT-6B78B0CA4D-20190202-044824.raw --profile=Win2003SP0x86 pslist

提取出某个进程的内容

我在win2003记事本和notepad++里面藏了个 "flag{123456}",我要找出来。

volatility -f ROOT-6B78B0CA4D-20190202-044824.raw --profile=Win2003SP2x86 pslist|grep notepad  

grep可以很快的在众多进程找出我们想要的进程
我们需要找的就是进程的pid

volatility -f ROOT-6B78B0CA4D-20190202-044824.raw --profile=Win2003SP2x86 memdump -p 1448 -D /root    

这条指令是把pid为1448进程的数据保存为dmp格式,保存到/root目录下边。

最后一步用winhex打开dmp文件,搜索flag就能找到保存的内容了。

内存中注册表以及位置

volatility -f ROOT-6B78B0CA4D-20190202-044824.raw --profile=Win2003SP2x86 hivelist

得到用户密码的哈希值

volatility -f ROOT-6B78B0CA4D-20190202-044824.raw --profile=Win2003SP2x86 -y (system的virtual地址) -s (sam的virtual地址)

cmd执行的命令

volatility -f ROOT-6B78B0CA4D-20190202-044824.raw --profile=Win2003SP2x86 cmdscan

网络连接情况

volatility -f ROOT-6B78B0CA4D-20190202-044824.raw --profile=Win2003SP2x86 netscan

IE使用情况

volatility -f ROOT-6B78B0CA4D-20190202-044824.raw --profile=Win2003SP2x86 iehistory

filescan查看文件

volatility -f ROOT-6B78B0CA4D-20190202-044824.raw --profile=Win2003SP2x86 filescan

提取filescan的文件,利用dumpfiles

volatility -f memory  --profile=WinXPSP2x86 dumpfiles -Q 0x00000000053e9658 --dump-dir=./
-Q制定了文件物理位置的开始,另一个参数制定了保存的位置。

volatility的使用的更多相关文章

  1. volatility内存取证

    最近参加了45届世界技能大赛的山东选拔赛,样题里有一个题如下: 师傅好不容易拿到了压缩包的密码,刚准备输入,电脑蓝屏 了... = =",题意简单明了,易于理解.一看就是内存取证的题并且已经 ...

  2. 利用Volatility对Linux内存取证分析-常用命令翻译

    命令翻译 linux_apihooks - 检查用户名apihooks linux_arp - 打印ARP表 linux_aslr_shift - 自动检测Linux aslr改变 linux_ban ...

  3. talib 中文文档(九):# Volatility Indicator Functions 波动率指标函数

    Volatility Indicator Functions 波动率指标函数 ATR - Average True Range 函数名:ATR 名称:真实波动幅度均值 简介:真实波动幅度均值(ATR) ...

  4. 一道ctf-内存取证volatility的学习使用

    环境:kali 0x00 volatility官方文档 https://github.com/volatilityfoundation/volatility 在分析之前,需要先判断当前的镜像信息,分析 ...

  5. 内存取证工具-volatility、foremost

    内存取证 1. 内存取证工具volatility 猜测dump文件的profile值 root@kali:~/CTF# volatility -f mem.vmem imageinfo Volatil ...

  6. Volatility取证使用笔记

    最近简单的了解了一下Volatility这个开源的取证框架,这个框架能够对导出的内存镜像镜像分析,能过通过获取内核的数据结构,使用插件获取内存的详细情况和运行状态,同时可以直接dump系统文件,屏幕截 ...

  7. volatility 命令

    https://blog.csdn.net/chanyi0040/article/details/100956582 表格 1 Volatility支持的插件列表 插件名称 功能 amcache 查看 ...

  8. 分析由Python编写的大型项目(Volatility和Cuckoo)

    之前使用python都是用来做一些简单的脚本,本质上和bat批处理文件没有区别. 但是Python是可以用来编写大型的项目的,比如: Volatility:https://code.google.co ...

  9. volatility内存取证学习

    工具下载: Linux环境 apt-get install volatility 各种依赖的安装,(视情况安装) #Distorm3:牛逼的反编译库 pip install distorm3 ​ #Y ...

随机推荐

  1. Python实现读取json文件到excel表

    一.需求 1.'score.json' 文件内容: { "1":["小花",99,100,98.5], "2":["小王" ...

  2. (转)HTML5之渐变

    <!DOCTYPE> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta h ...

  3. hadoop二次排序

    import java.io.DataInput; import java.io.DataOutput; import java.io.File; import java.io.IOException ...

  4. CGAL 4.6 - Surface Reconstruction from Point Sets

    http://doc.cgal.org/latest/Surface_reconstruction_points_3/ The following example reads a point set, ...

  5. Python—面向对象 封装03

    接着上面的一篇继续往下: 如何隐藏 在python中用双下划线开头的方式将属性隐藏起来(设置成私有的) class A: __x = 1 # _A__x = 1 def __init__(self, ...

  6. mui 的多图片上传

    pickHead(){ var _this = this; plus.gallery.pick(function(path){ _this.headImage=path; var files = [{ ...

  7. o'Reill的SVG精髓(第二版)学习笔记——第十一章

    第十一章:滤镜 11.1滤镜的工作原理 当SVG阅读器程序处理一个图形对象时,它会将对象呈现在位图输出设备上:在某一时刻,阅读器程序会把对象的描述信息转换为一组对应的像素,然后呈现在输出设备上.例如我 ...

  8. watch、computed、methods的区别

    1. `computed`属性的结果会被缓存,除非依赖的响应式属性变化才会重新计算.主要当作属性来使用,要return出去一个值:2. `methods`方法表示一个具体的操作,主要书写业务逻辑:3. ...

  9. Linux/Mac scp命令笔记

    scp命令用于Linux之间复制文件和目录. 参数说明: -1: 强制scp命令使用协议ssh1-2: 强制scp命令使用协议ssh2-4: 强制scp命令只使用IPv4寻址-6: 强制scp命令只使 ...

  10. ios应用数据存储方式(归档) - 转

    一.简单说明  1.在使用plist进行数据存储和读取,只适用于系统自带的一些常用类型才能用,且必须先获取路径相对麻烦.  2.偏好设置(将所有的东西都保存在同一个文件夹下面,且主要用于存储应用的设置 ...