Cobalt Strike----(1)

news2025/7/9 17:56:15

团队服务器

     Cobalt Strike 分为客户端组件和服务器组件。服务器组件,也就是团队服务器,是 Beacon payload 的控制器,也是 Cobalt Strike 社会工程功能的托管主机。团队服务器还存储由 Cobalt Strike 收集的数据,并管理日志记录
     Cobalt Strike 团队服务器必须在受支持的 Linux 系统上运行。要启动一个 Cobalt Strike 团队服务器, 使用 Cobalt Strike Linux 安装包中的 teamserver 脚本文件。
./teamserver ip 密码 C2拓展文件 日期
  • 第一个参数是团队服务器的外部可达IP地址。Cobalt Strike 使用这个值作为它的功能使用的默认主机地址。
  • 第二个参数是密码,你的团队成员将使用此密码从自己 Cobalt Strike 客户端去连接至 Cobalt Strike 团队服务器。
  • 第三个参数是选填的,这个参数指定一个「 C2 拓展文件」
  • 第四个参数也是选填的。此参数以 YYYY - MM - DD 的日期格式指定结束日期。团队服务器会将这个结束日
    期嵌入到它生成的每个 Beacon stage 中。 Beacon payload 在此日期后将拒绝运行,并且在此日期后
    如果这个 Beacon payload 醒来也会自动结束 ( 对应 Beacon 会话中的 exit 选项)
当团队服务器启动,它会发布团队服务器的 SSL 证书的 SHA256 hash 。你需要给你的团队成员分发这 个 hash 。当你的团队成员连接团队服务器时,在身份验证至团队服务器前、他们的 Cobalt Strike 客户 端会询问他们是否承认这个 hash 。这是抵御中间人攻击的重要保护措施。

Cobalt Strike 客户端

使用 Cobalt Strike 客户端连接至团队服务器。要启动 Cobalt Strike 客户端,使用适用于你的平台的软 件包内的启动器。 当 Cobalt Strike 客户端启动时,你会看到一个连接对话框。

 

 

     在 Host (主机)字段指定你的团队服务器的地址。团队服务器的默认端口为 50050 ,可以在服务器中进行修改。 User 字段填写你的昵称,当你进入团队服务器之后会显示此昵称。可以将此字段更改为 你的外号、称呼或幻想的黑客名号(如 Snowden 斯诺登)。 Password 字段填写团队服务器的共享密码。
    按下 Connect 按钮来连接到 Cobalt Strike 的团队服务器。如果这是你第一次连接至此团队服务器, Cobalt Strike 会询问你是否承认这个团队服务器的 SHA256hash。如果你承认,那么按 OK ,然后 Cobalt Strike 的客户端就会连接到这个团队服务器。 Cobalt Strike 也会在未来的连接中记住这个 SHA256 hash 。你可以通过 Cobalt Strike → Preferences Fingerprints 来管理这些团队服务器的 hash

     Cobalt Strike 会跟踪你连接到的团队服务器并记住你的信息。从连接对话框左手边选择一个团队服务器的profifile(连接信息),使用它的信息填充此连接对话框的字段。你也可以通过 Cobalt

Strike Preferences Team Servers 来管理此列表。

 

一旦连接至一个团队服务器,你的团队将:
  • 使用相同的会话
  • 分享主机、捕获的数据和下载的文件
  • 通过一个共享的事件日志交流
   Cobalt Strike 客户端可能会连接到多个团队服务器。通过 Cobalt Strike New Connection (新建连接)来初始化一个新的连接。当连接到多个团队服务器,一个切换条会出现在你 Cobalt Strike 窗口的底部。这个切换条允许你在活跃的 Cobalt Strike 团队服务器实例之间切换。

tip:切换条上的名字显示为登录时输入为输入的alias名称,同一个客户端和服务器可以建立多个连接(alias和user需要不同) 

    当连接到多个团队服务器, Cobalt Strike 会汇总所有它连接的团队服务器的监听器。这种聚合允许你从一台团队服务器发送引用了托管在另一台团队服务器上的恶意网站的钓鱼邮件。在你行动的末期, Cobalt Strike 的报告功能会查询所有你连接到的团队服务器、合并这些数据来描述一个完整的事件。
