至少我们曾经在一起过。 {#hitokoto}
来自:一言
前言
cs跨平台上线相关项目挺多(这里就不做上线协议啥的分析了,网上相关文章也很多...)
目前大部分好像常用的是CrossC2,但是Crossc2没有开源,所以选择用geacon(golang编写的,还可以看懂一些)来进行二开.geacon作者很久前就不再更新,不能适配cs的profile配置文件,所以需要做一些简单的二开。
二次修改的项目:geacon
环境准备
cs4.4(下载原版再用cs-agent破解就可以了): https://github.com/k8gege/Aggressor/releases
profile配置(选了个简单的):https://github.com/BC-SECURITY/Malleable-C2-Profiles/blob/dddad4550180e92eb33275b5167249a74f9a22e0/Normal/gmail.profile
1.首先运行cs服务端,这里选择的是原版的cs4.4,然后用上方的profile文件作为profile配置启动teamserver
![渗透测试|简单二开geacon之适配cs4.x跨平台上线linux和mac[一]](http://static.51tbox.com/static/2024-11-29/col/5964ec211bd59f67949e39f2a8ee52c5/8e4807032f9b444baa562f40558edaee.png.jpg)
2.客户端也正常运行没问题.任意新建一个http或者https监听器,看你需求。
![渗透测试|简单二开geacon之适配cs4.x跨平台上线linux和mac[一]](http://static.51tbox.com/static/2024-11-29/col/5964ec211bd59f67949e39f2a8ee52c5/dc84c6d6004248fa8ce3de9fa8e5b07e.png.jpg)
跨平台上线
1.根据geacon官方说明中,需要先对.cobaltstrike.beacon_keys(文件会在cs服务端生成,相关原理可以在先知看cs逆向分析系列文章)进行解密获取到加密的key。解密工具:https://github.com/darkr4y/geacon/tree/master/tools/BeaconTool
![渗透测试|简单二开geacon之适配cs4.x跨平台上线linux和mac[一]](http://static.51tbox.com/static/2024-11-29/col/5964ec211bd59f67949e39f2a8ee52c5/0d4c1b1514644bfd8f63845fd1f1b5b2.png.jpg)
2.将相关的key放入的geacon的config.go文件中.
![渗透测试|简单二开geacon之适配cs4.x跨平台上线linux和mac[一]](http://static.51tbox.com/static/2024-11-29/col/5964ec211bd59f67949e39f2a8ee52c5/b3699b7af35b43eab940238c88b1df44.png.jpg)
3.接下来就开始根据profile配置文件来修改相关代码.(只看profile里的http-get和http-post部分的配置即可)
![渗透测试|简单二开geacon之适配cs4.x跨平台上线linux和mac[一]](http://static.51tbox.com/static/2024-11-29/col/5964ec211bd59f67949e39f2a8ee52c5/676848269eb54be58cb9bdf3f1b39901.png.jpg)
配置Get的header和burp代理(方便查看调试)
![渗透测试|简单二开geacon之适配cs4.x跨平台上线linux和mac[一]](http://static.51tbox.com/static/2024-11-29/col/5964ec211bd59f67949e39f2a8ee52c5/0021b47e0e8f406a84363a52988b70bc.png.jpg)
配置Post请求相关信息
![渗透测试|简单二开geacon之适配cs4.x跨平台上线linux和mac[一]](http://static.51tbox.com/static/2024-11-29/col/5964ec211bd59f67949e39f2a8ee52c5/492bbb813fd54adba9e45b7ecf33d746.png.jpg)
![渗透测试|简单二开geacon之适配cs4.x跨平台上线linux和mac[一]](http://static.51tbox.com/static/2024-11-29/col/5964ec211bd59f67949e39f2a8ee52c5/f8a63d3ed43c41869a69dc66e653989f.png.jpg)
4.尝试运行.
![渗透测试|简单二开geacon之适配cs4.x跨平台上线linux和mac[一]](http://static.51tbox.com/static/2024-11-29/col/5964ec211bd59f67949e39f2a8ee52c5/141aba4bda7b49829e2394fd9bc15262.png.jpg)
(mac成功上线)
![渗透测试|简单二开geacon之适配cs4.x跨平台上线linux和mac[一]](http://static.51tbox.com/static/2024-11-29/col/5964ec211bd59f67949e39f2a8ee52c5/2d1dda9ffea641b7b2999835e011a24e.png.jpg)
(命令执行正常)
(文件管理正常)
通信流量
获取需要执行的命令
![渗透测试|简单二开geacon之适配cs4.x跨平台上线linux和mac[一]](http://static.51tbox.com/static/2024-11-29/col/5964ec211bd59f67949e39f2a8ee52c5/9de45b12b1d64a549a9ac491872694b8.png.jpg)
再把命令结果post到服务端
![渗透测试|简单二开geacon之适配cs4.x跨平台上线linux和mac[一]](http://static.51tbox.com/static/2024-11-29/col/5964ec211bd59f67949e39f2a8ee52c5/372900b5aa6e4f54a4907b65514339f4.png.jpg)
可以发现已经适配了的profile文件.
成品代码
相关代码已打包:https://github.com/TryHello/edit-gencon
下一篇教大家如何给cs新加自定义命令
注意:如果不会自己适配profile文件的话,请用我git里提供的profile文件启动cs!还有解密key的jar文件已经编译好放上去了,直接使用就行.
51工具盒子