O galpão é um aplicativo que permite inspecionar o tempo de execução .NET de um programa para extrair informações úteis. Ele pode ser usado para inspecionar aplicativos maliciosos, a fim de ter uma primeira visão geral de quais informações são armazenadas assim que o malware é executado.
Shed é capaz de:
Shed é uma ferramenta de linha de comando. Para exibir todas as opções disponíveis, execute:
shed.exe --help
Para inspecionar um processo já em execução, você precisa passar o PID para derramar . Exemplo:
Shed.exe --pid 2356
Para inspecionar um binário, o galpão precisa executá -lo e anexá -lo para inspecionar o tempo de execução. Exemplo:
Shed.exe --exe malware.exe
Você também pode especificar a quantidade de tempo (em milissegundos) para esperar antes para suspender o processo. Isso permitirá que o programa tenha tempo para inicializar suas propriedades. Exemplo:
Shed.exe --timeout 2000 --exe malware.exe
Com o galpão é possível injetar uma montagem .NET em um processo remoto, graças à Biblioteca ManagedInjector. Para fazer isso, é necessário especificar o PID do processo e o exe injetar. Uma vez que a montagem é injetada, é possível ativá -lo, invocando um método específico. As regras para identificar o método são herdadas pelo projeto ManagementInjector e são as seguintes:
Por exemplo, para injetar a Assembléia injetada de montagem no processo com o PID 1234 , você tem o galpão de corrida com o seguinte comando:
shed.exe --pid 1234 --exe InjectedAssembly.dll --inject
Com a opção - -método, você pode especificar um método, do injetededassembly.exe para invocar.
Encontre abaixo um exemplo de execução:
Por padrão, despeja o Hump the Heap e os módulos. Se você deseja que apenas um deles especifique a opção --dump-heap para despejar apenas os objetos no heap ou o --Dump-Modules para despejar apenas os módulos.
O despejo de heap pode produzir muitas informações que não são estritamente úteis para a análise. Você pode filtrá -lo usando dois arquivos:
Blacklist.txt Este arquivo contém o prefixo de nomes de tipo que não deve ser registrado
whitelist.txt Este arquivo contém o prefixo de nomes de tipo que deve ser registrado mesmo que a lista negra na lista negra
Por exemplo, se você deseja filtrar todo o espaço de nome System.io , mas está interessado em registrar o System.io.memorystream , poderá adicionar o primeiro valor ao Blacklist.txt e o segundo em Whitelist.txt .
Na pasta Exemplos, você encontrará três projetos diferentes que você pode usar para testar o galpão . Exemplo:
Shed.exe --exe ..ExamplesConfigurationSampleConfigurationSample.exe
Quando a análise é concluída, o galpão será impresso onde você pode encontrar o resultado, como mostrado abaixo:
[+] Resultado salvo para C: Shed Result 7800
Se você instalou o Visual Studio, basta executar o arquivo Build.bat em lote, ele criará um arquivo zip dentro da pasta Build.
Copyright (c) 2017 Antonio Parata - @S4Tan
Licença: GNU Licença pública geral, versão 2 ou posterior; Veja a licença incluída neste arquivo para obter detalhes.