cobalt strick 4.0 系列教程 (5)--- 获取立足点

https://blog.ateam.qianxin.com/CobaltStrike4.0%E7%94%A8%E6%88%B7%E6%89%8B%E5%86%8C_%E4%B8%AD%E6%96%87%E7%BF%BB%E8%AF%91.pdf

0x01 客户端 System Profiler [即探针]

System Profiler 是一个为客户端攻击提供的侦察工具。这个工具启动一个本地的 web 服务器,并对访问它的任何应用进行指纹识别。System Profiler 提供一个它从用户的浏览器里发现的应用和插件的列表。System Profiler 也会尝试去发现代理服务器背后的用户的内网 IP 地址。

通过 Attacks → Web Drive-by → System Profiler 启动 System Profiler。要启动 System
Profiler 必须指定要绑定的 URI 和一个启动 Cobalt Strike web 服务器的端口。

如果你指定了一个 Redirect URL (重定向 URL),则一旦探针被访问,Cobalt Strike 会重定向浏览者(在此也就是受害者)到这个指定的 URL。单击 Launch 以启动 System Profiler。

System Profiler 使用一个未签名的 Java Applet 来发现隐藏的目标内网 IP 并确定目标具有的 Java 版本。因为 Java 的点击运行安全特性,这可能会引起怀疑。取消勾选 Use Java Applet to getinformation (使用 Java 小程序获取信息)框来从 System Profiler 中移除 Java Applet。

勾选 Enable SSL 框以通过 SSL 提供 System Profiler 服务。这个框被禁用,除非你通过 C2 拓展文件指定了一个有效的 SSL 证书。

要从 System Profiler 查看结果,请转到 View → Applications 。Cobalt Strike 将列出它在系统分析过程中发现的所有应用程序。

0x02 Cobalt Strike Web 服务

很多 Cobalt Strike 功能从它们自己的 web 服务器运行。这些服务包括 System Profiler、HTTPBeacon 和 Cobalt Strike 的 web drive-by 攻击。可以在一个 web 服务器上托管多个 Cobalt Strike 功能。

要管理 Cobalt Strike 的 web 服务,通过Attacks → Web Drive-by → Manage 。在这里,你可以复制任何 Cobalt Strike URL 到剪贴板或停止一个 Cobalt Strike web 服务。

使用 View → Web Log 来监视到你的 Cobalt Strike web 服务的访问。
如果 Cobalt Strike 的 web 服务器看到了来自 Lynx,Wget 或 Curl 浏览器的请求,Cobalt Strike 会自动返回一个 404 页面。Cobalt Strike 这样做是为了防御蓝队的窥探。

0x03 用户驱动的攻击包

最好的攻击不是漏洞利用。相反,最好的工具是利用正常功能来达成代码执行。Cobalt Strike 使得你可以轻松地进行多种用户驱动的攻击。这些攻击利用你已经设置的监听器。点击 Attacks → Packages并选择下列选项之一。
在这里插入图片描述

HTML Application

一个 HTML Application(HTML 应用)是一个使用 HTML 和一个 Internet 浏览器支持的脚本语言编写的 Windows 程序。该程序包生成一个 HTML 应用,该应用运行一个 Cobalt Strike payload。你可以选择可执行的选项来获取一个 HTML 应用,此 HTML 应用使得一个可执行文件落地在磁盘上并运行它。选择 PowerShell 选项来得到一个 HTML 应用,该应用使用 PowerShell 来运行一个 payload。使用VBA 选项来静默派生一个 Microsoft Excel 实例并运行一个恶意的宏来将 payload 注入到内存中。

MS Office Macro

该程序包生成一个 Microsoft Office 的宏文件并提供将宏嵌入 Microsoft Word 或 Microsoft Excel 的说明。

Payload Generator(Payload 生成器)

该程序包允许你以不同的多种格式导出 Cobalt Strike 的 stager。

Windows Executable(Windows 可执行文件)

该程序包生成一个 Windows 可执行 Artifact,用于传送一个 payload stager。这个程序包为你提供了多种输出选项。

Windows Service EXE 是一个 Windows 可执行文件,可响应 Service Control Manager 命令。你可以使用这个可执行文件来作为使用 sc 命令起的 Windows 服务的调用程序,或使用 Metasploit 框架的PsExec 模块生成一个自定义的可执行文件。