Cobalt Strike 内有一个默认的脚本,定义了展示在 Cobalt Strike 控制台的所有弹出菜单和格式信 息。通过 Aggressor Script 引擎,你可以覆盖这些默认设置、根据你的偏好个性化设置 Cobalt Strike 。 你也可以使用 Aggressor Script 来给 Cobalt Strike Beacon 增加新的功能和使特定的任务自动化。

 工具条

Cobalt Strike 顶部的工具条提供访问 Cobalt Strike 常用功能的快捷方式。熟悉此工具条按钮会提升你 使用 Cobalt Strike 的效率。

 以上工具从左到右分别是:

  1. 连接到另一个团队服务器
  2. 断开从当前团队服务器的链接
  3. 新建和编辑CS的监听器
  4. 切换为服务器节点图的可视化模式
  5. 切换为会话列表的可视化形式
  6. 切换为目标列表的可视化形式
  7. 查看凭据
  8. 查看下载的文件
  9. 查看键盘记录
  10. 查看屏幕截图
  11. 生成一个无阶段的CS可执行文件或者DLL
  12. 设定Java签名的Applet攻击
  13. 生成一个恶意的Mircosoft Office宏文件
  14. 建立一个无阶段的web传送攻击
  15. 在CS服务器上托管一个文件
  16. 管理托管在CS Web服务器上的文件和应用
  17. 访问CS支持页面
  18. 关于CS

会话和目标可视化展示

Cobalt Strike 有多种可视化展示,这些不同的设计是为了帮助你的行动中的不同部分。 你可以通过工具条或 Cobalt Strike Visualization (可视化)菜单在不同的可视化形式之间切换。

目标表

    目标表展示了 Cobalt Strike 的数据模型中的目标。此目标表展示了每个目标的 IP 地址,它的 NetBIOS 名称,以及你或者你的团队成员给目标标记的一个备注。每个目标最左侧的图标表示了它的操作系统。 带有闪电的红色图标表示此目标具有一个与之通信的 Cobalt Strike Beacon 会话。

 

制作payload的时候,需要注意IP地址的配置,如果服务器端配置在云服务器上,则需要加入云服务器IP地址,同时注意配置云服务器安全端口策略,对指定的端口进行开放
   点击表头字段( address )来排序主机。高亮一行并右击来打开一个菜单,此菜单有针对这台主机的操作选项。按住 Ctrl + Alt ,然后通过点击来选择和取消选择某台主机。 这个目标表对于横向移动和理解你的目标网络很有用。

 

会话表

   会话表展示了哪些 Beacon 回连到了这台 Cobalt Strike 实例。 Beacon Cobalt Strike 用于模拟高级威胁者的 payload 。在这里,你将看到每个 Beacon 的外网 IP 地址、内网 IP 地址、该 Beacon 的出口监听器、此 Beacon 最后一次回连的时间,以及其他信息。每一行最左边是一个图标,用于说明被害目标的操作系统。如果此图标是红色的、并且带有闪电,那么说明此 Beacon 运行在管理员权限的进程 中。一个褪色的图标意味着此 Beacon 会话被要求离开并且它接受了此命令。

 

如果你使用一个 DNS Beacon 监听器,要注意 Cobalt Strike 在第一次回连团队服务器之前不会知道任何关于主机的信息。如果你看到一行带有 last call time (上次回连时间)的条目,你就可以给那个Beacon 它的第一个任务来查看更多信息。

 

