如何使用Digital Ocean构建C2基础设施 - 第一部分
作者:Lee Kagan
注意:本文中提到的技术和工具可能已过时,不适用于当前情况。但本文仍可作为学习机会,并可能更新或集成到现代工具和技术中。
为红队和渗透测试部署攻击性基础设施可能既重复又复杂。作为团队基础设施负责人,我经常重复相同的基线部署。在红蓝对抗中,双方都面临成功发起攻击和成功防御的挑战。
对于红队,我的关注点包括:
- 稳定性:系统性能和可靠的通信通道
- 安全性:操作安全(OPSEC)和防御调查者/蓝队
- 功能性:根据团队需求添加/删除/修改功能
Red Team Infrastructure wiki(https://github.com/bluscreenofjeff/Red-Team-Infrastructure-Wiki)是这一概念的优秀示例和资源。
本文将介绍如何使用Digital Ocean和Cobalt Strike团队服务器以半自动化方式构建基础设施,这是更复杂自动化流程和工具的开始。第二部分将发布更多内容。
构建内容
- 3个Digital Ocean droplets(用于Cobalt Strike团队服务器的不同角色)
- 自定义SSH配置
- 服务器健康监控
- 团队服务器的防火墙访问
- 使用Let’s Encrypt实现HTTPS信标
所需准备
- Cobalt Strike许可证或试用版(可替换为MSF或Empire等)
- Digital Ocean账户
- C2K文件(https://github.com/invokethreatguy/C2K)
- 域名的DNS配置访问(需设置DNS A记录)
基础设施设置步骤(大部分脚本化)
- 通过Digital Ocean Web UI部署droplets
- SSH到每个droplet,添加新的sudo用户、SSH密钥并传输C2K文件
- 限制SSH访问仅限新用户和密钥
- 运行C2K构建脚本,包括:
- 更新系统
- 安装lterm(用于控制台日志记录,感谢KillswitchGUI的工具:https://github.com/killswitch-GUI)
- 安装Cobalt Strike的Java依赖
- 激活Cobalt Strike
- 替换当前SSH配置为自定义文件
- 创建防火墙规则
- 运行HTTPsC2DoneRight.sh(感谢KillswitchGUI的工具:https://github.com/killswitch-GUI)
开始步骤
- 登录Digital Ocean控制面板,创建三个droplets。推荐使用Ubuntu 14.04 OS和每月$40的定价。选择地理位置时,从OPSEC角度建议将团队服务器分散到不同地区,甚至不同VPS提供商。
- 启用监控功能并附加SSH密钥。
- 创建名为“cnc1”、“cnc2”和“cnc3”的droplets。
- 创建防火墙规则(通过控制面板或脚本),包括:
- HTTP和HTTPS(用于HTTP/S信标)
- DNS UDP和TCP(用于DNS信标)
- Cobalt Strike团队服务器端口(50050)
- 自定义SSH端口(7654)
- SSH到droplet,手动配置:
- 为root账户添加密码
- 添加新用户“demouser”并加入sudoers组
- 编辑SSHD配置文件(/etc/ssh/sshd_config):
- 端口改为7654
- PermitRootLogin设为no
- 暂时允许密码认证(后改为no)
- 添加AllowUsers demouser
- 传输SSH公钥到demouser账户,禁用密码认证。
- 传输C2K文件(通过SCP或wget)并解压。
- 运行安装脚本C2Ubuntu.sh:
- 安装lterm
- 准备Cobalt Strike依赖
- 提示输入许可证密钥
- 复制自定义SSHD配置文件(可选)
- 设置防火墙规则
- 重启SSH服务
- 运行HTTPsC2DoneRight.sh(需提前配置DNS A记录)
- 验证SSL访问,停止apache2服务,启动Cobalt Strike团队服务器并加载Amazon配置文件。
- 设置HTTPS监听器并测试。
监控设置
在Digital Ocean控制面板中启用监控,创建CPU性能警报策略,可通过电子邮件或Slack通道接收警报。
结论
本脚本处于早期阶段,未来将开发更多自动化功能。第二部分将添加:
- 自动化本文所有步骤
- 使用Digital Ocean cloud_config功能
- 为防御和OPSEC目的添加更多监控(如logwatch、AIDE)
- 扩展C2以包括每个团队服务器的重定向器
感谢BHIS允许我贡献这篇博客。
Lee Kagan是RedBlack Security的客座博主,拥有近十年的IT和信息安全经验,专注于渗透测试、红队操作和威胁模拟。