译者注:也就是说,普通的 EXE 和服务器启动调用的 EXE 是有区别是。利用 Windows Service
EXE 生成的 EXE 才能用来作为服务自启动的 EXE,利用 Cobalt Strike 中 Windows exe 生成的
EXE 不能作为服务自启动的 EXE 程序(因为不能响应Service Control Manager)!

Windows DLL(32-bit)是一个 x86 的 Windows DLL。
Windows DLL(64-bit)是一个 x64 的 Windows DLL。这个 DLL 会派生一个 32 位的进程,并且将你的监听器迁移至其上。这两个 DLL 选项都会导出一个开始功能,此功能与 rundll32.exe 相兼容。使用rundll32.exe 来从命令行加载你的 DLL。

rundll32 foo.dll,Start

勾选 Use x64 payload 框来生成匹配 x64 stager 的 x64 Artifact。
勾选 Sign executable file 框来使用一个代码签名的证书来签名一个 EXE 或 DLL Artifact。你必须指定一个证书。你必须在 C2 拓展文件中指定证书。

Windows Executable(s)

该程序包直接导出 Beacon(也就是 payload stage),这个 Beacon 是作者写好的32或64位 DLL,是一个不使用 stager 的可执行文件,直接和监听器连接、传输数据和命令。一个不使用 stager 的payload Artifact被称为无阶段的 Artifact。这个程序包也有 PowerShell 选项来导出 Beacon 作为一个PowerShell 脚本,或 raw 选项导出与位置无关的 beacon 代码。

默认情况下,这个对话导出 x86 payload stage。勾选 Use x64 payload 框来使用 x64 Artifact 生成一个 x64 stage。

勾选 Sign executable file 框来使用代码签名的证书来签名一个 EXE 或 DLL Artifact。

0x04 托管文件

Cobalt Strike 的 web 服务器可以为你托管你的用户驱动的程序包。通过 Attacks → Web Drive-by→ Host File 来进行此配置。选择要托管的文件,选择一个任意URL,然后选择文件的 MIME 类型。

托管文件这个功能本身意义不大。但是稍后你将学习如何将 Cobalt Strike 的 URL 嵌入到一个鱼叉式网络钓鱼电子邮件中。当你这样做的时候,Cobalt Strike 可以通过电子邮件交叉引用托管文件发送给访问者,并将此信息包含在社会工程报告中。

0x05 User-driven Web Drive-by Attacks(用户驱动的 Web Driveby攻击)

Cobalt Strike 使用多种工具来为你设置可用的 web drive-by 攻击。要快速地开始一个攻击,通过Attacks → Web Drive-by 并选择一个选项:

Java Signed Applet Attack

这个攻击会启动一个 web 服务器来托管一个自签名的 Java applet。访客被要求给这个 applet 权限来运行。当一个访客准许了这个权限,你就获取了到他们系统的权限。

Java 签名的 Applet 攻击使用 Cobalt Strike 的 Java 注入器。在 Windows 上,Java 注入器会对一个Windows 监听器直接往内存注入 shellcode。

为了从这次攻击中获取最大收益,你需要从 Cobalt Strike 的武器库中下载此 Applet 套件并使用代码签名证书对其进行签名。

Java Smart Applet Attack

Cobalt Strike 的智能 Applet 攻击在一个程序包里包含多个漏洞利用来禁用 Java 安全沙盒。这个攻击启动一个 web 服务器来托管 Java applet。最初,这个小程序可以在 Java 的安全沙箱中运行,并且不需要用户批准即可启动。

这个 applet 分析它的环境并决定使用哪个 Java 漏洞利用。如果 Java 版本是有漏洞的,此 applet 会禁用安全沙箱,并使用 Cobalt Strike 的 Java 注入器执行 payload。

Scripted Web Delivery (S)

这个功能会生成一个无阶段的 Beacon payload Artifact, 在 Cobalt Strike 的 web 服务器上托管它,并提供一个单行来下载和运行此 Artifact。选项包括:bitsadmin,powershell 和 python。

bitsadmin 选项托管一个可执行文件并使用 bitsadmin 来下载它。bitsadmin 方法通过 cmd.exe 来运行此可执行文件。powershell 选项托管一个 PowerShell 脚本并使用 powershell.exe 来下载此脚本并对其进行评估。python 选项托管一个 Python 脚本并使用 python.exe 来下载该脚本并运行它。每一个这些选项都是一种运行 Cobalt Strike 监听器的不同的方法。

0x06 客户端的漏洞利用

