Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
Vba2Graph — Vba2Graph - Gerar grafos de chamadas a partir de código VBA, para facilitar a análise de documentos maliciosos. | Kitploit
Ferramentas/GitHubGitHub/malwarecantfly/vba2graph
Análise EstáticaAnálise de CódigoEngenharia ReversaAnálise de Malware
GitHubmalwarecantfly/vba2graph

Vba2Graph

Vba2Graph - Gerar grafos de chamadas a partir de código VBA, para facilitar a análise de documentos maliciosos.

Ver Repositório
28345há 5 anosRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

Vba2Graph

Uma ferramenta para pesquisadores de segurança, que perdem seu tempo analisando macros maliciosas do Office.

Gera um grafo de chamadas VBA, com palavras-chave potencialmente maliciosas destacadas.

Permite análise rápida de macros maliciosas e fácil compreensão do fluxo de execução.

@MalwareCantFly

Funcionalidades

  • Destaque de palavras-chave
  • Suporte a Propriedades VBA
  • Suporte a declaração de funções externas
  • Macros complicadas com gatilhos de execução "_Change"
  • Esquemas de cores elegantes!

Prós

    ✓ Bastante rápido

    ✓ Funciona bem na maioria das macros maliciosas observadas em campo

Contras

    ✗ Estático (chamadas resolvidas dinamicamente não seriam reconhecidas)

Exemplos

Exemplo 1:

Downloader Trickbot - utiliza o evento Resize do objeto como gatilho inicial, seguido por gatilhos TextBox_Change.

Example 1

Exemplo 2:

Example2

Confira a pasta Examples para mais casos.

Instalação

Instalar oletools:

root@kitploit:~
https://github.com/decalage2/oletools/wiki/Install

Instalar Requisitos Python

root@kitploit:~
pip3 install -r requirements.txt

Instalar Graphviz

Windows

Instalar Graphviz:

root@kitploit:~
https://graphviz.gitlab.io/download/#windows

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

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

Mac

root@kitploit:~
brew install graphviz

Ubuntu

root@kitploit:~
sudo apt-get install graphviz

Arch

root@kitploit:~
sudo pacman -S graphviz

Uso

root@kitploit:~
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 Uso (Todas as Plataformas)

Observe que uma versão Python 2 está disponível na seção Releases, mas não é mais suportada.

root@kitploit:~
# Generate call graph directly from an Office file with macros [tnx @doomedraven]
python3 vba2graph.py -f malicious.doc -c 2    

# Generate vba code using olevba then pipe it to vba2graph
olevba3 malicious.doc | python3 vba2graph.py -c 1

# Generate call graph from VBA code
python3 vba2graph.py -i vba_code.bas -o output_folder

Saída

Você obterá 4 pastas em sua pasta de saída:

  • png: a imagem real do grafo que você está procurando
  • svg: a mesma imagem do grafo, mas em gráficos vetoriais
  • dot: o arquivo dot que foi usado para criar a imagem do grafo
  • bas: o código das funções VBA que foi reconhecido pelo script (para depuração)

Processamento em Lote

Mac/Linux:

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

Exclui o diretório output. use com cautela.

Licença

O código neste projeto é licenciado sob a Licença EPL-2.0.

Este projeto está utilizando as seguintes ferramentas e bibliotecas de código aberto de terceiros. Por favor, observe suas respectivas licenças.

  • oletools (Licença)
  • networkx (Licença)
  • pydot (Licença)
  • graphviz (Licença)
Baixar ferramenta