内存取证 volatility(上)

简介: 0xThrL狗蛋师傅整理的内存取证笔记 有问题可以联系狗蛋师傅VX:GD0xThrL

0xThrL狗蛋师傅整理的内存取证笔记   有问题可以联系狗蛋师傅VX:GD0xThrL7e1d089f7a0e4a129cc1f23706ebb25f.png

这是国赛里面有的内存取证相关的学习笔记绝对的详细


Volatility是一款开源的内存取证分析工具,支持Windows,Linux,MaC,Android等多类型操作系统系统的内存取证方式。该工具是由python开发的,目前支持python2、python3环境。目前作者已公布了两个版本的Volatility,Volatility2是基于py2环境,Volatility3是基于py3环境,接下来小编将带领大家分别对这两个环境进行安装。


这是国赛样题公布出的内存取证方向师傅们在练手


第二部分 数字取证调查(150分)


任务2 :基于Linux的内存取证(40分)


A集团某服务器系统感染恶意程序,导致系统关键文件被破坏,请分析A集团提供的系统镜像和内存镜像,找到系统镜像中的恶意软件,分析恶意软件行为。


本任务素材清单:存储镜像、内存镜像。


请按要求完成该部分的工作任务。

image.png


一、安装Volatility(Linux版)


  • 在volatility官网下载一个linux版本的安装包

dcd158a9e65efc3deb804ffd3087a092.png

下载下来的文件放到/usr/local/sbin目录下 用户自己编译的软件默认会安装到这个目录下(差不多就等于放可执行文件的)


  • 解压:unzip FileName.zip
  • 文件夹改名 mv FileName volatility

639374f17e73c0ca26a83ca837b5973a.png

在使用是可能会权限失败,那就单独吧文件拿出来使用

4dd0425d529d37deef4109a88f7c98e0.png

添加环境变量 echo $PATH

b4eba5b16370cb48be65ebdb51db8fa1.png

可以直接使用了

13f7567e5d1a3f744a7e10945f4f12d0.png


  • 可以直接分析 vmem文件

二、Volatility命令大全


volatility -f xxx.vmem imageinfo 分析系统 第一步 知道系统后加上 profile=xxxx


  • 查看用户名和密码
volatility -f xxx.vmem profile=Win7SP1x64 hashdump/lsadump


查看进程

volatility -f xxx.vmem --profile=Win7sp1x64 pslist/pstree(与pslist差不多,但可以识别子进程和父进程)/psscan显示隐藏进程


  • 提取进程
volatility -f xxx.vmem --profile=Win7sp1x64 memdump -p [PID] -D 保存路径 以dump形式保存


volatility -f xxx.vmem --profile=Win7sp1x64 procdump -p [PID] -D 保存路径 以exe形式保存
  • 同时还支持输入 --offset地址的方式来提取一些无法从pid提的进程
volatility -f xxx.vmem --profile=Win7sp1x64 procdump --offset 0x7d789b50 -D 路径

9f1b43f92a3b92ff5b6d1e4f5208ddfb.png

查看命令行操作

volatility -f xxx.vmem --profile=Win7sp1x64 cmdscan


找计算机用户名 步骤

volatility -f xxx.vmem --profile=Win7sp1x64 hivelist 查看注册表

找到system的位置 我这里是0xfffff8a000024010

4676ca6cbe501d1bbe6e9461ace67f4a.png


  • 打开注册表键值
volatility -f xxx.vmem --profile=Win7sp1x64 printkey


volatility -f xxx.vmem --profile=Win7sp1X64 -o 0xfffffffffffff(system地址)printkey 指定查看 查看system的注册表用户有哪些

9cff742578fb7e8247606e5611744991.png

volatility -f xxx.vmem --profile=Win7SP1x64 -o 0xfffff8a000024010 printkey -K "ControlSet001\(键值)" 查看system注册表键值

81dba538f67ee04a8cca9874ec3f1db2.png

  • 一定要注意的是反斜杠 \\\\\\\\\\ 一般计算机名都在“ControlSet001\Control\ComputerName\ComputerName”
  • 此题的计算机名就在此

7549660ec07158da83e62bda68d7a2be.png

注册表数据