Pivot

   Cobalt Strike 能够将多个 Beacon 连接到一个链中。这些链接的 Beacon 从链中的父 Beacon 那里接收 命令,并发送其输出。这类链接对于控制哪些会话作为网络出口和模拟有纪律的攻击者很有用,这类攻 击者将他们在网络内部的通信路径限制在合理范围内。这种 Beacon 链是 Cobalt Strike 最有力的功能之一。
   Cobalt Strike 的工作流程使得建立这种链非常容易。通常对于 Cobalt Strike 使用者来说链接四到五层 深度的 Beacon 也是常见的。如果不做可视化那么跟踪和理解这些链是非常困难的。这就是需要借助 Pivot 图的地方。
    Pivot 图用一种非常自然的方式展示了你的 Beacon 链。每一个 Beacon 会话都有一个对应的图标。和 会话表中一样,每个主机的图标标识了它的操作系统。如果图标是红色的、并且带有闪电,那么表示此Beacon 运行在管理员权限的进程中。一个褪色的图标说明此 Beacon 会话被要求离开并且它接受了此 命令。 防火墙图标代表你 Beacon payload 的流量出口点。
  绿色虚线表示使用了 HTTP HTTPS 连接出网。
黄色虚线表示使用 DNS 协议出网。  

 

从一个 Beacon 会话连接到另一个 Beacon 会话的箭头表示两个 Beacon 之间存在连接。在这种对等通 信模式中,Cobalt Strike Beacon 使用 Windows 命名管道和 TCP sockets 来控制其他的 Beacon 。 橙黄色的箭头代表命名管道通道。SSH 会话也使用一个橙黄色的箭头。一个湖蓝色的箭头代表一个 TCP socket 通道。一个红色的(命名管道)或紫色的(TCP)箭头表示一个 Beacon 连接断掉了。
点击一个 Beacon 来选中它。通过点击和拖划出一个覆盖多台目标主机的矩形,你可以选择多个
Beacon 。按住 Ctrl + Alt ,然后通过点击来选择和取消选择某个 Beacon
在一个 Beacon 上单击右键来打开一个菜单,此菜单上有可用的后渗透选项。
Pivot 图中提供有多个键盘快捷键:
  • Ctrl + + ——放大
  • Ctrl + - ——缩小
  • Ctrl + 0 ——重置缩放级别
  • Ctrl + A ——选择所有主机
  • Escape ——清除选择
  • Ctrl + C ——将主机排列成一个圆圈
  • Ctrl + S ——将主机排列成一行
  • Ctrl + H ——将主机排列到层次结构中(默认的布局)
不选择任何 Beacon 、在 Pivot 图上单击右键可以配置此图的布局。

标签页

       Cobalt Strike 在一个新的标签页中打开每个对话、控制台和表。点击标签页上面的 X 就可以关闭一个 标签页。使用 Ctrl + D Delete )可以关闭当前正在查看的标签页。 Ctrl + Shift + D 会关闭除了当 前停留的标签页之外的所有标签页。 你可以在 X 符号上面单击右键,会出现一些选项,包括:在一个单独的窗口中打开此标签页、对一个 标签页截屏、或者关闭同名的所有标签页。 对于这些功能,也有对应的快捷键。使用 Ctrl + W Window )来在单独的窗口中打开当前停驻的标签 页。使用 Ctrl + T 来快速地保存当前停留的标签页的屏幕截图。 Ctrl + B Bottom )会把当前停留的标签页移动到 Cobalt Strike 窗口的底部。这对于你想要持续监视 的标签页很有用。使用 Ctrl + E 可以取消此动作,并移除在 Cobalt Strike 窗口底部的标签页。 按住 Shift 键并点击 X 可以关闭所有同名的标签页。同时按住 Ctrl Shift 键并点击 X 可以在 单独的窗口内打开标签页。 使用 Ctrl + Ctrl + 来快速地在标签页之间切换。 你也可以通过拖拽的方法来改变标签页的前后位置。

控制台

Cobalt Strike 提供一个控制台来与 Beacon 会话、脚本等交互,你也可以通过控制台与你的队友交流。

 

控制台会追踪你的命令历史。
点击向上的箭头可以浏览以前键入的命令,点击向下的箭头可以移回到你 键入的最后一个命令。
使用 Tab 键可以补全命令和参数。
使用 Ctrl + + 可以让控制台的尺寸变大, Ctrl + - 可以减小控制台的尺寸,
使用 Ctrl + 0 可以重 置控制台的大小。此更改仅对当前控制台生效。
通过 Cobalt Strike Preferences (偏好)来永久更改字体。
Ctrl + F 会显示一个面板,让你可以在控制台中搜索文本。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/406308.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

