长亭百川云 - 文章详情

cobaltstrike域前置+nginx反向代理快速部署指南

T00ls安全

103

2024-07-13

前言

很久没有玩cs了,拿着之前零零散散的笔记搭环境效率太低,所以整理了一篇思路清晰一点的,方便以后就算时间长了没搞也能快速部署起来。

就是比较常规的玩法,用到的是腾讯云的api网关nginx反向直接做的本地端口之间的转发。欢迎师傅们多多指教,希望学习到更多的姿势。

cs去特征就不在这里搞了,比如自己生成profile文件啥的,我们直接把去完特征的cs打包上传到服务器。

域名解析申请生成证书

新建一个vps服务器(ubuntu2023):ip:12.34.56.78

godaddy申请域名,做好dns指向www.aaa.bbb — 12.34.56.78

上vps

安装certbot  
apt-add-repository -r ppa:certbot/certbot   
add-apt-repository universe  
apt-get update  
apt-get install python-certbot-nginx(如果这个装不上就用下面的python3-certbot-nginx)  
apt-get install python3-certbot-nginx  
#申请证书  
certbot --nginx -d www.aaa.bbb  
#证书到期手动更新,证书有效期一般是90天  
certbot renew --dry-run  
#证书路径  /etc/letsencrypt/live/www.aaa.bbb/fullchain.pem   
#私钥路径  /etc/letsencrypt/live/www.aaa.bbb/privkey.pem

cs的https配置

(这里参考的也是土司之前一位大师傅的文章,具体链接忘记了,抱歉抱歉)

生成.p12格式文件

#格式  
openssl pkcs12 -export -in server.pem -inkey server.key -out spoofdomain.p12 -name 域名 -passout pass:密码  
#举例  
openssl pkcs12 -export -in /etc/letsencrypt/live/www.aaa.bbb/fullchain.pem -inkey /etc/letsencrypt/live/www.aaa.bbb/privkey.pem -out spoofdomain.p12 -name www.aaa.bbb -passout pass:123456

生成.store格式文件,放到cs的目录下

#格式  
keytool -importkeystore -deststorepass 密码 -destkeypass 密码 -destkeystore cs.store -srckeystore spoofdomain.p12 -srcstoretype PKCS12 -srcstorepass 密码 -alias 域名  
#举例  
keytool -importkeystore -deststorepass 123456 -destkeypass 123456 -destkeystore cs.store -srckeystore spoofdomain.p12 -srcstoretype PKCS12 -srcstorepass 123456 -alias www.aaa.bbb

编辑我们生成的配置文件random.profile,在末尾添加如下内容(这里的profile文件是为了去掉请求包特征用随机工具生成的)

`https-certificate {         set keystore "cs.store";         set password "123456";   `

`}`


修改teamserver配置文件

#格式  
javax.net.ssl.keyStore=.store文件路径 -Djavax.net.ssl.keyStorePassword=证书密码  
#例子  
javax.net.ssl.keyStore=./cs.store -Djavax.net.ssl.keyStorePassword=123456

启动teamserver

screen -S cs  
chmod +x teamserver  
./teamserver [ip] [密码] ./random.profile  
./teamserver 12.34.56.78 123456 ./random.profile

配置nginx反向代理

可以在两台vps之间转发,也可以做本地的端口转发,本质上都是为了筛选入网流量,我这里做的是本地端口之间的转发

#配置nginx     
vim /etc/nginx/sites-enabled/default

将配置信息搞进去,主要是做user-agent过滤,user-agent的具体值是在cs的profile文件中指定的。

如果数据包中的ua信息和profile里预设的一样,那就转到c2监听的端口4556,如果不匹配,那就跳转到腾讯官网。

值得注意的是,这里的域名如果刚注册做完解析,需要等一个小时左右,不然nginx配置文件重载会报错,可以先用vps的ip地址来配置之后再改。

location  / {  
            proxy_set_header        Host $host;  
            proxy_set_header        X-Real-IP $remote_addr;  
            proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;  
            proxy_set_header        X-Forwarded-Proto $scheme;  
             
            set $flag 0;  
                if ( $http_user_agent = "Mozilla/6.0 (Windows NT 7.2; Win64; x64) AppleWebKit/538.37 (KHTML, like Gecko) Chrome/100.0.3538.110 Safari/538.37" )  
                {  
                        proxy_pass https://www.aaa.bbb:4556;  
                           set $flag 1;  
                }  
                if ( $flag = 0)  
                {  
                        rewrite ^/(.*)[        DISCUZ_CODE_20        ]nbsp; https://www.tencent.com/zh-cn/about.html; #跳转  
                }  
                 
        }

配置完之后保存重启

#重载配置文件:  
/etc/init.d/nginx reload  
#重启nginx:  
service nginx restart  
#查看nginx状态  
service nginx status  
  
#防火墙配置策略  
ufw allow 443

配置域前置

我这里用的是腾讯云的api网关:

https://console.cloud.tencent.com/apigateway/service?rid=1

新建api网关

点击新建的服务,进入配置界面

新建一个通用api

用生成的前置域名访问,发现可以跳转到腾讯主页(跳转地址是在nginx配置文件里搞的)

配置listener

这里的域名可以用api网关,端口从443—>4556

之后就可以生成beacon测试了,对beacon.exe抓包如下,可以隐藏特征。

原文链接

https://www.t00ls.com/articles-71236.html

相关推荐
关注或联系我们
添加百川云公众号,移动管理云安全产品
咨询热线:
4000-327-707
百川公众号
百川公众号
百川云客服
百川云客服

Copyright ©2024 北京长亭科技有限公司
icon
京ICP备 2024055124号-2