5. CobaltStrike之Macros & Windows Executable&(s)
CobaltStrike’s Macros
Macros介绍及实战
Word功能方便了编辑者对word的使用,实现了各种自动化的功能。宏病毒是一种寄存在文档或模板的宏中的计算机病毒。一旦打开这样的文档,其中的宏就会被执行,于是宏病毒就会被激活,转移到计算机上。
Marcos实战
- 首先你的word编辑器必须要有宏的插件,我这里使用的是WPS插件在同级目录的附录文件下。 
- 使用CS生成宏代码  - CobaltStrike并不能直接生成宏文件,这需要你自己动手将宏代码粘贴。步骤呢也是很简单的,大概就是创建word文档,进入宏视图粘贴代码,保存即可。
 

- 复制宏代码并生成宏文件:后缀文件名必须是.doc | .datm | .dacm   
- 在目标主机上的word中启用宏,并打开宏文件便会执行载荷。 
CobaltStrike’s Windows Executable&(s)
Executable介绍及实战
Windows Executable即windows可执行文件,Cobalt Strike提供了四种方式

- Windows EXE:这个就是我们用烂的后门类型 
- Windows Service EXE:则是一种需要通过exe注册service的方式,可开机自启。 - 实战步骤1:通过CS生成Windows Service EXE。默认情况下,这个对话导出 x86 payload stage。勾选 Use x64 payload 框来使用 x64 Artifact 生成一个 x64 stage。Sign executable file则需要和C2扩展文件联动,这点以后的章节在讲。  
- 实战步骤2:Instsrv.exe可以给系统安装和删除服务,Srvany.exe可以让程序以服务的方式运行。这里我们只需要使用到Instsrv.exe,打开cmd使用命令安装服务instsrv.exe attack-service C:\Users\Win-LMB\Desktop\artifact.exe。Instsrv在同级目录下的附录文件夹中。 
- 实战步骤3:打开Service.msc找到我们刚刚创建的服务attack-service并启动,提示无法启动,但是已反弹shell。由于服务级别的可执行程序,需要使用system权限的命令进行安装,所以反弹的shell也直接是system级别,但是同样的对方中招的概率也相对小的多。 
 
- Windows DLL(32-bit)及Windows DLL(64-bit):dll会产生一个进程,并将载荷迁移至进程内,使用rundll32.exe来从命令行加载DLL。 - 实战步骤:使用CobaltStrike windows Executable生成一个dll文件,拷贝至目标主机上,使用用户权限的cmd执行命令:rundll32.exe artifact.dll start。虽然弹出无法启动的提示,但是已经反弹shell。  
 
- Executable(s)介绍及实战:带S的Executable(S)表示一个不使用 stager 的可执行文件,直接和监听器连接、传输数据和命令,同样也有四种利用手法。 