猿创征文|【Typescript】搭建TS的编译环境

🍳作者:贤蛋大眼萌,一名很普通但不想普通的程序媛\color{#FF0000}{贤蛋 大眼萌 ,一名很普通但不想普通的程序媛}贤蛋大眼萌,一名很普通但不想普通的程序媛🤳 🙊语录:多一些不为什么的…

vue修改 el-input 输入框默认背景色

vue修改 el-input 输入框默认背景色 实际项目需要修改默认的 输入框背景色 &#xff0c;因为原本的默认框背景色设置属性 :disabledtrue 之后显示不是很清晰&#xff0c;所以需要配置相应的规则 原本的不能修改的输入样式&#xff0c;显示的不是很清晰 加上样式之后的效果 <…

自学黑客,一般人我劝你还是算了吧

写在开篇 笔者本人 17 年就读于一所普通的本科学校&#xff0c;20 年 6 月在三年经验的时候顺利通过校招实习面试进入大厂&#xff0c;现就职于某大厂安全联合实验室。 我为啥说自学黑客&#xff0c;一般人我还是劝你算了吧。因为我就是那个不一般的人。 首先我谈下对黑客&…

十大经典排序算法(上)

目录 1.1冒泡排序 1. 算法步骤 3.什么时候最快 4. 什么时候最慢 5.代码实现 1.2选择排序 1. 算法步骤 2. 动图演示 3.代码实现 1.3 插入排序 1. 算法步骤 2. 动图演示 3. 算法实现 1.4 希尔排序 1. 算法步骤 2. 动图演示 3.代码实现 1.5 归并排序 1. 算法步骤 2…

Android: 彻底搞懂Lifecycle——使用篇

系列文章目录 第一章 Android: 彻底搞懂Lifecycle——使用篇 第二章 Android: 彻底搞懂Lifcycle——原理篇 文章目录系列文章目录前言一、Lifecycle是什么&#xff1f;1. 应用场景2. 示例二、Lifecycle使用1. 泳&#xff08;用&#xff09;裤&#xff08;库&#xff09;第一步…

PyQt5(一) PyQt5安装及配置,从文件夹读取图片并显示,模拟生成素描图像

目录 一、环境配置 1.1 安装PyQt5 1.2 安装Qt工具包 1.3 配置环境变量 1.4 测试PyQt5 1.5 配置PyCharm 二、QtDesigner 窗口简单介绍 2.1 初始界面 2.2 控件介绍 三、相关函数 3.1 读取文件函数 3.1.1 打开本地图片 3.1.2 保存图片到本地 3.1.3 打开文件夹 3.1.4 打…

微信小程序|基于小程序+C#制作一个考试答题小程序

基于小程序+C#制作一个考试答题小程序打破传统线下考试答题的边界线问题,使考试不用再局限与某个统一的场所,只要有设备,哪里都能考试。 一、小程序

【动态规划】最长上升子序列、最大子数组和题解及代码实现

Halo&#xff0c;这里是Ppeua。平时主要更新C语言&#xff0c;C&#xff0c;数据结构算法......感兴趣就关注我吧&#xff01;你定不会失望。 &#x1f308;个人主页&#xff1a;主页链接 &#x1f308;算法专栏&#xff1a;专栏链接 我会一直往里填充内容哒&#xff01; &…

功能测试用例多次录制后,我丢掉了selenium,选择龙测AI-TestOps云平台

目录一、如何使用龙测AI-TestOps云平台1、进入龙测AI-TestOps云平台2、新建项目3、新建流程图4、创建任务5、查看任务状态6、查看报告、图片7、下载流程图、测试报告、excel用例二、龙测AI-TestOps云平台AI功能介绍1、NLP2、视频AI转流程图三、总结功能测试用例多次录制后&…

写着简单跑得又快的数据库语言 SPL

数据库语言的目标SQL为什么不行SPL为什么能行 数据库语言的目标 要说清这个目标&#xff0c;先要理解数据库是做什么的。 数据库这个软件&#xff0c;名字中有个“库”字&#xff0c;会让人觉得它主要是为了存储的。其实不然&#xff0c;数据库实现的重要功能有两条&#xf…

【微信小程序】按钮还能这样用?

目录 &#x1f353;button 按钮的基本使用 &#x1f349;各种神奇的按钮 &#x1f353;button 按钮的基本使用 按钮组件 功能比 HTML 中的 button 按钮丰富 通过 open-type 属性可以调用微信提供的各种功能&#xff08;客服、转发、获取用户授权、获取用户信息等&#xff09;…

占有统治地位的Transformer究竟是什么

讲个有趣的小故事我高二那年从乙班考入了甲班&#xff0c;对于那时的我 偏科英语最高只有108班级平均英语成绩125暴躁难为人女英语老师&#xff0c;使我上英语课时战战兢兢。英语老师很时尚&#xff0c;喜欢搞花里胡哨的词语让我们放松&#xff0c;也很尊重我虽然暴躁但维护着我…

前端系列——vue2+高德地图web端开发(使用和引入)

vue2高德地图web端开发&#xff08;使用和引入&#xff09;前言基础准备工作高德地图的个人开发者注册高德api网址1.点击进行注册2.注册完之后进入控制台3.创建新应用4.添加高德 2.0 新增创建vue2的项目npm 引入高德官方文档1.安装2.进入项目3. NPM 方式安装使用 Loader4.在com…

【RabbitMQ】什么是RabbitMQ?RabbitMQ有什么用?应用场景有那些?

目录 一、什么是RabbitMQ&#xff1f; 二、RabbitMQ是干什么的&#xff1f; 三、RabbitMQ的常见作用有那些&#xff1f; 四、RabbitMQ的应用场景有那些&#xff1f; 场景一&#xff1a;用户订单&#xff0c;库存处理。【服务间解耦】 场景二&#xff1a;用户注册&#xf…

javaScript实现倒计时功能

目录 一、主要思路 二、css样式 三、html代码 四、js内容 五、完整代码展示 六、效果展示 一、主要思路 1.通过内置时间函数实例化日期对象获取当前时间 new Date。 2.因为时间无法减去时间&#xff0c;有可能生成负数&#xff0c;所以采用时间戳的方法得到毫秒数形式的…

(完整版)2022大厂Java八股文面试题库|附答案

Java基础 说下面向对象四大特性Java语言有些特点什么是Java程序的主类&#xff1f;应用程序和小程序的主类有何不同&#xff1f;访问修饰符public,private,protected,以及不写&#xff08;默认&#xff09;时的区别&#xff1f;float f3.4;是否正确&#xff1f;Java有没有goto…

Spring Boot(四):Spring Boot启动原理分析

文章目录 Spring Boot启动原理分析 一、依赖导入原理 二、Spring Boot包扫描原理 三、Spring Boot自动配置原理 Spring Boot启动原理分析 一、依赖导入原理 父项目版本控制 ctrl 点击spring-boot-starter-parent进入 继续点击&#xff0c;进入spring-boot-dependencies…

微前端-qiankun

概念 使用框架&#xff1a;qiankun 介绍&#xff1a; qiankun 是一个基于 single-spa 的微前端实现库&#xff0c;旨在帮助大家能更简单、无痛的构建一个生产可用微前端架构系统。 qiankun官网&#xff1a;Go 当使用 iframe 整合系统时&#xff0c;假设我们有系统 A, 当我们…

MySQL+Navicat安装配置教程(超级详细、保姆级)

MySQLNavicat安装配置教程&#xff08;超级详细、保姆级&#xff09;一、 下载MySQL1. 选择想要安装的版本&#xff0c;点击Download下载二、安装MySQL1. 选择设置类型2. 选择安装的产品和功能3. 先选中“MySQL Server 5.7.31” &#xff0c;之后点击下方的蓝色“Advanced Opti…

Crontab表达式执行定时任务

Cron是一个Linux下的定时执行工具&#xff0c;可用于执行定时任务。 启动、关闭、查看Cron服务的语法&#xff1a; 启动&#xff1a;/sbin/service crond start 查看&#xff1a;/sbin/service crond status 停止&#xff1a;/sbin/service crond stop 重启&#xff1a;/sbin…