你可以使用一个 MSF 漏洞利用来传送一个 Cobalt Strike Beacon。Cobalt Strike 的 Beacon 与 MSF 的分阶段协议相兼容。要使用 MSF 漏洞利用来传送一个 Beacon:

  • 使用 windows/meterpreter/reverse_http[s] 作为你的 PAYLOAD 并设置 LHOST 和 LPORT来指向你的 Cobalt Strike 监听器。在这里你不是真的在传送 Meterpreter,你是在让 MSF 生成从指定的 LHOST/LPORT 下载 payload 的 HTTP[s] stager。
  • 将 DisablePayloadHandler 设置为 True 。此选项会让 MSF 避免在 MSF 内起一个 handler 来服务你的 payload 连接。
  • 将 PrependMigrate 设置为 True。此选项让 MSF 前置 shellcode 在另一个进程中运行 payload stager。如果被利用的应用程序崩溃或被用户关闭,这会帮助你的 Beacon 会话存活。

这里是一个 msfconsole 的屏幕截图,图中起了一个 Flash 漏洞利用来传送 Cobalt Strike 的 HTTP Beacon,此 Beacon 被托管在 192.168.1.5 的 80 端口上:
在这里插入图片描述

0x07 克隆网站

在向目标发送漏洞利用程序之前,进行伪装会有所帮助。Cobalt Strike 的网站克隆工具可以帮助此目标。网站克隆工具制作一个网站的本地的复制,使用一些增加的代码来修复连接和图像这样它们可以如预期一样工作。

要克隆一个网站,通过 Attacks → Web Drive-by → Clone Site 。

可以将一个攻击嵌入到一个克隆的站点。在绑定的字段写你的攻击的 URL,Cobalt Strike 会使用一个IFRAME 来将它加入一个克隆的站点。点击 … 按钮来选择一个运行的客户端漏洞利用程序。

在这里插入图片描述
克隆的网站还可以捕获键盘记录。勾选 Log keystrokes on cloned site (克隆站点上的键盘记录)框。这会往克隆的站点里插入一段 JavaScript 键盘记录程序。

要查看键盘记录内容或查看到你的克隆网站的访问者,通过 View → Web Log 。

0x08 鱼叉式网络钓鱼

目标

既然你已经了解了客户端攻击,让我们来谈谈如何对用户进行攻击。进入组织网络的最常见的方法是通过鱼叉式网络钓鱼。

在发送钓鱼信息之前,你应该收集目标列表。Cobalt Strike 接受的格式是用文本文件组织的目标。该文件的每一行包含一个目标。目标可以是一个电子邮件地址。你可以使用一个电子邮件地址、标签或一个名字。如果提供了名称,则有助于 Cobalt Strike 自定义每个网络钓鱼。

模板

接下来,你需要网络钓鱼模板。模板的好处是你可以在多次行动中重复利用它们。Cobalt Strike 使用保存的电子邮件消息作为其模板。Cobalt Strike 将删除附件、处理编码问题,并为每次钓鱼攻击重新填写每个模板。

如果你想创建自定义模板,请撰写邮件并发送给自己。大多数电子邮件客户端提供获取原始信息源的方法。在 Gmail 中,点击 Reply 按钮旁边的向下的箭头并选择 Show original (显示原始文本)。将此消息保存到一个文件中,这样你就做好了一个 Cobalt Strike 钓鱼邮件模板了!

你可能想使用 Cobalt Strike 的 token 自定义你的模板。Cobalt Strike 在你的模板里会自动替换如下一些 token :
在这里插入图片描述

发送消息

现在你已经有了目标和模板,就可以开始进行网络钓鱼了。通过 Attacks → Spear Phish 来启动网络钓鱼工具。
在这里插入图片描述
要发送一封钓鱼邮件,你必须首先导入你的目标。点击 Targets 字段旁边的文件夹图标来导入你的目标文件。

然后,选择你的模板文件。点击 Template 字段旁边的文件夹图标来选择一个模板文件。

现在,你可以选择增加一个附件。这是使用我们前面讨论过的社会工程程序包的好机会之一。Cobalt Strike 会将你的附件增加到发出的钓鱼邮件。

你也可以要求 Cobalt Strike 使用你选择的 URL 来重写模板中的所有 URL。粘贴 URL 或按 … 来选择一个 Cobalt Strike 托管的工具。Cobalt Strike 工件集包括克隆的网站,自动漏洞利用服务器和 SystemProfiler。

当你嵌入一个 URL,Cobalt Strike 将对其附加 ?id=%TOKEN% 。每一封发出的邮件都会被分配自己的令牌(token)。Cobalt Strike 使用这个令牌(token)将网站访问者映射到已发送到的电子邮件上。如果你要写报告,请务必保留此值。

将邮件服务器设置为目标的开放中继或邮件交换记录。如有必要,你可能还会向邮件服务器进行身份验证以发送你的网络钓鱼邮件。

点击 Mail Server (邮件服务器)字段旁边的… 来配置额外的服务器选项。你也可以指定用于身份验证的用户名和密码。Random Delay 选项告诉 Cobalt Strike 将每封邮件随机延迟一段时间,最多不超过你指定的秒数。如果此选项未设置,Cobalt Strike 不会延迟发送邮件。
在这里插入图片描述
将 Bounce 设置为退回邮件的应该发往的电子邮件地址。这个值不会影响你的目标看到的邮件。点击Preview 来查看发送到你的收件人之一的一封组合邮件。如果预览看上去不错,点击 Send 来发送你的攻击。

Cobalt Strike 通过团队服务器发送钓鱼邮件。

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

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

相关文章

frame--转载

所谓框架便是网页画面分成几个框窗&#xff0c;同时取得多个 URL。只 要 <FRAMESET> <FRAME> 即可&#xff0c;而所有框架标记 要放在一个总起的 html 档&#xff0c;这个档案只记录了该框架 如何划分&#xff0c;不会显示任何资料&#xff0c;所以不必放入 <…

cobalt strick 4.0 系列教程(6)Payload Artifact 和反病毒规避

0x01 哲学 Strategic Cyber 责任有限公司会定期回答有关规避的问题。Cobalt Strike 是否能够绕过 AV 产品&#xff1f;它能绕过哪些 AV 产品&#xff1f;它多久检查一次&#xff1f; Cobalt Strike 默认的 Artifact 可能会被大多数终端安全解决方案拦截。规避不是 Cobalt Str…

【转】企业开发的困境与变局

原文&#xff1a;企业开发的困境与变局 文 / 刘江 算起来&#xff0c;《程序员》已经有几年时间没有大篇幅讨论企业软件开发这个话题了。这其实挺奇怪的。要知道&#xff0c;按类别来分&#xff0c;国内从事企业软件开发的技术人员是最多的&#xff0c;从CSDN和《程序员》联合举…

AES算法

算法简介 AES本质是一种对称分组密码体制&#xff0c;采用代替/置换网络。每轮由三层组成&#xff1a;线性混合层确保多轮之上的高度扩散&#xff0c;非线性层由16个S盒并置起到混淆的作用&#xff0c;秘钥加密层将子秘钥异或到中间状态。 AES加密数据块和秘钥长度可以是128比…

IDA使用方法-----1

0x01 启动IDA new&#xff1a;反汇编一个新文件go&#xff1a;运行&#xff0c;直接进入IDAPrevious&#xff1a;载入一个我们以前编译过的程序 如果不想每次都看到这个对话框&#xff0c;可以取消该对话框底部的Display at startup&#xff08;启动时显示&#xff09;&#x…

objdump命令详解

objdump命令是用查看目标文件或者可执行的目标文件的构成的gcc工具。 选项 --archive-headers -a 显示档案库的成员信息,类似ls -l将lib*.a的信息列出。 -b bfdname --targetbfdname 指定目标码格式。这不是必须的&#xff0c;objdump能自动识别许多格式&#xff0c;比如…

《Pro ASP.NET MVC 3 Framework》学习笔记之四【领域模型介绍】

主题&#xff1a;应用领域驱动开发(Applying Domain-Driven Development) Domain Model是MVC程序的"心脏"&#xff0c;其他的一切&#xff0c;包括Controllers和Views仅仅是用来跟Domain Model交互的一种方式&#xff0c;ASP.NET MVC并没有限制使用在Domain Model上面…

一步一步学pwntools(适合新手)

序 pwntools是一个二进制利用框架。官方文档提供了详细的api规范。然而目前并没有一个很好的新手教程。因此我用了我过去的几篇writeup。由于本文只是用来介绍pwntools使用方法&#xff0c;我不会过于详细的讲解各种二进制漏洞攻击技术。 Pwntools的“Hello World” 栈溢出无…

标志寄存器:CF、PF、AF、ZF、SF、TF、DF、OF

