
CobaltStrike 리디렉터(nginx 리버스 프록시, letsencrypt) 설정을 위한 자동화 스크립트
HTTP RATs (CobaltStrike Beacon, meterpreter 등) 및 CobaltStrike DNS Beacon과 호환되는 자동 리다이렉터 설정 도구입니다. 이 스크립트는 nginx 리버스 프록시 또는 dnsmasq를 사용한 DNS 프록시/포워더를 설정할 수 있습니다. HTTPS를 선택하면 letsencrypt certbot을 자동으로 설정하고 리다이렉터 도메인 이름에 대한 유효한 letsencrypt SSL 인증서를 획득한 후 생성된 구성을 사용하여 nginx를 시작합니다.
리버스 프록시 방식을 사용하면 여러 개의 리다이렉터를 각각 고유한 유효 인증서와 함께 설정하여, CobaltStrike가 자체 서명/신뢰할 수 없는 인증서를 사용하더라도 모두 동일한 CobaltStrike HTTPS 스테이저/리스너를 가리키도록 할 수 있습니다.
또한 스크립트로 생성된 nginx 구성을 수정하여 추가 기능을 추가할 수도 있습니다. 예를 들어, CobaltStrike malleable c2 프로필과 일치하는 트래픽만 프록시하고 그 외의 경우 정적 페이지나 다른 프록시를 제공하도록 선택할 수 있습니다. 구성은 user-agent 헤더에 원본 소스 IP를 추가하여 CobaltStrike 웹 로그에서 직접 확인할 수 있도록 합니다 (아래 그림 참조).
구성을 약간 조정하면 비콘의 HTTPS 트래픽을 팀서버의 HTTP 리스너로 SSL 오프로드할 수도 있습니다!

git clone https://github.com/taherio/redi.git
cd redi
chmod u+x redi.sh
./redi.sh <리다이렉터 도메인> <팀서버 IP/도메인> <http/https>
# DNS 리다이렉터의 경우 대안
./redi.sh <팀서버 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}";
}
}