Tiago Souza - Tecnologia, Riscos e Segurança

Como analisar malware baseado em macros VBA

O Vba2Graph é uma ferramenta para Análise de Malware baseado em macros VBA. Auxilia na análise de macros maliciosas do Office. É capaz gerar um gráfico das chamadas de VBA, com possíveis palavras-chave maliciosas destacadas. Permite a análise rápida de macros maliciosas e a fácil compreensão do fluxo de execução.

Recursos:

Prós:

Contras:

Exemplos:

Exemplo 1:

Trickbot downloader - utiliza o objeto Resize como trigger inicial, seguido pelas triggers TextBox_Change.

Figura 1: exemplo de uso Vba2Graph Figura 1: exemplo de uso Vba2Graph

.

Exemplo 2:

Figura 2: exemplo de uso Vba2Graph Figura 2: exemplo de uso Vba2Graph

.

Instalação:

Instalação oletools:

https://github.com/decalage2/oletools/wiki/Install

Instalação Requerimentos Python:

pip2 install -r requirements.txt

Instalação Graphviz:

Windows

Instale Graphviz msi:

https://graphviz.gitlab.io/_pages/Download/Download_windows.html

Adicione dot.exe à variável de ambiente PATH ou somente:

set PATH=%PATH%;C:\Program Files (x86)\Graphviz2.38\bin

Mac

brew install graphviz

Ubuntu

sudo apt-get install graphviz

Arch

sudo pacman -S graphviz

Utilização do Vba2Graph:

usage: vba2graph.py [-h] [-o OUTPUT] [-c {0,1,2,3}] (-i INPUT | -f FILE)

optional arguments: -h, --help show this help message and exit -o OUTPUT, --output OUTPUT output folder (default: "output") -c {0,1,2,3}, --colors {0,1,2,3} color scheme number [0, 1, 2, 3] (default: 0 - B&W) -i INPUT, --input INPUT olevba generated file or .bas file -f FILE, --file FILE Office file with macros

Exemplos de Utilização (Todas as Plataformas):

Somente Python 2 é suportado:

Generate call graph directly from an Office file with macros [tnx @doomedraven]

python2 vba2graph.py -f malicious.doc -c 2

Generate vba code using olevba then pipe it to vba2graph

olevba malicious.doc | python2 vba2graph.py -c 1

Generate call graph from VBA code

python2 vba2graph.py -i vba_code.bas -o output_folder

Output / Saída:

Você terá 4 pastas no seu diretório de output:

Processamento em Lote:

Mac/Linux:

O arquivo de script batch.sh é anexado para executar olevba e vba2graph em uma pasta de entrada de documentos maliciosos.

Exclua o diretório output. Utilize com cuidado.

.


.

Fonte: Github do projeto // Autor: @MalwareCantFly

Tradução por Tiago Souza

Disclaimer: Todas as informações aqui contidas são para fins didáticos e não para causar danos e prejuízos para alguém, usem sempre o conhecimento aqui compartilhado com ética e responsabilidade. Não nos responsabilizamos pela utilização indevida do conteúdo aqui exposto. Leia mais no aviso legal em nosso site.

.

#VBA #macro #malware