From 378820bf233e4ad0d6e160ec6472d2e2315cfb5c Mon Sep 17 00:00:00 2001 From: Mike Auty Date: Sat, 8 Dec 2018 17:45:28 +0000 Subject: [PATCH] More 'inheritance' fixes. --- volatility/plugins/linux/elfs.py | 8 ++++++-- volatility/plugins/linux/lsof.py | 8 ++++++-- volatility/plugins/linux/malfind.py | 8 ++++++-- 3 files changed, 18 insertions(+), 6 deletions(-) diff --git a/volatility/plugins/linux/elfs.py b/volatility/plugins/linux/elfs.py index c59254c22..d4f813a44 100644 --- a/volatility/plugins/linux/elfs.py +++ b/volatility/plugins/linux/elfs.py @@ -3,6 +3,7 @@ typically found in Linux's /proc file system. """ from volatility.framework import renderers +from volatility.framework.configuration import requirements from volatility.framework.interfaces import plugins from volatility.framework.objects import utility from volatility.framework.renderers import format_hints @@ -14,8 +15,11 @@ class Elfs(plugins.PluginInterface): @classmethod def get_requirements(cls): - # Since we're calling the plugin, make sure we have the plugin's requirements - return pslist.PsList.get_requirements() + [] + return [requirements.TranslationLayerRequirement(name = 'primary', + description = 'Kernel Address Space', + architectures = ["Intel32", "Intel64"]), + requirements.SymbolRequirement(name = "vmlinux", + description = "Linux Kernel")] def _generator(self, tasks): for task in tasks: diff --git a/volatility/plugins/linux/lsof.py b/volatility/plugins/linux/lsof.py index 8fea245d3..4e5396017 100644 --- a/volatility/plugins/linux/lsof.py +++ b/volatility/plugins/linux/lsof.py @@ -5,6 +5,7 @@ import logging from volatility.framework import renderers from volatility.framework.automagic import linux +from volatility.framework.configuration import requirements from volatility.framework.interfaces import plugins from volatility.framework.objects import utility from volatility.plugins.linux import pslist @@ -17,8 +18,11 @@ class Lsof(plugins.PluginInterface): @classmethod def get_requirements(cls): - # Since we're calling the plugin, make sure we have the plugin's requirements - return pslist.PsList.get_requirements() + [] + return [requirements.TranslationLayerRequirement(name = 'primary', + description = 'Kernel Address Space', + architectures = ["Intel32", "Intel64"]), + requirements.SymbolRequirement(name = "vmlinux", + description = "Linux Kernel")] def _generator(self, tasks): for task in tasks: diff --git a/volatility/plugins/linux/malfind.py b/volatility/plugins/linux/malfind.py index 10ae8b209..7ed13d6cb 100644 --- a/volatility/plugins/linux/malfind.py +++ b/volatility/plugins/linux/malfind.py @@ -3,6 +3,7 @@ import volatility.framework.interfaces.renderers as interfaces_renderers import volatility.plugins.linux.pslist as pslist from volatility.framework import constants from volatility.framework import renderers +from volatility.framework.configuration import requirements from volatility.framework.objects import utility from volatility.framework.renderers import format_hints @@ -12,8 +13,11 @@ class Malfind(interfaces_plugins.PluginInterface): @classmethod def get_requirements(cls): - # Since we're calling the plugin, make sure we have the plugin's requirements - return pslist.PsList.get_requirements() + [] + return [requirements.TranslationLayerRequirement(name = 'primary', + description = 'Kernel Address Space', + architectures = ["Intel32", "Intel64"]), + requirements.SymbolRequirement(name = "vmlinux", + description = "Linux Kernel")] def list_injections(self, task): """Generate memory regions for a process that may contain