Cobalt Strike系列一Cobalt Strike介绍

admin 2022年5月29日14:26:23评论194 views字数 5918阅读19分43秒阅读模式

一、Cobalt Strike简单介绍

Cobalt Strike简称CS,这是一款非常成熟的渗透测试框架。Cobalt Strike在3.0版本之前是基于Metasploit框架工作的,可以使用Metasploit的漏洞库。但是在3.0版本之后,Cobalt Strike不再使用Metasploit漏洞库,而是变成了一个独立的渗透测试平台。

         Cobalt Strike是使用JAVA语言编写的。其优点在于,可以进行团队协作,Cobalt Strike是以搭载了TeamServer服务的服务器为中转站,使目标系统权限反弹到该TeamServer服务器上,同时,Cobalt Strike也提供了良好的UI界面。Cobalt Strike集成了端口转发、服务扫描,自动化溢出,多模式端口监听,exe、powershell木马生成等功能。

二、Cobalt Strike搭建

0x01 Cobalt Strike环境

 Cobalt Strike 分为客户端和服务端,可分布式操作、协同作战。服务器端只能运行在Linux系统中,可搭建在VPS上。

0x02 Cobalt Strike架构

  • 客户端(Client GUI)

-团队成员使用的图形化界面

  • 服务器(Team Server)

控制:Team Server是Cobalt Strike中所有payload的主控制器,与受害者主机的所有连接的反弹shell都由Team Server管理。

日志记录:Cobalt Strike中发生的所有事件都保存在logs文件夹

信息搜集:收集在后渗透阶段发现的、或攻击者在目标系统上用于登录的所有凭据

0x03 推荐运行环境

注意:Cobalt Strike的服务器Team Server必须运行在配有JAVA环境的Linux系统上。

  • 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

三、Cobalt Strike下载

0x01 下载链接

下载链接:https://pan.baidu.com/s/17CGo40ZjEbR-G7In1zleSQ
提取码:crg0

四、Cobalt Strike启动

0x01 配置JAVA环境

  • 方法一:(比较方便)

保存以下代码为install.sh,然后bash install.sh

#!/bin/bashwget https://repo.huaweicloud.com/java/jdk/8u171-b11/jdk-8u171-linux-x64.tar.gztar -zxvf jdk-8u171-linux-x64.tar.gz -C /usr/lib/echo "export JAVA_HOME=/usr/lib/jdk1.8.0_171/" >> /etc/profileecho "export JRE_HOME=/usr/lib/jdk1.8.0_171/jre" >> /etc/profileecho "export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH" >> /etc/profileecho "export CLASSPATH=$CLASSPATH:.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib" >> /etc/profile`source /etc/profile`rm jdk-8u171-linux-x64.tar.gz
  • 方法二:

方法一失败了就使用方法二

(1):查看是否安装的了java环境

java -version

Cobalt Strike系列一----Cobalt Strike介绍

发现默认安装了openjdk。

(2):卸载openjdk

sudo apt-get remove openjdk*

Cobalt Strike系列一----Cobalt Strike介绍

(3):查看是否卸载

java -version

Cobalt Strike系列一----Cobalt Strike介绍

(4):安装Oraclejdk

wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u141-b15/336fa29ff2bb4ef291e347e091f7f4a7/jdk-8u141-linux-x64.tar.gz"

Cobalt Strike系列一----Cobalt Strike介绍

(5):解压

tar xzf jdk-8u141-linux-x64.tar.gz

Cobalt Strike系列一----Cobalt Strike介绍

(6):修改配置文件

leafpad /etc/profile
JAVA_HOME=~/jdk1.8.0_141/JRE_HOME=~/jdk1.8.0_141/jreCLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/libPATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/binexport JAVA_HOME JRE_HOME CLASS_PATH PATH

Cobalt Strike系列一----Cobalt Strike介绍

(7):使修改生效

source /etc/profile

Cobalt Strike系列一----Cobalt Strike介绍

(8):查看java版本

java -version

Cobalt Strike系列一----Cobalt Strike介绍

0x02 部署TeamServer

注意:Cobalt Strike的服务器端必须搭建在Linux系统上。

(1):安装Cobalt Strike时必须搭建团队服务

