Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

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

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

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
工具/GitHubGitHub/trustedsec/sliverkeylogger
数据泄露后渗透利用命令与控制红队Payload 开发
GitHubtrustedsec/sliverkeylogger

SliverKeylogger

用于 Sliver C2 植入框架的 Windows 键盘记录模块,使用 Raw Input 捕获按键,并向操作员提供启动、停止和检索命令。

查看仓库
1694562年前Kitploit 审核通过

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

Sliver Keylogger

这个 Sliver 扩展的编写主要是一次学习练习,用以了解 Sliver 如何处理扩展。image

我要感谢整个 Sliver 团队在这个公开植入框架上所做的工作。 特别感谢 @rkervell 回答了许多我关于 Sliver 如何处理其扩展的问题。

工作原理

基本上,它使用原始输入。这相对于其他常见的键盘记录方法既有利也有弊。

我喜欢它的原因在于,它不需要注入到其他二进制文件中,也不需要频繁轮询某个调用而可能错过结果。

这段代码一部分是我自己的作品,一部分是互联网上找到的各种示例的整合。

如何构建

使用 Visual Studio 2019 打开解决方案文件,并构建 x86 和 x64 版本。

如何加载 / 安装

在这个扩展有可能被收录到 armory 之前,可以在 Windows 系统上构建它。然后将生成的 $(solutiondir)\bin 文件夹放到 sliver 客户端上,并运行 extensions install <path to folder> 来安装扩展。你可能需要重启,或者也可以运行 extensions load <path to folder>。

用法

raw_keylogger <cmdid>

以下 cmdid 均有效:

root@kitploit:~
0 = stop
1 = start
2 = get keystrokes

如果一切顺利,运行效果会像这样: Screen Shot 2022-06-17 at 3 05 09 PM

经验教训

Sliver 的 API 包含以下两个主要部分:

root@kitploit:~
typedef int (*goCallback)(const char*, int);

extern "C" {
	__declspec(dllexport) int __cdecl entrypoint(char* argsBuffer, uint32_t bufferSize, goCallback callback);
}

植入体将调用 .json 文件中定义的 "entrypoint"。它指向你的入口点函数(不一定要叫这个名字,只需遵循该签名即可)。

goCallback 是一个用于向 Go 返回输出的函数。它的调用方式类似 callback(string, string_length)。

在编写扩展时,目前 "name" 和 "command_name" 必须保持一致,否则植入体将在每次调用时重新加载你的扩展。

截至撰写本文时,非 BOF 扩展不支持强类型参数,因此命令行中命令名称之后提供的所有内容都会以字符串形式下发。你必须从那里开始在扩展的原生代码端处理它。

下载工具