© 哨兵
    GITLAB
    • I. GITLAB CVE-2020-10977 任意文件读取漏洞
    • II. GITLAB CVE-2020-10977 任意文件读取漏洞导致的RCE
    COBALT STIKE
    • I. COBALT STIKE服务器搭建历程
    • II. COBALT STIKE服务器隐藏真实IP
    • III. 域名前置隐藏C2服务器
    • IV. CS上线木马免杀入门
    APACHE LOG4J2
    • I. APACHE LOG4J2 RCE复现历程
    OCR IN BP
    • I. BURPSUITE验证码插件实验
    CTF
    • I. CTF - 代码审计向
    • II. CTF - 密码学与杂项
    二进制研究/BIN
    • I. HIKVISION-CONFIGURATIONFILES-DECRYPTER
    • II. ROUTER-BINFILE-ANALYSIS
    POLKIT
    • I. POLKIT-CVE-2021-3560
    • II. POLKIT-CVE-2021-4034复现
    代理池:BASED ON SCYLLA
    • I. SCYLLA 搭建步骤
    WAF
    • I. MOD-WAF-BYPASS-WALKTHROUGH
    • II. MODSEC & CLOUDFLARE WAF INITIAL RESEARCH
    代码审计
    • I. DYNAMIC-ANALYSIS-OF-JAVA-FRAMEWORK-CODE
    • II. 安全与开发之:MAVEN构建排错
    • III. 浪潮CLUSTERENGINEV4.0代码审计历程
    SPRING
    • I. SPRINGBOOT-MEMORY-FILES-HEAPDUMP-ANALYSIS
    • II. CVE-2022-22947 SPRING-CLOUD-GATEWAY-RCE
    其他研究
    • I. SQL注入原理分析
    • II. STRUTS2DESER
    • III. 基于内存的SHIRO框架WEBSHELL攻击研究
    • IV. 通达OA利用代码分析
    • V. JRMP-GADGET
    反序列化
    • I. SHIRODESER
    • II. JAVADESER

本文发布于:2022-02-19并最后修改于:2022-02-22 | 哨兵安全实验室

Print document Edit on github

Cobalt Stike备忘录 II

本章阐述重点在于如何搭建针对C2服务器进行CDN接入以及真实ip隐藏

没写完,卡在CDN上线和CS密钥修改了,有空会继续补充完。

cobaltstrike服务端配置

TIPS: 查看Cobalt Stike服务器搭建

  • 登录VPS启动teamserver
  • 修改域名dns到Cloudflare
  • 添加DNS A记录到teamserver监听的VPS 真实IP

  • SSL/TLS - 边缘证书 - 确保如下选项为OFF:
    • 自动 HTTPS 重写/始终使用 HTTPS
  • 缓存 - 配置 - always online

2022-02-19-1.43.26.png

等待完成ping域名后已经接入CDN;

cobaltstrike客户端配置

  • 添加Listeners 并填写host和port
  • Cloudflare HTTP端口 80,8080,8880,2052,2082,2086,2095
  • Cloudflare HTTPS端口 443,2053,2083,2087,2096,8443

2022-02-19-1.18.45.md.png

如上配置可以上线成功,并且存在相关域名的流量,但进行进一步分析后发现仍然存在相关CS服务器的流量交互

于是我就在想是否客户端是否能够通过域名的方式进行流量请求呢?于是我进行了踩坑:

1x01 Client config 1

Beacon Http:

Http Host(s)/Stager/Header均填写对应域名;Http Port为CF支持解析HTTP端口

失败,无法上线;

1x02 Client config 2

Beacon Https:

Http Host(s)/Stager/Header均填写对应域名;Http Port为CF支持解析HTTP端口

成功上线;但是执行Beacon无返回,如下:

beacon> getuid
[*] Tasked beacon to get userid
[+] host called home, sent: 8 bytes

多提一句:1x01/1x02

http与https在数据包中的体现是http包与tcp/tls的区别;有兴趣可以看我抓下来的数据包

于是我尝试针对靶机中的流量尝试分析,发现当尝试执行beacon,靶机流量会定向到cf.profile配置的api接口:

http://domain/api/1

301–> https://domain/api/1

return–> code525 SSL handshake failed

看起来像是ssl证书的问题,想起来CloudFlare SSL模式为自签名证书,于是修改为CF CA证书进一步排查问题;

经过72个小时的重复的枯燥工作,得出一个结论:

在尝试基于CDN技术进行CS服务器隐藏ip时,http(s) Hosts栏必须填入相关cs主机的真实ip;

验证

生成木马 payload=windows/beacon_http/reverse_http

执行shell命令

beacon> shell ipconfig

在测试靶机里打开wireshark监听流量,流量已经发送到对应域名:

2022-02-19-1.40.12.png

返回

等待执行命令的返回包

2022-02-19-1.34.52.png

参考

  • 反溯源-cs和msf域名上线
  • 红队基础建设:隐藏你的C2 server
  • 检测与隐藏Cobaltstrike服务器/#CDN
  • C2服务器隐藏真实ip

申明

转载请申明本文档链接
Post by: Bin4xin.

其他

HOME · 镜像 · 博客 · WIKI

此文档对您有帮助吗

文章目录
    • 1x01 Client config 1
    • 1x02 Client config 2
  • .. / 研究 / CobaltStike /

    Author: Bin4xin.
    Build Ver: 2.1.5.1db1b0f release By Action.
    Time Build in: Sat, 07 May 2022 08:56:41 +0800
    Last modified Modified: 2022-02-22