volatility -f xxx.vmem --profile=Win7sp1x64 hivelist (找注册表system位置)

7ecc9738990c40b90591cd860f2beae5.png

volatility -f xxx.vmem --profile=Win7sp1x64 hivedump -o 0xfffff8a000024010(注册表的Virtual)

86abe23ec85b6c8966a04829d5f49da5.png

查看网络连接

volatility -f xxx.vmem --profile=win7sp1x64 netscan

image.png


  • 查看Windows服务
volatility -f xxx.vmem --profile=Win7SP1x64 svcscan

查看浏览器历史记录

volatility -f xxx.vmem --profile=Win7SP1x64 iehistory

e6e40cb9299cf89d5251d95189fee6f7.png

查看剪切板数据

volatility -f xxx.vmem --profile=Win7SP1x64 clipboard

6d69107792f035d68a2cb6685a5b9b03.png

  • 加参数 -v 可以到处数据
volatility -f xxx.vmem --profile=Win7SP1x64 clipboard -v >clip.txt

4dd73e847638d8c92b811f990d37886e.png

查看所有进程

volatility -f xxx.vmem --profile=Win7sp1x64 dilllist

加参数 -p [PID] 可以看进程相关的dll文件列表

762316908a389e3558fbc248f716ece0.png

获取内存中正在运行的程序

volatility -f xxx.vmem --profile=Win7sp1x64 userassist

a75f481f134e59cd1fa74b42268cd877.png

 除了这些命令以外,在取证中还会用到一些命令  我也给大家整理了一下  

grep xxx -A 5 -B 5 / grep xxx -C 5
-A<显示行数> 或 --after-context=<显示行数> : 除了显示符合范本样式的那一列之外,并显示该行之后的内容。
-B<显示行数> 或 --before-context=<显示行数> : 除了显示符合样式的那一行之外,并显示该行之前的内容。
-C<显示行数> 或 --context=<显示行数>或-<显示行数> : 除了显示符合样式的那一行之外,并显示该行之前后的内容。
binwalk xxx.exe 分析文件


目录
相关文章
|
4天前
|
安全 Linux Python
Volatility3内存取证工具安装及入门在Linux下的安装教程
Volatility3内存取证工具安装及入门在Linux下的安装教程
Volatility3内存取证工具安装及入门在Linux下的安装教程
|
4天前
|
安全 Python Linux
Kali Linux下Volatility2.6常见问题疑难杂症-内存取证信息安全管理与评估
Kali Linux下Volatility2.6常见问题疑难杂症-内存取证信息安全管理与评估
Kali Linux下Volatility2.6常见问题疑难杂症-内存取证信息安全管理与评估
|
4天前
|
数据安全/隐私保护 Python Windows
Volatility2.6内存取证工具安装及入门-2
Volatility2.6内存取证工具安装及入门
Volatility2.6内存取证工具安装及入门-2
|
4天前
|
安全 Python Linux
Volatility2.6内存取证工具安装及入门-1
Volatility2.6内存取证工具安装及入门
Volatility2.6内存取证工具安装及入门-1
|
6月前
|
安全 PHP 网络虚拟化
windows内存取证-简单
作为 Security Blue 团队的成员,您的任务是使用 Redline 和 Volatility 工具分析内存转储。您的目标是跟踪攻击者在受感染计算机上采取的步骤,并确定他们如何设法绕过网络入侵检测系统“NIDS”。您的调查将涉及识别攻击中使用的特定恶意软件系列及其特征。此外,您的任务是识别和缓解攻击者留下的任何痕迹或足迹。
|
6月前
|
安全 文件存储 数据安全/隐私保护
windows内存取证-中等难度-下篇
承接上文,我们继续学习
|
7月前
|
存储 安全 数据安全/隐私保护
Windows内存取证-中等难度 -上篇
此篇文章,主要学习到windows内存取证知识,此次学习将有3个场景,涉及内网横向域控等
|
缓存
内存取证工具Volatility学习(下)
内存取证工具Volatility学习
141 0
|
Web App开发 安全 Linux
内存取证工具Volatility学习(上)
内存取证工具Volatility学习
486 0
|
4天前
|
存储
浮点数在内存中的存储
浮点数在内存中的存储
25 0