Cobalt Strike使用指南—入门篇

0x00 CS简介

Cobalt Strike 一款以Metasploit为基础的GUI框架式渗透测试工具,集成了端口转发、服务扫描,自动化溢出,
多模式端口监听,exe、powershell木马生成等。

Cobalt Strike 分为客户端和服务端,可分布式操作、协同作战。
但一定要架设在外网上,或者自己想要搭建的环境中。

这里给出一些学习链接:

Cobalt_Strike_wiki: Cobalt Strike系列
渗透利器Cobalt Strike

0x01 部署安装

环境

Team Server 推荐运行环境

  • Kali Linux 1.0, 2.0 – i386 and AMD64
  • Ubuntu Linux 12.04, 14.04 – x86, and x86_64

Client GUI 运行环境

  • Windows 7 and above
  • macOS X 10.10 and above
  • Kali Linux 1.0, 2.0 – i386 and AMD64
  • Ubuntu Linux 12.04, 14.04 – x86, and x86_64

由于cobaltstrikejava编写,
所以客户端和服务端都需要安装java运行环境

服务端

服务端关键的文件是teamserver以及cobaltstrike.jar
将这两个文件放到服务器上同一个目录,然后运行:

chmod 755 teamserver
sudo ./teamserver 192.168.1.1 asdf # ip 和密码

如果是本地测试,本机既当服务端,又当客户端
可填入本机ip,不要填127.0.0.1或者0.0.0.0

乌班图如果出现这个报错。

[-] keytool is not in $PATH
    install the Java Developer Kit

加一个软链即可

ln -s /usr/java/jdk/bin/keytool /usr/bin/

客户端

windows客户端打开cobaltstrike.bat批处理文件

输入服务端的设置的IP、端口、密码,用户名随意,登陆即可

0x02 简单使用

这里只介绍下简单操作,其它后面学习了再总结。

设置Listeners

这里使用win7虚拟机进行演示

首先添加Listeners,填入服务端的IP,和想要监听的端口

生成木马

生成exe木马

根据目标来选择是否使用x64

将生成的exe文件复制到虚拟机双击执行
即可看到靶机上线

执行命令

在Cobalt Strike中它的心跳默认是60s
即sleep时间为60s,每一分钟目标主机与teamserver通信一次,
所有执行命令或者其它操作都会等待60s,所有先执行修改sleep为0
(根据实际情况修改,太快流量明显)

右击,选择Interact,最下面可以输入命令
beacon中不能直接输入cmd命令,如果要执行cmd命令,前面要加上shell
例如:shell whoami
其他的beacon命令,大家可以在beacon中输入help查看

三方提权模块:
ElevateKit: The Elevate Kit demonstrates how to use third-party privilege escalation attacks with Cobalt Strike’s Beacon payload.

点击Script Manager按钮打开脚本管理界面,然后点击底下的Load按钮加载elevate.cna文件
如果提权成功,session列表中会增加一个新会话,星号(*)表示该会话是一个提权成功的会话。
提权成功后我们再执行危险操作时被控PC就不会有UAC提示,被控目标也不会察觉。

参考文章

Cobalt Strike使用 - print(“”)
渗透利器Cobalt Strike - 第1篇 功能及使用
Cobalt Strike学习笔记(持续更新)
Cobaltstrike系列教程(一)简介与安装=


   转载规则


《Cobalt Strike使用指南—入门篇》 dylan 采用 知识共享署名 4.0 国际许可协议 进行许可。
  目录