SHED是一个允许检查程序的.NET运行时的应用程序,以提取有用的信息。它可用于检查恶意应用程序,以便在执行恶意软件后首先存储信息的第一个一般概述。
棚子能够:
棚是一个命令行工具。显示所有可用选项运行:
shed.exe --help
为了检查已经运行的过程,您必须将PID传递给棚子。例子:
Shed.exe --pid 2356
为了检查二进制文件,棚子需要执行并将其附加到它上以检查运行时。例子:
Shed.exe --exe malware.exe
您还可以指定(以毫秒为单位)等待该过程的时间(以毫秒为单位)。这将使程序有时间初始化其属性。例子:
Shed.exe --timeout 2000 --exe malware.exe
通过托管原则库,使用SHED可以在远程过程中注入.NET组件。为了这样做,有必要指定过程的PID和EXE进行注入。一旦注入组件,就可以通过调用特定方法来激活它。识别该方法的规则是由托管项目继承的,如下:
例如,要使用PID 1234将汇编注射到该过程中,您的运行棚具有以下命令:
shed.exe --pid 1234 --exe InjectedAssembly.dll --inject
使用-Method选项,您可以从InjectedAssembly.exe中指定一种方法。
在下面查找执行示例:
默认情况下,棚子将堆和模块都转储。如果您只想其中一个指定- 降低选项,仅将对象或- 降低模型仅转储仅转储模块。
倾倒堆可能会产生很多信息,这些信息对于分析并不严格有用。您可以使用两个文件过滤它:
BlackList.txt此文件包含不得登录的类型名称前缀
Whitelist.txt此文件包含即使被黑名单也必须记录的类型名称前缀
例如,如果要过滤所有system.io命名空间,但是您对logging system.io.memorystream感兴趣,则可以将第一个值添加到blackList.txt ,第二个值将其添加到flayelist.txt 。
在示例文件夹中,您会找到可以使用的三个不同的项目来测试棚子。例子:
Shed.exe --exe ..ExamplesConfigurationSampleConfigurationSample.exe
分析完成后,棚子将打印在可以找到结果的地方,如下所示:
[+]结果保存到C: shed result 7800
如果您已经安装了Visual Studio,则只需运行build.bat批处理文件,它将在构建文件夹中创建一个zip文件。
版权(c)2017 Antonio Parata - @s4tan
许可证:GNU通用公共许可证,第2版或更高版本;有关详细信息,请参见此档案中包含的许可证。