内存镜像就是复制本机的内存。
什么时候需要:比武,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: