- 前言
- Cobalt Strike 简介
- Cobalt Strike 基本使用
- Cobalt Strike Beacon 命令
- Cobalt Strike 脚本使用
- Cobalt Strike 脚本编写
- Cobalt Strike 扩展
- Cobalt Strike 原理介绍
- Cobalt Strike 攻击防御
CS v4.0 功能演示
基本功能演示
准备一个会话
Beacon 相关功能
右键会话可以执行相关渗透操作
Beacon 的相关命令会放到 Cobalt Strike Beacon 命令里详细讲解
Access
- Dump Hashes
执行 hashdump 命令获取用户 hash
- Elevate
选择一个监听器,选择一个 exp 点 ok 随后反弹一个高权限会话
- Golden Ticket
这里我就不做演示了关于黄金票据的介绍很多,黄金票据(Golden Ticket):简单来说,它能让黑客在拥有普通域用户权限和 krbtgt hash 的情况下,获取域管理员权限。这是域渗透中挺常用的东西 详细请看这里: https://www.freebuf.com/sectool/112594.html
- Make Token
制作令牌
你可以选择相关凭据制作成令牌让 Beacon 使用这个新令牌,这将获得一个新令牌与之前的令牌在本地无法区分,当使用 Beacon 的getuid命令查询令牌的身份时,将返回当前用户。当使用shell whoami时也将返回当前用户。那这东西有什么用呢?只有当访问 Windows 远程网络资源时如 Windows 共享等等才会使用make_token提供的令牌
- One-liner Run
这个功能是在目标机的本地开启一个 web 服务(仅监听本地 127.0.0.1,且随机端口无法指定,被访问一次后随即关闭 web 服务)并在上面托管一个 powershell 脚本,随后生成一个 powershell 命令行这个命令行就是用来请求执行本地托管的 powershell 脚本的
在目标本地执行
执行后新产生一个会话
这个功能主要是作为派生本地会话用(其他机器是无法访问的)需要注意的是如果你使用一个 64 位 的 payload ,但是是在一个 x86 会话中执行 powershell 命令行,那么在不指定程序位置时执行的默认是 x86 powershell.exe 这会造成 payload 执行失败请注意。
- Mimikatz
运行 Mimikatz 的 logonpasswords 命令
- Spawn As
使用其他用户权限生成一个会话,需要用户名和密码以及一个监听器可选项域
选择用户和密码以及监听器
点击 Launch,随后会接收一个以 Administrator 权限运行的会话
Explore
- Browser Pivot
一个鸡肋的功能,简单说就是如果对方正在使用 IE 浏览器,那么在上图就会出现 IE 浏览器进程,这时我们可以选择它然后点击 Launch 这样会开启一个代理,使用此代理可以直接登录,对方使用 IE 以登录的网站,而无需密码,一般来说现在没啥用
- Desktop (VNC)
VNC 远程桌面,可以进行一些操作,注意使用这个功能一定要确保服务端上的 CS 目录里有 third-party 文件夹并且文件夹里有 vnc dll 否则无非使用此功能
- File Browser
就是普通的文件管理
- Net View
执行 Net View 命令
- Port Scan
端口扫描工具可以选择目标范围,扫描端口,最大连接数,目标发现方式(有三种选项。arp 方法使用 ARP 请求来发现一个主机是否存活。icmp 方法发送一个 ICMP echo 请求来检查一个目标是否存活。none 选项让端口扫描工具假设所有的主机都是存活的,也就是不判断主机是否在线直接扫描端口。)
- Process List
显示进程列表
- Screenshot
查看截图,视图->屏幕截图
执行屏幕截图
Pivoting
- SOCKS Server
开启一个 socks4 代理,不建议使用自带的这个代理功能
- Listener(Pivot 监听器)
Pivot 监听器 payload 只有一个 Windows/beacon_reverse_tcp
Pivot 监听器会在指定会话的主机上,监听一个端口并把这个端口的流量转发到 CS 上,我们需要注意的是,Pivot 监听器不会主动修改防火墙也就说,如果目标启用了防火墙,则会出现防火墙提示
防火墙提示
所以如果目标开启防火墙我们需要提前开启一个放行规则或关闭防火墙(run netsh advfirewall set allprofiles state off)然后在使用 Pivot 监听器
添加了一个 Pivot 监听器
查看端口我们发现正在监听 4444 端口,现在我们用这个监听器生成一个无阶段 Beacon Payload
选择 Pivot 监听器并生成一个无阶段 payload
然后在目标上运行发现接收到一个新会话,随后将视图切换到 Pivot
(我这里就开了一台虚拟机但是原理都一样)可以看到子会话使用青色箭头指向父会话,表示使用是 TCP 方式与父会话连接,父会话监听转发 4444 端口的流量到 CS。注:Pivot 监听器只能生成无阶段 Beacon payload
分阶段 Beacon payload 无法选择 Pivot 监听器
Deploy VPN
这是一个没啥用还及容易出现 bug 并造成服务端崩溃的功能强烈不建议使用所以不做介绍
生成木马
HTA 程序
这里可以选择三种默认:
- Executable:是以十六进制的方式内嵌一个 EXE 到 HTA 里,运行时会把 exe 释放到磁盘然后创建进程运行
- Powershell:HTA 调用 powershell.exe 执行 payload
- VBA:通过调用 COM 组件来执行 payload(请确保目标机有 Excel.Application 组件否则会运行失败,注:组件源自 Office)
Office 宏木马
这个没啥好说的 copy 完粘贴到 word 里保存就行
生成 Payload
这个也没啥好说的可以生成各种格式的 payload shellcode(注:全都是分阶段 payload)
Windows 分阶段 Payload
Windows 无阶段 Payload
这两个差不多没啥好说的关于区别会放到原理介绍中详细解释
钓鱼攻击
克隆网站
攻击->钓鱼攻击->克隆网站
我这里就克隆一下百度,并开启按键记录,完成后你可以在 web 服务管理面板里看到,其中的 Attack 我要说一下这个是和后面的五个功能进行联动的,可以选择后面五个功能生成的 url 将其嵌入到钓鱼网页中
现在我们可以随便输入一些东西然后转到视图->web 日志查看按键记录(其实这个功能也是没啥用的功能,创建钓鱼网站我建议自行创建不要使用 cs 自带的)
按键记录
文件下载
攻击->钓鱼攻击->文件下载
这个会把选择的文件上传到 CS 服务器上然后开启对应的端口等待被访问,你还可以选择 Mime Type(content-type)浏览器访问时会根据这个值采取一些对应的解析措施,比如我这里虽然后缀是 exe 但是浏览器还是会当作 html 网页解析
你可以在 web 服务管理里查看或结束 CS 所开启的 web 服务,web 日志里则记录了 web 服务的请求日志(Ctrl+K 清屏)
Scripted Web Delivery (S)
这个就是开启一个 web 服务托管 payload,并根据选择的类型生成一个命令行来执行 payload 上线
Signed Applet Attack(废弃)
因为证书原因是无法运行的得去设置一下 java 安全配置
添加一个例外站点
再次访问
经过一番折腾上线,也是一个没啥用的功能而且还必须得是 IE 或旧火狐旧谷歌
Smart Applet Attack(废弃)
这个主要是利用 Applet 检查自动检测 java 版本并进行攻击。 针对,Java 1.6.0_45 及以下版本 Java 1.7.0_21 及以下版本
还是先得找上面那样设置,不过这里是 1.7 版本安全级别存在中,所以直接把安全级别调到中就行
点运行
也是一个没啥用的功能可以说是比上一个还没用
System Profiler(废弃)
这个功能主要是通过浏览器探测目标信息,当目标访问此 url 时 CS 就会收集一些浏览器和操作系统的信息,System Profiler 也可以尝试去发现代理服务器后,用户内网的 IP 地址(这是依靠一个未签名的 Java Apple 实现的,一般情况这并不好用所以取消勾选 Use Java Applet to get information)
Redirect URL(重定向 URL),这个选项用来指定探针被访问后是否将浏览者重定向到指定的 url
可以通过视图->应用信息查看收集到的相关信息
这后三个标注废弃的功能都是没啥用的,在现在一般情况下屌用没的
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论