Cobalt Strike系列一----Cobalt Strike介绍

(2):查看TeamServer和Cobalt Strike是否有执行权

ls -la

Cobalt Strike系列一----Cobalt Strike介绍

如果没有执行权就使用chmod添加执行权限。

(3):启动Cobalt Strike服务器端

启动参数

./teamserver[/path/to/c2.profile] [YYYY-MM-DD]

① 必填参数host 本服务器外网IP/域名

②必填参数password Client GUI连接时需要输入的密码

③可选参数Malleable C2 communication profile 指定C2通信配置文件,该功能体现了CS的强大扩展性

④可选参数kill date 指定所有payload的终止日期

./teamserver 192.168.223.160 1qaz@WSX

Cobalt Strike系列一----Cobalt Strike介绍

五、Cobalt Strike文件夹功能介绍

0x01 Cobalt Strike文件结构

│ agscript 拓展应用的脚本
│ c2lint 检查profile的错误异常
│ cobaltstrike
│ cobaltstrike.jar 客户端程序
│ icon.jpg
│ license.pdf
│ readme.txt
│ releasenotes.txt
│ teamserver 服务端程序
│ update
│ update.jar

└─third-party 第三方工具
README.vncdll.txt
vncdll.x64.dll
vncdll.x86.dll

0x02 文件及文件夹功能

(1):agscript:扩展应用的脚本

(2):c2lint:用于检查profile的错误和异常

(3):teamserver:团队服务器程序

(4):cobaltstrike和cobaltstrike.jar:客户端程序。因为teamserver文件是通过JAVA来调用Cobalt Strike的,所以在文件中输入第一个文件的内容也能启动Cobalt Strike客户端。

(5):logs:日志,包括WEB日志、Beacon日志、截图日志、下载日志、键盘记录日志等。

(6):update和update.jar:主要是用来更新Cobalt Strike。

(7):data:用于保存当前TeamServer的一些数据。

六、启动客户端

0x01 老版本启动Cobalt Strike

./cobaltstrike

0x02 新版本启动Cobalt Strike

  • Windows系统

start.bat

Cobalt Strike系列一----Cobalt Strike介绍

  • Linux系统

./start.bat

Cobalt Strike系列一----Cobalt Strike介绍

./start.sh

Cobalt Strike系列一----Cobalt Strike介绍

0x03 修改端口

nano teamserver

Cobalt Strike系列一----Cobalt Strike介绍

Cobalt Strike系列一----Cobalt Strike介绍

0x04 修改指纹

CS的默认ssl证书信息也很重要,不然指纹信息也很明显,如果放在公网的VPS上很容易被识别出。

nano teamserver

Cobalt Strike系列一----Cobalt Strike介绍

Cobalt Strike系列一----Cobalt Strike介绍

修改成如下内容

CN=it, OU=it, O=it, L=it, S=it, C=it

0x05 清除客户端记录

Cobalt Strike系列一----Cobalt Strike介绍

清除上面这些记录的方法如下:

Cobalt Strike系列一----Cobalt Strike介绍

七、客户端功能点介绍

0x01 客户端界面

         主要有主机IP、端口、用户名和密码。主机IP就是团队服务器的IP,端口默认是50050,用户名可以随意输入,但是注意一点是不能和团队里面的其他成员用户名重复,密码就是启动服务器时设置的密码。

Cobalt Strike系列一----Cobalt Strike介绍

0x02 连接服务器

(1):进行连接

Cobalt Strike系列一----Cobalt Strike介绍

(2):进行指纹校验

          每次进行连接都会出现指纹校验,指纹校验的注意作用是防篡改,因此每次创建Cobalt Strike团队服务器时所生成的指纹都不一样。

Cobalt Strike系列一----Cobalt Strike介绍

(3):连接成功

Cobalt Strike系列一----Cobalt Strike介绍

0x03 功能点介绍

(1):菜单栏:集成了Cobalt Strike的所有功能

(2):快捷功能区:列出常用的功能

(3):目标列表:根据不同的显示模式,显示已获取权限的主机及目标主机

(4):控制台命令输出区:输出命令的执行结果

(5):控制台命令输入区:输入命令

