memtriage v0.3.2-alpha: quickly query a Windows machine for RAM artifacts
memtriage
Allows you to quickly query a live Windows machine for RAM artifacts
This tool utilizes the Winpmem drivers to access physical memory and Volatility for analysis.
Caveats:
- Doesn’t work with Device Guard enabled.
- Should be tested on machines before deploying.
Volatility Plugins
The following are currently supported:
- pslist
- dlllist
- ldrmodules
- modules
- handles
- malfind
- driverirp
- psxview
- privs
- svcscan
- getsids
- vadinfo
- netscan
- cmdline
- envars
- verinfo
- atoms
- shimcachemem
- apihooks
- procdump
- dlldump
- moddump
- dumpfiles
- volshell
Changelog v0.3.2 alpha
- Minor bug fixes
- Adding att_* drivers for modern OSes.
Download
Example Usage
No Need to Specify Profiles
Memtriage will attempt to figure out the profile automatically and run with the appropriate settings. If there is a not an exact match, Memtriage will attempt to use the closest named profile available. Therefore, there is a possibility that object definitions won’t line up exactly (like process names etc), which you may also see when running Volatility with an incorrect profile. Profiles can be added to the Volatility code, and the executable can be recompiled with pyinstaller.
Loading and Unloading the Driver
By default, memtriage.exe
will attempt to load the driver when it first runs, and unload it when it exists. You may however load and unload the driver manually with the –load and –unload options. You may also request that the driver remain loaded after plugins have finished running with the –leave option.
> memtriage.exe --leave --plugins=dumpfiles --dumpdir=outdir --physoffset=1066160184 --keepname
Service Name
The default service name that is created is pmem. You may specify a different service name with the –service= option. You must then use this –service= option for future invocations if you leave the driver loaded. Example:
> memtriage.exe --leave --service=somename --plugins=dlllist --pid=2924 [snip] > memtriage.exe --unload --service=somename
Running Plugins
You may run several plugins at a time by specifying them with comma delimitation with the –plugins= option. Example:
> memtriage.exe --plugins=pslist,handles,dlllist
Other options will be used for the appropriate plugin. Example:
Source: https://github.com/gleeda/