浅谈Volatility取证

admin 2024年12月26日14:40:01评论9 views字数 3606阅读12分1秒阅读模式
简介

内存取证是数字取证的一个重要分支,它专注于在计算机或其他数字设备运行时,对其存储的内存数据进行采集、分析和提取,以获取有关设备状态、操作过程和可能存在的安全事件。

对于内存数据,最为常用的工具便是 Volatility Framework,其为 Volatility Foundation 所开发的一款对内存取证分析提供支持的框架,对多平台电子设备的内存数据均提供了支持,并且也支持加载第三方模块来增加功能。

工具安装指南

浅谈Volatility取证

浅谈Volatility取证
浅谈Volatility取证

2or3?

        当前,Volatility 已经开发到了 Volatility 3,但是第三代仍然在开发阶段,其功能相较于第二代还不完善,但是第三代对 Windows 10 以上的 Windows 系统所导出的内存数据提供了更完善的支持,并实现了更快的分析速度,故建议进行内存取证工作的时候,两代 Volatility 都备着。

Volatility2

项目地址:

https://github.com/volatilityfoundation/volatility
apt install gitgit clone https://github.com/volatilityfoundation/volatility.git
Volatility3
pip3 install volatility3
浅谈Volatility取证
浅谈Volatility取证
浅谈Volatility取证

需要注意的是,Linux 系统中,允许 Python2 与 Python3 环境并存,但是二者的依赖库(python-dev)和第三方包(通过 pip 包管理器安装的第三方包)并不会共享,也就意味着如果如上文安装好 Vol 2 之后,相关操作也要再重复一遍

安装依赖
Python2 的相关编译依赖库
sudo apt install python2-dev
pip 相关包:
pip2 install pycryptodome -i https://pypi.tuna.tsinghua.edu.cn/simplepip2 install yara -i https://pypi.tuna.tsinghua.edu.cn/simplepip2 install distorm3 -i https://pypi.tuna.tsinghua.edu.cn/simple
工具使用方法

使用演示

python2 vol.py -f file imageinfo  #f:指定分析的内存镜像文件名
浅谈Volatility取证
浅谈Volatility取证
浅谈Volatility取证
VolatilityFramework 版本: 2.6.1确定配置文件: Volatility 正在基于 KDBGKernelDebugging符号)搜索来确定合适的配置文件。建议的配置文件: 根据搜索结果,建议使用的配置文件包括多个 Windows7SP1 x64 版本,如 Win7SP1x64, Win7SP0x64, Win2008R2SP0x64 等。地址空间层(ASLayer):Layer1WindowsAMD64PagedMemory (KernelAS),表示这是64位分页内存。Layer2FileAddressSpace,表示内存数据来源于文件。PAE类型: 没有启用物理地址扩展(NoPAE)。调试信息:DTB (DebugTableBase): 0x187000L。KDBG (KernelDebuggingsymbol): 0xf80004038120L。系统信息:处理器数量: 2KPCR (KernelProcessorControlRegionforCPU0: 0xfffff8000403a000L。KPCRforCPU1: 0xfffff8800450000L。KUSER_SHARED_DATA: 0xfffff78000000000L。时间戳:镜像日期和时间: 2021-12-1012:33:14UTC+00:00镜像本地日期和时间: 2021-12-1020:33:14 +0800,考虑到了时区偏移。

  浅谈Volatility取证

浅谈Volatility取证
浅谈Volatility取证

grep的妙用

grep 是一个在类 Unix 系统中用于搜索文本的命令行工具。它可以根据指定的模式匹配文本,并输出匹配的行。由于内存其本身就为操作系统和软件运行时的动态数据,所以绝大多数的数据都是直接以明文形式储存在内存之中的,往往直接 strings 进行提取明文字符串并加以筛选,就能获得一些意想不到的惊喜

vol.py -f file --profile=Win7SP1x64 filescan | grep Users #filescan:提取文件对象(file objects)池信息
浅谈Volatility取证
文件信息:0x0000000013dca4790: 这是一个文件的物理地址,文件权限为 -W-rw-,文件路径为 DeviceHarddiskVolume1UsersJiaJiaAppDataRoamingTelegram Desktoptdataemoj1cache_3。......
常用命令表
imageinfo:显示内存镜像的基本信息,帮助确定正确的配置文件。hashdump:提取内存中的密码哈希。pslist:列出内存中所有进程的列表。psscan:扫描并列出所有进程,包括隐藏的进程。malfind:查找可能的恶意代码,通过查找不规则的内存分配。dlllist:列出指定进程加载的所有 DLL。connscan:列出所有网络连接。netscan:显示网络连接和监听端口。filescan:扫描并列出文件系统中的文件。procdump:从内存中导出进程。memdump:导出内存区域的内容。apihooks:检测 API 钩子,可能用于恶意软件隐藏其活动。ssdt:列出系统服务描述表,用于检测 SSDT 钩子。svcscan:扫描并列出所有服务,包括隐藏的服务。driverscan:扫描并列出所有加载的驱动程序。hivelist:列出所有注册表 hive。printkey:打印注册表键的内容。psxview:显示特定进程的线程和内存映射。cmdline:显示进程的命令行参数。volshell:提供一个交互式 shell,允许在 Volatility 中执行命令。mft:提取文件的 MFT 条目。timeliner:创建时间线,帮助确定事件发生的顺序。iehistory:提取 Internet Explorer 的浏览历史。firefoxhistory:提取 Firefox 浏览器的历史记录。chromehistory:提取 Chrome 浏览器的历史记录。autoruns:列出在系统启动时自动运行的程序。lnkfiles:提取快捷方式文件。mpsl:列出进程的内存页共享。mutantscan:扫描并列出所有进程的互斥锁。amcache:查看AmCache应用程序痕迹信息。apihooks:检测内核及进程的内存空间中的API hook。atoms:列出会话及窗口站atom表。atomscan:Atom表的池扫描(Pool scanner)。auditpol:列出注册表HKLMSECURITYPolicyPolAdtEv的审计策略信息。bigpools:使用BigPagePoolScanner转储大分页池(big page pools)。bioskbd:从实时模式内存中读取键盘缓冲数据(早期电脑可以读取出BIOS开机密码)。cachedump:获取内存中缓存的域帐号的密码哈希。callbacks:打印全系统通知例程。clipboard:提取Windows剪贴板中的内容。cmdline:显示进程命令行参数。cmdscan:提取执行的命令行历史记录(扫描_COMMAND_HISTORY信息)。connections:打印系统打开的网络连接(仅支持Windows XP 和2003)。connscan:打印TCP连接信息。consoles:提取执行的命令行历史记录(扫描_CONSOLE_INFORMATION信息)。crashinfo:提取崩溃转储信息。deskscan:tagDESKTOP池扫描(Poolscaner)。devicetree:显示设备树信息。dlldump:从进程地址空间转储动态链接库。dlllist:打印每个进程加载的动态链接库列表。driverirp:IRP hook驱动检测。drivermodule:关联驱动对象至内核模块。driverscan:驱动对象池扫描。dumpcerts:提取RAS私钥及SSL公钥。dumpfiles:提取内存中映射或缓存的文件。hpakinfo:查看HPAK文件属性及相关信息。idt:显示中断描述符表(Interrupt Descriptor Table)。iehistory:重建IE缓存及访问历史记录。imagecopy:将物理地址空间导出原生DD镜像文件。imageinfo:查看/识别镜像信息。
参考链接:
https://hello-ctf.com/HC_MISC/memory/

原文始发于微信公众号(无尽藏攻防实验室):浅谈Volatility取证

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

发表评论

匿名网友 填写信息