mirror of
https://github.com/volatilityfoundation/volatility3.git
synced 2026-08-29 11:19:40 +02:00
Windows: Update pslist.py, add friendly option
This commit is contained in:
@@ -50,6 +50,12 @@ class PsList(interfaces.plugins.PluginInterface, timeliner.TimeLinerInterface):
|
||||
default=False,
|
||||
optional=True,
|
||||
),
|
||||
requirements.BooleanRequirement(
|
||||
name="friendly",
|
||||
description="Display process name in dump filename",
|
||||
default=False,
|
||||
optional=True,
|
||||
),
|
||||
]
|
||||
|
||||
@classmethod
|
||||
@@ -60,6 +66,7 @@ class PsList(interfaces.plugins.PluginInterface, timeliner.TimeLinerInterface):
|
||||
pe_table_name: str,
|
||||
proc: interfaces.objects.ObjectInterface,
|
||||
open_method: Type[interfaces.plugins.FileHandlerInterface],
|
||||
friendly: bool = False,
|
||||
) -> interfaces.plugins.FileHandlerInterface:
|
||||
"""Extracts the complete data for a process as a FileHandlerInterface
|
||||
|
||||
@@ -90,9 +97,20 @@ class PsList(interfaces.plugins.PluginInterface, timeliner.TimeLinerInterface):
|
||||
offset=peb.ImageBaseAddress,
|
||||
layer_name=proc_layer_name,
|
||||
)
|
||||
file_handle = open_method(
|
||||
f"pid.{proc.UniqueProcessId}.{peb.ImageBaseAddress:#x}.dmp"
|
||||
|
||||
process_name = proc.ImageFileName.cast(
|
||||
"string",
|
||||
max_length=proc.ImageFileName.vol.count,
|
||||
errors="replace",
|
||||
)
|
||||
if friendly:
|
||||
file_handle = open_method(
|
||||
f"{proc.UniqueProcessId}.{process_name}.{peb.ImageBaseAddress:#x}.dmp"
|
||||
)
|
||||
else:
|
||||
file_handle = open_method(
|
||||
f"pid.{proc.UniqueProcessId}.{peb.ImageBaseAddress:#x}.dmp"
|
||||
)
|
||||
for offset, data in dos_header.reconstruct():
|
||||
file_handle.seek(offset)
|
||||
file_handle.write(data)
|
||||
@@ -243,6 +261,7 @@ class PsList(interfaces.plugins.PluginInterface, timeliner.TimeLinerInterface):
|
||||
pe_table_name,
|
||||
proc,
|
||||
self.open,
|
||||
self.config["friendly"],
|
||||
)
|
||||
file_output = "Error outputting file"
|
||||
if file_handle:
|
||||
|
||||
Reference in New Issue
Block a user