注&#xff1a;下面说到的标志寄存器都是缩写&#xff0c;C就是CF&#xff0c;其他也一样 标志寄存器&#xff1a;C、P、A、Z、S、T、D、O的内容只会是0或1&#xff0c;0表示假&#xff0c;1表示真 O&#xff1a;溢出标志 一个寄存器如果存放的值超过所能表示的范围&#xf…

Firefox2狂占CPU解决办法

https://images.cnblogs.com/cnblogs_com/Tisty/138006/o_firefox3.jpg 看了一下&#xff0c;不知道 "jpeg_free_large" 是干啥的&#xff0c;遂用 "Firefox jpeg_free_large" Google 一下&#xff0c;出来的一堆东西里有帖子说可能和 Apple 的 QuickTime …

PUSHAD和POPAD,以及PUSHA和POPA

PUSHAD PUSHAD也叫保护现场&#xff0c;就是把我们的寄存器压入栈中 pushad是把eax&#xff0c;ecx&#xff0c;edx&#xff0c;ebx&#xff0c;esp、ebp&#xff0c;esi&#xff0c;edi依次压入栈中&#xff0c;ESP会减少32&#xff0c;相当于&#xff1a; push eax push ec…

MOVSX和MOVZX

MOVSX 先符号扩展,再传送 格式&#xff1a; MOVSX 操作数A &#xff0c;操作数B //操作数B的空间小于A比如说我们使用命令&#xff1a; movsx eax&#xff0c;bxbx是16位&#xff0c;eax是32位&#xff0c;传值过程&#xff1a; 先用bx的符号位把eax高16填满&#xff0c;b…

LEA与XCHG

LEA 格式&#xff1a; LEA 通用寄存器 内存地址功能&#xff1a;取地址命令 将内存地址赋值给寄存器 lea eax,dword ptr ds:[ecx0x16]dword 双字 就是四个字节ptr pointer缩写 即指针ds 数据段版寄存器[]里的数据是一个地址值&#xff0c;这个地址指向一个双字型数据 将dwo…

ADC和SBB命令

ADC 带进位加法指令 用法&#xff1a; adc 操作数1&#xff0c;操作数2相当于&#xff1a; 操作数1操作数2进位标志CF->操作数1现在的eax是0&#xff0c;C1&#xff0c;用adc指令直接会是0x6 SBB 带进位减法指令 用法&#xff1a; sbb 操作数1&#xff0c;操作数2相当…

mul和div指令(8位,16位,32位)

MUL 无符号乘法指令&#xff0c;默认操作数与eax相乘&#xff08;这里只说32位&#xff0c;其他与下面的div类似&#xff09; 格式&#xff1a; mul 操作数 //操作数只有一个操作数与eax相乘&#xff0c;结果共有16位&#xff08;这里的16位是16进制数&#xff09;&#xff…

imul和idiv指令

imul 有符号乘法指令&#xff0c;分单操作数&#xff0c;双操作数和但操作数 单操作数&#xff1a;此形式与mul指令使用完全相同&#xff0c;操作数乘以al、ax、或eax寄存器中的值&#xff0c;乘积分别存储到ax、dx&#xff1a;ax或edx&#xff1a;eax中 执行指令&#xff1a…

Ajax的注册应用

最近发现Ajax在用户注册表单和用户登录表单方面应用&#xff0c;最能体现Ajax的交互特点&#xff0c;因此又是写了一个习作&#xff01; 演示效果 新开窗口地址&#xff1a; http://www.klstudio.com/demo/ajax/reg.htm 下载地址:http://www.klstudio.com/demo/ajax/reg.rar &…

XADD和NEG命令

XADD 交换相加指令&#xff0c;先交换然后相加 比如说&#xff1a; xadd eax&#xff0c;ecx /* 相当于&#xff1a;先执行&#xff1a;xchg eax,ecx然后执行&#xff1a;add eax,ecx */此时eax2&#xff0c;ecx3&#xff0c;执行完&#xff1a;eax5&#xff0c;ecx2 neg …

Java——File类

一&#xff0c;File类的概述和构造方法 A&#xff1a;file类的概述 file类可以理解成一个路径 文件夹或者是文件夹路径 路径分为绝对路径和相对路径 绝对路径是一个固定的路径&#xff0c;从盘符开始 这里的G&#xff1a;\TIM 就是一个绝对路径&#xff0c;是一个固定的路…

vue3 配置 @符号

config,ts 配置 有 爆红 安装 npm install 一下 然后 配置 路径提示功能 tsconfig.json 配置 路径提示功能 一共这两个路径配置