Vba2Graph:一款通过VBA代码分析恶意软件的强大工具(带GUI)

2018-12-21 105075人围观 工具

前言

今天给大家介绍的是一款名叫Vba2Graph的恶意软件分析工具,这款工具可以根据VBA代码来生成调用图,以帮助研究人员更方便地分析恶意文档。

1.png

对于安全研究人员来说,很多时候都需要花费大量的时间来分析恶意Office宏文件。但如果我们能提供一个VBA调用图,并高亮标记潜在的恶意关键词,那么研究人员就可以快速对恶意宏进行分析,并了解其执行流程了。

功能介绍

1、 关键词高亮标记;

2、 VBA属性支持;

3、 支持外部函数声明;

4、 巧妙触发“_Change”执行;

5、 美观的配色方案。

特性

1、 速度非常快;

2、 支持目前绝大部分的恶意宏。

演示样例

样例1:

Trickbot下载器-使用了对象Resize事件来作为初始触发器,跟在TextBox_Change触发器的之后:

2.png

样例2:

3.png

注:Examples目录中提供了更多参考样例。

工具安装

安装oletools:

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

安装Python依赖:

pip2 install -r requirements.txt

安装Graphviz

Windows

安装Graphviz msi:

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

添加“dot.exe”到PATH环境变量中,或者运行:

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

macOS

brew install graphviz

Ubuntu

sudo apt-get install graphviz

Arch

sudo pacman -S graphviz

工具使用

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 fileor .bas file

  -fFILE, --file FILE  Office file withmacros

工具使用样例(全平台通用)

仅支持Python 2:

#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

输出结果

在你的输出目录下会生成4个文件夹:

1、 png:存储实际生成的图形文件;

2、 svg:相同的图形文件(矢量图);

3、 dot:dot文件,用来创建图形文件;

4、 bas:脚本所识别出的VBA函数代码。

项目地址

Vba2Graph:【GitHub传送门

* 参考来源:kitploit,FB小编Alpha_h4ck编译,转载请注明来自FreeBuf.COM

相关推荐
取消
Loading...

特别推荐

活动预告

填写个人信息

姓名
电话
邮箱
公司
行业
职位
css.php