
Plugin do WinDbg para análise dinâmica automatizada de malware e extração de IOC. Executa dentro do depurador para coletar indicadores predefinidos e os escreve em disco para resposta a incidentes e contenção.
Módulo de depuração para automação de análise de malware
Para um post passo a passo sobre como usar o Lupo, com imagens e instruções, veja este post: https://medium.com/@vishal_thakur/lupo-malware-ioc-extractor-cc86ae76b85d
Trabalhando em incidentes de segurança que envolvem malware, nos deparamos regularmente com situações onde sentimos a necessidade de automatizar partes do processo de análise, pois a análise manual completa, na maioria das vezes, não é possível para todos os casos devido a muitos fatores (tempo, habilidades, escala, etc.).
Escrevi o Lupo principalmente para automatizar e acelerar o processo o máximo possível. O Lupo é uma ferramenta de análise dinâmica que pode ser usada como um módulo com o depurador. A primeira versão funciona com o popular depurador do Windows — WinDbg. Lançarei versões para outros depuradores no futuro.
A maneira como a ferramenta funciona é bastante direta. Você carrega o Lupo no depurador e depois o executa. Ele percorre o malware, coleta IOCs predefinidos e os escreve em um arquivo de texto no disco. Você pode então usar essas informações para conter e neutralizar campanhas de malware ou simplesmente responder ao incidente de segurança em que está trabalhando.

Darei mais alguns detalhes sobre a ferramenta em si, mas não muito sobre seu funcionamento interno, pelo menos não aqui. Precisamos ter em mente que os autores de malware são inteligentes o suficiente para ajustar rapidamente o código para nos causar problemas!
A ferramenta é escrita em C++ e usa o framework de depuração do Windows para executar o código. Pode ser usada com o WinDbg como um 'plugin' para ajudar a automatizar o processo de análise.
Se quiser saber mais sobre a ferramenta, sinta-se à vontade para entrar em contato comigo ou comentar abaixo.
Baixe todas as DLLs deste repositório. Você também precisa de todas as dependências VC++, a maneira mais fácil é instalar o Visual Studio (a versão Community funciona) e selecionar todos os componentes C++.
Usar a ferramenta é muito fácil. Ela funciona da seguinte forma:
Salve a extensão Lupo no diretório de extensões (padrão: subdiretório sdk\samples\exts do diretório de instalação). Você também pode definir o caminho das extensões usando o comando ‘.extpath[+] [Directory[;…]]’.
Inicie o depurador
Anexe o processo a ser depurado (malware neste caso)
Carregue o Lupo usando o comando ‘.load’.
Execute o Lupo usando este comando: ‘lupo.go’
Todos os resultados serão exibidos no console e também escritos em um novo arquivo de texto no disco. O caminho e o nome deste arquivo de texto também serão exibidos no console. Pronto!
Você pode opcionalmente usar os resultados do Lupo com esta outra ferramenta que escrevi — Ragno, para avançar sua pesquisa e resposta agregando OSINT para a pegada mais ampla da campanha com a qual você possivelmente está lidando. Você pode ler sobre o Ragno em outro post aqui: https://medium.com/@vishal_thakur/introducing-ragno-ioc-multiplier-9b75834353bb