0x01 概述
Cobalt Strike 用户接口分为两部分。接口的顶部是会话或目标的视觉化展示。接口的底部展示了每个你与之交互的 Cobalt Strike 功能或会话的标签页。你可以点击这两部分之间的区域、按你的喜好重新调整这两个区域的大小。
0x02 工具条
Cobalt Strike 顶部的工具条提供访问 Cobalt Strike 常用功能的快捷方式。熟悉此工具条按钮会提升你使用 Cobalt Strike 的效率。
0x03 会话和目标可视化展示
Cobalt Strike 有多种可视化展示,这些不同的设计是为了帮助你的行动中的不同部分。你可以通过工具条或 Cobalt Strike → Visualization (可视化)菜单在不同的可视化形式之间切换。
目标表
目标表展示了 Cobalt Strike 的数据模型中的目标。此目标表展示了每个目标的 IP 地址,它的 NetBIOS名称,以及你或者你的团队成员给目标标记的一个备注。每个目标最左侧的图标表示了它的操作系统。带有闪电的红色图标表示此目标具有一个与之通信的 Cobalt Strike Beacon 会话。
点击表头字段( 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 它的第一个任务来查看更多信息。在一个或多个 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 会话也使用一个橙黄色的箭头。一个湖蓝色的箭头代表一个 TCPsocket 通道。一个红色的(命名管道)或紫色的(TCP)箭头表示一个 Beacon 连接断掉了。
点击一个 Beacon 来选中它。通过点击和拖划出一个覆盖多台目标主机的矩形,你可以选择多个Beacon。按住 Ctrl + Alt ,然后通过点击来选择和取消选择某个 Beacon。
在一个 Beacon 上单击右键来打开一个菜单,此菜单上有可用的后渗透选项。
在 Pivot 图中提供有多个键盘快捷键:
Ctrl + + ——放大
Ctrl + - ——缩小
Ctrl + 0 ——重置缩放级别
Ctrl + A ——选择所有主机
Escape ——清除选择
Ctrl + C ——将主机排列成一个圆圈
Ctrl + S ——将主机排列成一行
Ctrl + H ——将主机排列到层次结构中(默认的布局)
不选择任何 Beacon、在 Pivot 图上单击右键可以配置此图的布局。
0x04 标签页
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 + → 来快速地在标签页之间切换。
你也可以通过拖拽的方法来改变标签页的前后位置
0x05 控制台
Cobalt Strike 提供一个控制台来与 Beacon 会话、脚本等交互,你也可以通过控制台与你的队友交流。
控制台会追踪你的命令历史。点击向上的箭头可以浏览以前键入的命令,点击向下的箭头可以移回到你键入的最后一个命令。
使用 Tab 键可以补全命令和参数。
使用 Ctrl + + 可以让控制台的尺寸变大, Ctrl + - 可以减小控制台的尺寸,使用 Ctrl + 0 可以重置控制台的大小。此更改仅对当前控制台生效。通过 Cobalt Strike → Preferences (偏好)来永久更改字体。
按Ctrl + F 会显示一个面板,让你可以在控制台中搜索文本。
0x06 表
Cobalt Strike 使用表的形式来展示会话、凭据、目标和行动中的其他信息。
在 Cobalt Strike 中的大多数表都有一个选项来指定用一种颜色对某些行高亮。这些高亮在其他的Cobalt Strike 客户端中可见。单击右键查看颜色菜单。
在一个表内按 Ctrl + F 可以打开表中的搜索面板。这个功能可以让你在当前的表中进行过滤。
在搜索面板的搜索框内输入你的过滤标准。过滤标准的格式取决于你选择去应用过滤器的条目。使用CIDR 表示法(如:192.168.1.0/24)和主机范围(192.168.1-192.169.200)来过滤包含 IP 地址的条目。使用数字或数字范围来过滤包含数字的条目。使用通配符( * 、? )来过滤包含字符串的条目。
! 按钮会否定当前标准。按 enter 键会将设定的标准应用于当前表。你可以根据需要将尽可能多的条件堆叠在一起。Reset 按钮将移除应用于当前表的过滤条件。