团队协同作战渗透工具 CS神器Cobalt Strike

本文详细介绍了CobaltStrike这款渗透测试工具的安装步骤,包括团队服务器与客户端的配置,以及其强大的功能如菜单栏介绍、基本流程和Beacon命令。重点展示了如何创建监听器、生成铁马和使用Beacon进行攻击和管理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1 介绍

Cobalt Strike是一款渗透测试工具,常被称为CS神器,从3.0开始不在使用Metaspoit的漏洞库,称为一个独立平台,它分为

  • 客户端(可以是多个)
  • 服务端(一个)

Java语言编写,特别适合团队协同作战,多个攻击者可以同时连接到一个团队服务器上,共享攻击资源与目标信息和session,可以模拟ATP做模拟对抗,进行内网渗透。

其继承了端口转发、服务扫描、自动化溢出、多模式端口监听、win exe铁马生成、win dll铁马生成、java铁马生成、office宏病毒生成、铁马捆绑

钓鱼攻击:站点克隆、目标信息获取、java执行、浏览器自动攻击等

2 安装

首先需要安装java环境

Cobalt Strike目录结构

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fwXqbrI2-1644832733657)(Cobalt Strike目录结构.png)]

agscript:拓展应用的脚本

c1lint:用于检查profile的错误异常

teamserver:服务端程序

cobaltstrike,cobaltstrike.jar:客户端程序(java)

license.pdf:许可证文件

logs:目录记录与目标主机的相关信息

update,update.jar:用于更新cs

third-party:第三方工具

2.1 安装团队服务器

服务器ip:192.168.56.22

kali:192.168.56.13

win7目标主机:192.168.56.10

这个最好安装到Linux平台上,服务端的关键文件是teamserver和cobaltstrike.jar,将这这两个文件放在同一目录下运行:

./teamserver <host> <password> [/path/to/c2.profile] [yyyy-mm-dd]

<host>:必须参数 团队服务器ip

<password>:必须参数 链接服务器密码

</path/to/c2.profile>:可选参数 指定c2通信配置文件,体现其强大的扩展性

[yyyy-mm-dd]:可选参数 所有payload的终止时间

启动 Team Server(这里设置强制密码,否则容易被爆破)

./teamserver 192.168.56.22 root 

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ojBjBApZ-1644832733660)(Cobalt Strike启动 Team Server.png)]

ps:团队服务器默认端口为 50050,如需修改请到 teamserver文件

2.2 启动客户端

这里是kali:192.168.56.13

2.2.1 linux
./cobalstrike

java -XX:+AggressiveHeap -XX:+UseParallelGC -jar cobaltstrike.jar

这里用Linux桌面版打开

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QWI8IOjv-1644832733662)(Cobalt Strike客户端填写服务端信息.png)]

第一次连接会出现hash校验,这里的hash等于前面的启动teamserver时的hash,直接点击‘是’即可连接到团队服务器上

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xktfYtwb-1644832733688)(Cobalt Strike客户端连接服务端成功.png)]

2.2.2 windows

windows 双击:cobalitstrike.exe

3 菜单栏介绍

3.1 Cobalt Strike

New Connection:新建连接,支持连接多个服务端

Preferences:设置Cobal Strike界面、控制台、以及输出报告样式、TeamServer连接记录

Visualization:主要展示输出结果的视图

VPN Interfaces:设置VPN接口

Listeners:创建监听器

Script Manager:脚本管理,可以通过AggressorScripts脚本来加强自身,能够扩展菜单栏,Beacon命令行,提权脚本等

Colse:退出连接

3.2 View

Application:显示受害主机的应用信息

Credentials:显示所有获取的受害主机的凭证,如hashdump、Mimikatz

Downloads:查看已下载文件

Event Log:主机上线记录以及团队协作聊天记录

Keystrokes:查看键盘记录结果

Proxy pivots:查看代理模块

Screeshots:查看所有屏幕截图

Script Console:加载第三方脚本增强功能

Target:显示所有受害主机

Web Log:所有Web服务的日志

3.3 Attacks

Packages

HTML Application:生成(executable/VBA/powershell)这三种原理实现的恶意HTA铁马文件

MS office Macro:生成office宏病毒文件

Payload Generator:生成各种语言版本的payload

USB/CD AutoPlay:生成利用自动播放运行的铁马文件

Windows Dropper:捆绑能够对任意的正常文件进行捆绑(免杀效果差)

Windows Executable:生成可执行exe铁马

Windows Executable(Stageless):生成无状态的可执行铁马

Web Drive-by

Manage:对开启的Web服务进行管理

Clone:克隆网站,可以记录受害者提交的数据

Host File:提供文件下载,可以选择Mine类型

Scripted Web Delivery:为payload提供web服务以便下载和执行,类似于Metasploit的web_delivery

Signed Applet Attack:使用java自签名的程序进行钓鱼攻击(该方法已过时)

Smart Applet Attack:自动检测jav版本并进行攻击,针对java 1.6.0_45以下及java 1.7.0.21以下版本(该方法已过时)

System Profiler:用来获取系统信息,如系统版本、Flash版本、浏览器版本等

Sper Phish:鱼叉钓鱼邮件

Reporing

Activity:活动报告

Hosts Report:主机报告

Indicatiors of Compromise:IOC报告:包括c2配置文件的流量分析、域名、IP和上传文件的MD5 hashes

Sessions Report:会话报告

Social Engineering Report:社会工程报告:包括鱼叉钓鱼邮件及点击记录

Tactics,Techniques,and Procedures:战术技术及相关程序报告:包括行动对应的每种战术的检测策略和缓解策略

