Files
Sec-Interview/_book/Chapter8/8-9.md
T
2025-11-08 21:00:06 +08:00

32 lines
2.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
### 多级代理如何做一个 CDN 进行中转
**步骤一:准备 C2 服务器**
首先,你需要一台公网服务器作为你的 C2 服务器
1. **购买一台云服务器**:选择一个知名云服务商,比如 AWS、Azure、Google Cloud 或 Linode
2. **配置 C2 框架**:安装你的渗透测试框架,例如 **Cobalt Strike**、**Metasploit** 或 **Sliver**
3. **配置监听器**:在 C2 框架中设置一个 HTTP/HTTPS 的监听器。**确保监听的端口是 80 或 443**,这是 CDN 默认支持的端口,也是最常见的 Web 流量端口
**步骤二:配置 CDN 服务**
接下来,你需要配置一个 CDN 服务来指向你的 C2 服务器。这里我们以 Cloudflare 为例,因为它是最常用且免费的选项
1. **注册域名**:你需要一个自己的域名。可以是任何后缀,比如 `.com``.net``.xyz`
2. **将域名解析到 Cloudflare**
- 在域名注册商那里,将域名的 DNS 服务器修改为 Cloudflare 提供的 DNS 服务器
- 在 Cloudflare 中,添加你的域名
3. **创建 DNS 记录**
- 在 Cloudflare 的 DNS 设置页面,创建一个 **A 记录**,将你想要的子域名(例如 `cdn.yourdomain.com`)指向你的 **C2 服务器的真实 IP 地址**
- **关键步骤**:确保这个记录的代理状态(Proxy status)设置为 **“已代理”(Proxied)**,即那个云朵图标是亮的。这是告诉 Cloudflare 将流量通过它的网络中转,而不是直接解析到你的 IP
4. **配置 SSL/TLS**
- 在 Cloudflare 的 SSL/TLS 设置页面,将模式设置为 **“完全 (严格)”(Full (strict)**。这会确保从客户端到 Cloudflare 的流量是加密的,同时从 Cloudflare 到你的服务器的流量也是加密的
- 你需要在你的 C2 服务器上为你的域名安装一个有效的 SSL 证书。可以使用 Let's Encrypt 免费生成
**步骤三:在目标机器上执行**
现在,你已经有了一个通过 CDN 中转的 HTTPS 流量通道
1. **生成 payload**:使用你的 C2 框架生成一个 payload,其回调地址(Callback URL)就是你刚才配置的 **CDN 子域名**(例如 `https://cdn.yourdomain.com/`
2. **执行 payload**:将这个 payload 部署到目标机器上并执行
3. **C2 通信**:当 payload 在目标机器上运行时,它会向 `cdn.yourdomain.com` 发送 HTTPS 请求。这个请求首先会到达 Cloudflare 的边缘节点,Cloudflare 识别到这是一个代理流量,然后将它转发到你后台配置的 C2 服务器的真实 IP 地址。这样,C2 服务器就能与目标机器建立连接