内存取证分析,笔记版+实战,基础

发布于:2022-12-21 ⋅ 阅读:(1254) ⋅ 点赞:(0)

内存镜像就是复制本机的内存。

什么时候需要:比武,bitlocker密钥分析,微信密钥,恶意软件分析。

制作内存镜像:FTK(mem格式),弘连刀锋现场快区,Dumplit

分析内存镜像:volaitlity,有2,3两个版本。

制作时间注意,一个是utc时间,一个是本地时间。

psscan透露较多,会把隐藏进程都拿出来,如果有恶意程序隐藏也会扫出来。

pstree 就是父子进程明显,亦可以防止进程伪装

dlllist看动态链接库,看到不正常dlllist,有些

netscan链接协议,本地地址,链接状态,,监听端口

C:\Users\余不为\Desktop\众多软件工具\内存\VolatilityWorkbench-v2.1>volatility.exe -fD:\新建文件夹\memdump.mem --profile Win7SP1x86_23418 netscan
Volatility Foundation Volatility Framework 2.6.121->\Device\Ide\IdePort20| POffset:         

Proto  协议类型  Local Address     本地开启端口             Foreign Address   外部地址端口  

State    链接状态        Pid      Owner         

可以看恶意程序给服务端传东西的时候,可以看。

modscan查看内核驱动

driverscan查看内核隐藏

procdump -D 路径 -p 端口号    可以把内存里面的东西拿出来

fliescan可以扫描内存中的文件 可以看到名称路径还有权限

dumpfiles -Q 0x00000000be8094c0(不同文件不一样)-D 路径D:\临时    把文件拉出来。

但是不知道为什么,我就是出错

hivelist查看内存中的注册表信息

cmdline 显示运行参数

printkey -K "SAM\Dompr intkeyains\Account\Users\Name" 能获取SAM表中的用户

printkey -K "SOFTWARE\Microsoft\WindowsNT\CurrentVersion\Winlogon" 能获取SAM表中的用户

hushdump -y(注册表 system的virtual地址)-s(SAM的virtual值)此命令能获取密码的hash值,但是我个感觉没什么用,不如直接hashdump

svcscan查看所有windows服务

接下来是vilotility3的学习,好像是win10系统2支持不了,3基于python环境,操作不一样一点。


1:在python38里面打开,cmd(注意,一定是要python38文件夹里面)

2 :直接上代码

python.exe volatility3\vol.py -f D:\新建文件夹\memdump.mem windows.info(我要放里面的镜像)

3:然后后面要加上windows.info

针对如下信息,我做一个解释

NTBulidLab展现的是系统版本号,后面网上可以找到,搜索。

systemtime系统时间   

 1:info改成cmdline

2:pstree进程列表

3:dlllist动态进程库

4:hashdump爆密

5:registry.hivelist查询注册表相关信息

6:netscan.NetScan网络链接

7;svcscan服务器运行状态

8:envars查看环境状态

9:dumpfiles进程缓存文件

下面是我搜集的部分命令,可用于linux和mac,当然linux也可

常用命令:
    layerwriter:列出内存镜像platform信息
    linux.bash:从内存中恢复bash命令历史记录
    linux.check_afinfo:验证网络协议的操作功能指针
    linux.check_syscall:检查系统调用表中的挂钩
    linux.elfs:列出所有进程的所有内存映射ELF文件
    linux.lsmod:列出加载的内核模块
    linux.lsof:列出所有进程的所有内存映射
    linux.malfind:列出可能包含注入代码的进程内存范围
    linux.proc:列出所有进程的所有内存映射
    linux.pslist:列出linux内存映像中存在的进程
    linux.pstree:列出进程树
    mac.bash:从内存中恢复bash命令历史记录
    mac.check_syscall:检查系统调用表中的挂钩
    mac.check_sysctl:检查sysctl处理程序的挂钩
    mac.check_trap_table:检查trap表中的挂钩
    mac.ifconfig:列出网卡信息
    mac.lsmod:列出加载的内核模块
    mac.lsof:列出所有进程的所有内存映射
    mac.malfind:列出可能包含注入代码的进程内存范围
    mac.netstat:列出所有进程的所有网络连接
    mac.psaux:恢复程序命令行参数
    mac.pslist:列出linux内存映像中存在的进程
    mac.pstree:列出进程树
    mac.tasks:列出Mac内存映像中存在的进程
    windows.info:显示正在分析的内存样本的OS和内核详细信息
    windows.callbacks:列出内核回调和通知例程
    windows.cmdline:列出进程命令行参数
    windows.dlldump:将进程内存范围DLL转储
    windows.dlllist:列出Windows内存映像中已加载的dll模块
    windows.driverirp:在Windows内存映像中列出驱动程序的IRP
    windows.driverscan:扫描Windows内存映像中存在的驱动程序
    windows.filescan:扫描Windows内存映像中存在的文件对象
    windows.handles:列出进程打开的句柄
    windows.malfind:列出可能包含注入代码的进程内存范围
    windows.moddump:转储内核模块
    windows.modscan:扫描Windows内存映像中存在的模块
    windows.mutantscan:扫描Windows内存映像中存在的互斥锁
    windows.pslist:列出Windows内存映像中存在的进程
    windows.psscan:扫描Windows内存映像中存在的进程
    windows.pstree:列出进程树
    windows.procdump:转储处理可执行映像
    windows.registry.certificates:列出注册表中存储的证书
    windows.registry.hivelist:列出内存映像中存在的注册表配置单元
    windows.registry.hivescan:扫描Windows内存映像中存在的注册表配置单元
    windows.registry.printkey:在配置单元或特定键值下列出注册表项
    windows.registry.userassist:打印用户助手注册表项和信息
    windows.ssdt:列出系统调用表
    windows.strings:读取字符串命令的输出,并指示每个字符串属于哪个进程
    windows.svcscan:扫描Windows服务
    windows.symlinkscan:扫描Windows内存映像中存在的链接
 


下面是偏向于实战的操作。(是前面基础部分的进阶版)

加密容器,恶意程序,微信密钥三大块

加密容器:

vc veracryptsummary加密容器

TC

Bitlocker加密

1:veracryptsummary可以查看容器情况

2:

本文含有隐藏内容,请 开通VIP 后查看

网站公告

今日签到

点亮在社区的每一天
去签到