内存取证分析基础,命令整理,包含vol2和vol3

内存取证是什么?

内存镜像就是本机的内存,把它存储在介质里面。

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

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

分析内存镜像:volaitlity,有2,3两个版本,美亚,弘连小工具,axiom

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

分享一下我自己的命令

快速一把唆:
首先写 volatility.exe -f
把内存拖入+imageinfo
之后要把imageinfo删掉
--profile +主机名+命令
常见命令
1:cmdscan 列出历史cmd命令
2:filescan 扫描文件,可以在命令最后加> 1.cvs,然后导入到Excel里面,用ctrl+f搜索也可以windowsFINDSTR
3:pslist 列举进程,从而得到PID ,PID意思是进程ID,和PPID ,PPId意思是父进程ID,和启动时间
      pstree和其作用相似,也是识别子父进程的
4:psscan:可以找到先前已终止(不活动)的进程以及被rootkit隐藏或解链的进程
5:connections命令列出活跃的连接和端口,以及本地和远程的ip、PID、端口等
6:hivelist 列举注册表信息,也可以看到很多东西的地址
7:iehistory获取浏览器浏览历史
8:cmdline查看cmd命令使用详情
9:svcscan查看开启的windows服务
     svcscan | findstr 什么东西(但是找到了第一个就会停止)
10:dlllist,可以看到每个进程(程序)运行所需要的所有动态链接库
11:printkey -K “SAM\Domains\Account\Users\Names”可以列出SAM表的用户
12:printkey -K “SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon”获取最后登录系统的用户
13:userassist获取内存中正运行的程序
14:timeliner列举时间线
15:volatility.exe -f 内存镜像.dd --profile=WinXPSP2x86 hashdump -y (注册表 system 的 virtual 地址 )-s(SAM 的 virtual 地址)
       该命令能从内存中获得密码hash
       但同样我们需要先知道SAM和system的地址
       sam表和system表的地址可以根据前面hivelist列出
16:netscan网络链接状况,ip地址
17:modules内核驱动modscan和driverscan可以用来看隐藏的东西
18:getsids查看SID
19:hashdump爆密码
20:dlllist -p进程号 完整路径 显示插件 和调用什么东西
21:mftparser |findstr xlsx可以查找指定文件,感觉比filescan指定性强
       同时也可以查看文件访问情况,mftparser看到所有文件访问情况
22:shellbags可以查看文件访问情况,并且能给出地址,之后可以搜
23:mftparser查看文件被访问的相关信息
24:dumpregistry --dump-dir=D:\临时\           命令的意思导出注册表,然后放到这个目录下。
25:procdump 可视化界面,可以找到内存原来运行过的进程相关信息,比如运行过软件的版本号。
26:-p 端口号 handles -t file  找到某端口调用文件    -p是指定进程  -t是显示的结果类型  file就是显示文件
27: ldrmodules -p 880   检测未链接的动态链接DLL
27:malfind -p 880 malfind:用于寻找可能注入到各种进程中的恶意软件.malfind  是查找隐藏和注入代码的插件命令
28:cmdline #列出所有命令行下运行的程序
29:joblinks #检索计划任务

 

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


如果是在windows里面运行

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

2 :直接上代码

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

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

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

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

systemtime系统时间   

内存取证分析基础,命令整理,包含vol2和vol3_第1张图片

 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内存映像中存在的链接
 

 

你可能感兴趣的:(内存训练,安全)