Reset Data:重置数据

Export Data:导出数据,导出.tsv文件格式

Help

Homepage:官方主页

Support:技术支出

Arsenal:开发者

System infomation:版本信息

About:关于

4 工具栏

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-sTI3gTtS-1644832733693)(Cobalt Strike工具栏.png)]

1:新建连接

2:断开当前连接

3:监听器

4:改变视图为Pivot Graph(视图列表)

5:改变视图为Session Tbale(会话列表)

6:改变视图为Target Table(目标列表)

7:显示所有已获取的受害主机的凭证

8:查看已下载文件

9:查看键盘记录结果

10:查看屏幕截图

11:生成无状态的可执行铁马

12:使用java自签名的程序进行钓鱼攻击

13:生成office宏病毒文件

14:为payload提供web服务以便下载和执行

15:提供文件下载,可以选择Mime类型

16:管理Cobalt Strike上运行web服务

17:帮助

18:关于

5 基本流程

5.1 创建监听器

点击 Cobalt -> Listeners -> Add, 其中内置了九个Listener

每种监听器只能创建一个

indows/beacon_dns/reverse_dns_txtwindows/beacon_dns/reverse_http
windows/beacon_http/reverse_http
windows/beacon_https/reverse_https
windows/beacon_smb/bind_pipe

windows/foreign/reverse_dns_txt
windows/foreign/reverse_http
windows/foreign/reverse_https
windows/foreign/reverse_tcp

其中 windows/beacom为内置监听器,包括:dns、http、https、smb

windows/foreign为外部监听器,配合Metaspoit后者Armitage的监听器

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-uyBp3Pel-1644832733702)(Cobalt Strike添加监听服务器.png)]

Name:随意设置

Payload:选择所需

Host:这里ip地址是团队服务器ip - > 192.168.56.22

Port:没有占用的任意端口

5.2 生成铁马

Attacks -> Paackages -> Windows Executable

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Cez2X9ut-1644832733704)(Cobalt Strike生成铁马.png)]

然后将生成的铁马,放到目标主机上运行

肉鸡上限,这里会显示

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-eaNGYHSv-1644832733706)(Cobalt Strike肉鸡上限.png)]

鼠标右键,会看到有很多功能,这些都是beacon提供的各种命令

6 Beacon命令介绍

browserpivot              注入受害者浏览器进程
bypassuac                绕过UAC提升权限
cancel                    取消正在进行的下载
cd                       切换目录
checkin                   强制让被控端回连一次
clear                     清除Beacon内部的任务队列
covertvpn                 部署Covert VPN客户端
cp                       复制文件
dcsync                    从DC中提取密码Hash
desktop                   远程桌面服务
dllinject                  反射DLL注入进程
download                 下载文件
downloads                列出正在进行的文件下载
drives                     列出目标盘符
elevate                    使用exp
execute                   在目标机上执行程序
exit                       结束beacon会话
getsystem                 尝试获取SYSTEM权限
getuid                     获取用户ID
hashdump                 转储密码Hash值
inject                     在注入进程生成会话
jobkill                     结束一个后台任务
jobs                      列出后台任务
kerberos_ccache_use       从cache文件中导入票据应用于此会话
kerberos_ticket_purge      清除当前会话的票据
kerberos_ticket_use        从ticket文件中导入的票据应用于此会话
keylogger                 键盘记录
kill                       结束进程
link                       通过命名管道连接到Beacon对等点
logonpasswords            使用Mimikatz转储密码hash和凭证
ls                        列出文件
make_token                创建令牌以传递凭据
mimikatz                  运行Mimikatz命令
mkdir                     创建目录
mode dns                 使用DNS A作为通信通道
mode dns-txt              使用DNS TXT作为通信通道
mode dns6                使用DNS AAAA作为通信通道
mode http                 使用HTTP作为通信通道
mv                       移动文件
net                       运行net命令
note                      备注      
portscan                  端口扫描
powerpick                 通过unmanaged powershell执行命令
powershell                通过powershell.exe执行命令
powershell-import          导入powershell脚本
ppid                      为派生的post-ex进程设置父PID
ps                        展示进程列表
psexec                    使用服务在主机上生成会话
psexec_psh                使用PowerShell在主机上生成会话
psinject                   在特定进程中执行PowerShell命令
pth                       使用Mimikatz进行哈希传递
pwd                      显示出当前目录
rev2self                   恢复原始令牌
rm                       删除文件或文件夹
rportfwd                  端口转发
runas                     以其他用户权限执行程序
runu                      以其他进程ID执行程序1
screenshot                屏幕截图
shell                      执行cmd命令
shinject                   将shellcode注入进程
shspawn                  启动一个进程并将shellcode注入
sleep                     设置休眠时间
socks                     启动SOCKS4代理
socks stop                 停止SOCKS4
spawn                     生成会话
spawnas                   以另一用户身份生成会话
spawnu                   以另一进程ID生成会话
ssh                       使用ssh连接远程主机
ssh-key                   使用密钥连接远程主机
steal_token                从进程中窃取令牌
timestomp                 将一个文件的时间戳应用到另一个文件
unlink                     断开连接
upload                    上传文件
wdigest                    使用Mimikatz转储明文凭据
winrm                     使用WinRM横向渗透
wmi                       使用WMI横向渗透

参考文章:

https://www.yinxiang.com/everhub/note/de918f37-0b42-4466-9a62-a0932fd4ccff

https://www.cnblogs.com/ta1zi/p/14677758.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

有勇气的牛排

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值