KDOG 加载器使用

Shellcode 生成

尽量选择 stageless,生成大小 300KB 的无阶段 payload,1KB 的 stager 测试较少,且容易被杀,不建议使用:

生成 c 语言 payload:

生成二进制 payload:

Shellcode 输入格式

平台支持两种格式的输入,从粘贴板输入 16 进制 shellcode,从二进制 shellcode 文件输入 shellcode。

从粘贴板

从生成的 c 语言 payload_x64.c 文件中复制 16 进制 shellcode 并粘贴入输入框:

从 BIN 文件

将生成的 payload_x64.bin 上传:

生成加载器

内嵌加载器

内嵌加载不需要额外的输入,输入 shellcode 即可,会将 shellcode 内嵌入 exe 中。

内嵌加载的熵值比较高,比较容易被静态查杀和沙箱查杀,不建议使用。如果一样要单文件,建议使用远程加载。

本地分离加载器

本地加载的加载器需要输入本地加载的文件名,可以随便指定一个文件名,比如 debug.log:

生成时会将 shellcode 加密并以改文件名保存:

执行时需要注意以下两点:

  • 执行 exe 时需要将两个文件放到一起,exe 执行时会读取 exe 所在路径下的本地文件(不是以工作路径为准)。
  • exe 可以改名,另一个本地文件不可改名。

远程加载器

远程加载需要先预设远程加载的 url,必需要全部你可以通过该 url 下载到平台加载的 shellcode 文件,由于 shellcode 文件还没有生成,因此需要先需要一个,等待平台生成后再放置到这个 url:

生成后会包含一个 .bin 文件,这是被加密的 shellcode 文件,需要放置到之前编写的 url 上:

需要通过该 url 可以下载到该 bin 文件,可以通过 CS 自带的文件服务器来达到该效果:

选择 bin 文件,和生成时填写的 url 路径和端口:

启动文件服务器,通过该 url 已经可以下载到 bin 文件了:

之后直接启动 exe 即可上线:

与本地分离不同的是,远程加载不需要携带其它文件,仅需一个 exe 即可上线。

Title