Memtriage:一款Windows内存取证工具
source link: http://www.freebuf.com/sectool/179516.html?amp%3Butm_medium=referral
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
memtriage是一款Windows内存取证工具。该工具使用 Winpmem 来抓取内存dump,并使用 Volatility 进行分析。
注意事项:
当启用Device Guard时,该工具将无法正常工作;
应该在部署之前在机器上进行测试
Volatility 插件
以下是当前所支持的插件:
pslist dlllist ldrmodules modules handles malfind driverirp psxview privs svcscan getsids vadinfo netscan cmdline envars verinfo atoms shimcachemem apihooks procdump dlldump moddump dumpfiles volshell
使用示例
usage: memtriage.exe [-h] [--unload] [--load] [--debug] [--service SERVICE] [--output OUTPUT] [--dumpdir DUMPDIR] [--base BASE] [--offset OFFSET] [--memory MEMORY] [--pid PID] [--leave] [--plugins PLUGINS] [--physoffset PHYSOFFSET] [--physical] [--ignore] [--regex REGEX] [--name NAME] [--keepname] Memtriage options: optional arguments: -h, --help 显示帮助信息并退出 --unload 卸载驱动程序并退出 --load 加载驱动程序并退出 --debug 运行时输出调试消息 --service SERVICE 更改服务名称(默认为:pmem) --output OUTPUT 输出类型:json/text/csv --dumpdir DUMPDIR 将文件转储到的目录 (dlldump,procdump,moddump,vaddump,dumpfiles) --base BASE 转储PE文件 (dlldump,procdump,moddump) --offset OFFSET 进程物理偏移量 (dlldump,procdump,moddump,vaddump,dumpfiles) --memory MEMORY Carve作为一个内存样本而不是exe/disk (dlldump,procdump,moddump) --pid PID 对此进程ID进行操作 --leave 让pmem服务与驱动程序一起运行 --plugins PLUGINS 以逗号分隔要运行的插件列表:dlldump netscan cmdline procdump envars moddump handles dlllist psxview vadinfo dumpfiles svcscan malfind atoms apihooks volshell vaddump privs driverirp shimcachemem ldrmodules modules verinfo pslist getsids --physoffset PHYSOFFSET 在物理地址PHYSOFFSET转储文件对象 (dumpfiles) --physical 显示对象的物理地址 (pslist,handles,modules) --ignore 忽略模式匹配中的大小写(dumpfiles,verinfo) --regex REGEX 转储匹配REGEX的文件 (dumpfiles,driverirp,privs) --name NAME 要操作的进程/对象的名称 --keepname 保留原始文件名 (dumpfiles) --outfile OUTFILE 合并输出文件 (默认为:stdout)
无需指定配置文件
Memtriage会自动查找配置文件并选择使用适当的设置运行。如果没有完全匹配,Memtriage将尝试使可用的最接近的命名配置文件。因此,对象定义可能不会准确排列(如进程名称等),在使用不正确的配置文件运行Volatility时也可能会看到。可以将配置文件添加到Volatility代码中,可执行文件将会被pyinstaller重新编译。
加载和卸载驱动程序
默认情况下,memtriage.exe将在首次运行时尝试加载驱动程序,并在退出时进行卸载。此外,你也可以使用–load和–unload选项来手动加载和卸载驱动程序。你也可以使用–leave选项,使插件在运行完成后仍然保持加载状态。
> memtriage.exe --leave --plugins=dumpfiles --dumpdir=outdir --physoffset=1066160184 --keepname
服务名称
创建的默认服务名称是pmem。你可以使用–service=选项来指定其他的服务名称。如果你保持驱动程序加载状态,则必须使用此选项以用于将来的调用。示例:
> memtriage.exe --leave --service=somename --plugins=dlllist --pid=2924 [snip] > memtriage.exe --unload --service=somename
运行插件
你可以使用–plugins=选项以逗号分隔来指定多个插件一次同时执行。示例:
> memtriage.exe --plugins=pslist,handles,dlllist
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK