# Volatility # Copyright (C) 2007-2013 Volatility Foundation # # This file is part of Volatility. # # Volatility is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # Volatility is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with Volatility. If not, see . # import volatility.plugins.taskmods as taskmods from volatility.renderers import TreeGrid class Cmdline(taskmods.DllList): """Display process command-line arguments""" def unified_output(self, data): # blank header in case there is no shimcache data return TreeGrid([("Process", str), ("PID", int), ("CommandLine", str), ], self.generator(data)) def generator(self, data): for task in data: cmdline = "" if task.Peb: cmdline = "{0}".format(str(task.Peb.ProcessParameters.CommandLine or '')).strip() yield (0, [str(task.ImageFileName), int(task.UniqueProcessId), str(cmdline)])