Cobalt Strike系列一----Cobalt Strike介绍

八、快捷功能区介绍

0x01 功能区参数

Cobalt Strike系列一----Cobalt Strike介绍

1.新建连接
2.断开当前连接
3.建立监听器
4.改变视图为Pivot Graph(可以以图形方式显示各个目标的关系)
5.改变视图为Session Table(以会话列表的方式显示)
6.改变视图为Target Table(以目标列表的方式显示,主要突出目标系统)
7.查看凭据信息
8.查看文件下载
9.查看键盘记录
10.查看屏幕截图
11.生成无状态Beacon后门
12.java自签名程序攻击
13.生成office宏后门
14.生成脚本通过web传递(利用powershell,bitsadmin,regsvr32生成会话)
15.在Cobalt Strike的web服务上托管一个文件(提供一个文件下载)
16.管理Cobalt Strike上运行的web服务
17.帮助
18.关于

0x02 Pivot Graph展示

Cobalt Strike系列一----Cobalt Strike介绍

九、参数介绍

0x01 Cobalt Strike参数

Cobalt Strike系列一----Cobalt Strike介绍

New Connection #新的连接(支持连接多个服务器端)Preferences #偏好设置(设置Cobal Strike界面、控制台、以及输出报告样式、TeamServer连接记录等)Visualization #窗口视图模式(展示输出结果的形式)VPN Interfaces #VPN接入Listenrs #监听器(创建Listener)Script Manager #脚本管理Close #关闭

0x02 View参数

Cobalt Strike系列一----Cobalt Strike介绍

Applications #应用(显示受害者机器的应用信息)Credentials #凭证(通过hashdump或Mimikatz抓取过的密码都会储存在这里)Downloads #下载文件Event Log #事件日志(主机上线记录以及团队协作聊天记录)Keystrokes #键盘记录Proxy Pivots #代理模块Screenshots #截图Script Console #脚本控制台(可以加载各种脚本,增强功能https://github.com/rsmudge/cortana-cripts)Targets #显示目标主机Web Log #Web日志

0x03 Attacks参数

(1):Packages参数

Cobalt Strike系列一----Cobalt Strike介绍

HTML Application #生成恶意的HTA木马文件MS Office Macro #生成office宏病毒文件Payload Generator #生成各种语言版本的payloadUSB/CD AutoPlay #生成利用自动播放运行的木马文件Windows Dropper #捆绑器,能够对文档类进行捆绑Windows Executable #生成可执行PayloadWindows Executable(S) #把包含payload,Stageless生成可执行文件(包含多数功能)

(2):Web Drive-by

Cobalt Strike系列一----Cobalt Strike介绍

Manage #对开启的web服务进行管理Clone Site #克隆网站(可记录受害者提交的数据)Host File #提供Web以供下载某文件Scripted Web Delivery #提供Web服务,便于下载和执行PowerShell Payload,类似于Metasploit的Web_delivery Signed Applet Attack #启动一个Web服务以提供自签名Java Applet的运行环境Smart Applet Attack #自动检测Java版本并利用已知的exploits绕过securitySystem Profiler #用来获取一些系统信息,比如系统版本,Flash版本,浏览器版本等

(3):Spear Phish

Cobalt Strike系列一----Cobalt Strike介绍

Spear Phish #鱼叉式钓鱼

0x04 Reporting参数

Cobalt Strike系列一----Cobalt Strike介绍

0. Activity report #活动报告1. Hosts report #主机报告2. Indicators of Compromise #威胁报告3. Sessions report #会话报告4. Social engineering report #社会工程学报告5. Tactics, Techniques, and Procedures #策略、技巧和程序  Reset Data #重置数据Export Data #导出数据

0x05 Help参数

Cobalt Strike系列一----Cobalt Strike介绍

Homepage #官方主页Support #技术支持Arsenal #开发者System information #版本信息About #关于

Cobalt Strike系列一----Cobalt Strike介绍



原文始发于微信公众号(想走安全的小白):Cobalt Strike系列一----Cobalt Strike介绍

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年5月29日14:26:23
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   Cobalt Strike系列一Cobalt Strike介绍http://cn-sec.com/archives/886471.html

发表评论

匿名网友 填写信息