自动化重定向器(redirector)设置工具,兼容 HTTP RAT(CobaltStrike Beacon、meterpreter 等)以及 CobaltStrike DNS Beacon。该脚本既可以设置 nginx 反向代理,也可以使用 dnsmasq 设置 DNS 代理/转发器。如果选择了 HTTPS,它将自动设置 letsencrypt certbot,为你的重定向器域名获取有效的 letsencrypt SSL 证书,并使用生成的配置启动 nginx。
反向代理方法允许设置多个重定向器,每个重定向器都有自己的有效证书,所有证书都指向同一个 CobaltStrike HTTPS stager/监听器,即使 CobaltStrike 使用自签名/不受信任的证书也可以。
还可以修改脚本生成的 nginx 配置以添加额外功能。例如,你可以选择仅代理与你的 CobaltStrike malleable C2 profile 匹配的流量,否则提供静态页面或其他代理。该配置会修改 user-agent 头,添加原始源 IP,这样你可以直接在 CobaltStrike Web 日志中看到它(见下图)。
通过一些配置调整,你甚至可以 SSL 卸载 beacon 的 HTTPS 流量到 teamserver 的 HTTP 监听器!

git clone https://github.com/taherio/redi.git
cd redi
chmod u+x redi.sh
./redi.sh <redirector domain> <teamserver ip/domain> <http/https>
#alternatively for dns redirector
./redi.sh <teamserver ip> dns
./redi.sh first.myredirector.ca,second.myredirector.ca,third.myredirector.ca myteamserver.com https
./redi.sh myredirector.ca myteamserver.com https
./redi.sh 192.0.0.1 dns
server {
listen 443 ssl;
server_name myredirector.ca;
ssl on;
ssl_certificate /etc/letsencrypt/live/myredirector.ca/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/myredirector.ca/privkey.pem;
location / {
proxy_pass https://myteamserver.com:443/;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header "User-Agent" "${http_user_agent} - Original IP ${remote_addr}";
}
}