MoveKit:一款功能强大的Cobalt Strike横向渗透套件

VSole2023-03-13 11:16:33

关于MoveKit

MoveKit是一款功能强大的Cobalt Strike横向渗透套件,本质上来说MoveKit是一个Cobalt Strike扩展,它利用的是SharpMove和SharpRDP .NET程序集的execute_assembly函数实现其功能,攻击脚本能够通过读取指定类型的模板文件来处理Payload创建任务。

Cobalt Strike

Cobalt Strike是一款美国Red Team开发的渗透测试神器,常被业界人称为CS。

最近这个工具大火,成为了渗透测试中不可缺少的利器。其拥有多种协议主机上线方式,集成了提权,凭据导出,端口转发,socket代理,office攻击,文件捆绑,钓鱼等功能。同时,Cobalt Strike还可以调用Mimikatz等其他知名工具,因此广受黑客喜爱。

脚本运行机制

在使用该脚本的过程中,用户仅需要加载MoveKit.cna脚本即可,它将加载所有其他的所需脚本。除此之外,用户可能还需要对代码进行编译,并存放至Assemblies目录中,具体取决于SharpMove和SharpRDP程序集所要采取的行为。最后,某些文件移动操作可能需要动态编译,这里将需要用到Mono。

在加载脚本时,会有一个名为Move的选择器被加载进menubar中,这里将给用户提供多个可用选项。首先,用户需要选择一个在远程系统上执行的命令,命令将通过WMI、DCOM、计划任务、RDP或SCM执行。接下来,脚本将会通过Command命令执行机制来获取执行文件。然后,使用File方法将文件存储至目标系统并执行它。这里所使用到的“Write File Only”只会对数据进行移动。最后,工具会使用默认配置和信标命令进行操作。

在使用信标命令时,它将读取默认配置,并使用几个命令行参数。信标命令样本如下:

   
move-msbuild 192.168.1.1 http move.csproj

自定义预构建信标命令则有些许不同,命令样本为:

move-pre-custom-file <target> <local-file> <remote-filename>
move-pre-custom-file computer001.local /root/payload.exe legit.exe

对于上面的位置字段,当选择WMI方法时会用到,如果选择的是SMB,则无需使用该字段。Location字段接受三个不同的值,第一个是Cobalt Strile Web服务器的URL地址,第二个则是待上传文件的远程目标系统的Windows目录路径,第三则是一个存储事件写入的Linux路径或“local”单词。

脚本将会针对所有的文件方法创建Payload,但是,如果Payload已经在之前创建好了的话,脚本只会移动或执行它。

支持的横向渗透技术

MoveKit包含了各种不同的横向渗透技术、执行触发器和Payload类型。

文件移动指的是获取文件或将文件移动到远程主机所使用的方法:

SMB to flat file
WMI to flat file
WMI to Registry Key Value
WMI to Custom WMI Class property

命令触发器指的是触发在远程主机上执行命令的方法:

WMI
SCM
RDP
DCOM
计划任务
修改计划任务
修改服务路径

Shellcode执行:

Excel 4.0 DCOM
WMI事件描述

劫持攻击:

服务DLL劫持
DCOM服务器劫持

工具下载

广大研究人员可以使用下列命令将该工具源码克隆至本地:

git clone https://github.com/0xthirteen/MoveKit.git

依赖组件

需要使用Mono(MCS)编译.NET程序集。

项目地址

https://github.com/0xthirteen/MoveKit

payload
本作品采用《CC 协议》,转载必须注明作者和本文链接
MSF监听设置use?PAYLOAD?name>set?LHOST?192.168.20.128set?LPORT?4444show?options?#查漏补缺exploit
分析Cobalt Strike Payload
2021-12-11 06:49:22
原始Payload Cobalt Strike 的Payload基于 Meterpreter shellcode,例如 API 哈希(x86和x64版本)或http/https Payload中使用的url checksum8 算法等等。 x86 默认的 32 位原始负载的入口点以典型指令开始,CLD (0xFC),然后是CALL指令,并PUSHA (0x60)作为 API 哈希算法的第一条
msiexec是非常重要的操作系统组件,通常用来安装Windows Installer安装包,而且msiexec支持远程加载msi程序功能,因此可以通过msiexec加载远程的恶意msi程序,实现免杀的效果。
不一样的xss payload
2022-08-28 06:50:01
当不能弹窗的时候,可以用下面的payload来证明. 当过滤了空格假设payload如下:?D位置可填充%09,%0A,%0C,%0D,%20,//,>函数配合拼接
介绍实战中由于各种情况,可能会对反序列化Payload的长度有所限制,因此研究反序列化Payload缩小技术是有意义且必要的本文以CommonsBeanutils1链为示例,
Latte-SSTI-Payloads总结
2021-12-14 16:56:16
TL;DR最近西湖论剑有一道使用Latte的题目,当时我也是用的偷鸡办法做的,当时时间限制就没有仔仔细细的去寻找逃逸的办法。直到赛后我发现逃逸的办法很简单{="${system}"}. 这里使用的是php的基础语法,我就不过多赘述了。这个复杂变量网上也有很多文章。赛后我无聊的时候简单看了下Latte,找了点后续的利用,比如获取$this变量,还有任意代码执行。
EXOCET 优于 Metasploit 的“Evasive Payloads”模块,因为 EXOCET 在 GCM 模式(Galois/Counter 模式)下使用 AES-256。Metasploit 的 Evasion Payloads 使用易于检测的 RC4 加密。虽然 RC4 可以更快地解密,但 AES-256 很难确定恶意软件的意图。
新的PayloadBIN勒索软件被认为是Evil Corp网络犯罪团伙的产物,该团伙为了逃避美国财政部外国资产控制办公室(OFAC)的制裁而更名。5月底,Babuk数据泄露网站进行更新,勒索软件团伙改名为“payload bin”。
关于远程代码执行的常用Payload大家好,我是 Ansar Uddin,我是来自孟加拉国的网络安全研究员。这是我的第二篇 Bug 赏金文章。今天的话题都是关于 Rce 的利用。攻击者的能力取决于服务器端解释器的限制。在某些情况下,攻击者可能能够从代码注入升级为命令注入。
VSole
网络安全专家