Skip to content
KitploitKITPLOIT
工具漏洞利用博客
Log in
提交
工具漏洞利用博客
提交

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

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

订阅源联系隐私© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
dezlock-dump — 运行时模式 + RTTI提取工具,适用于Deadlock、CS2、Dota等(Source 2)。无需source2gen。 | Kitploit
工具/GitHubGitHub/dougwithseismic/dezlock-dump
侦察内存取证动态代码分析 (DAST)逆向工程调试器信息收集二进制分析论文与研究学习与教育
GitHubdougwithseismic/dezlock-dump

dezlock-dump

运行时模式 + RTTI提取工具,适用于Deadlock、CS2、Dota等(Source 2)。无需source2gen。

8213573天前Kitploit 审核通过

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
查看仓库

dezlock-dump

GitHub Release Build Discord

从正在运行的 Source 2 游戏(Deadlock、CS2、Dota 2)中提取所有内容,并生成一个防补丁的 C++ SDK,在运行时解析偏移量。没有硬编码值,游戏打补丁时也无需手动更新。

dezlock-dump 查看器

观看演示

快速开始

  1. 从 Releases 下载(或从源码构建)
  2. 启动你的游戏——进入对局或大厅
  3. 以管理员身份运行:
dezlock-dump.exe

就是这样。自动检测游戏,转储所有内容,生成完整的 SDK。输出结果会落在 exe 旁边的 schema-dump/<game>/ 目录中。

# Target a specific game
dezlock-dump.exe --process cs2.exe

# Live mode — starts a WebSocket server for real-time entity inspection
dezlock-dump.exe --live

你将获得

运行时解析 SDK(核心部分)

用于注入 DLL 的即插即用 C++ 头文件。字段和虚函数在运行时从游戏自身的 SchemaSystem 解析——你编译好的 DLL 无需重新构建即可在游戏补丁后继续使用。

#include "internal-sdk/client/entities/C_BaseEntity.hpp"

sdk::C_BaseEntity* ent = /* from entity list */;

// Fields — resolved at runtime, cached after first call
int hp       = ent->m_iHealth();
uint8_t team = ent->m_iTeamNum();
bool alive   = ent->is_alive();

// Virtual functions — call through vtable by index
int max_hp   = ent->GetMaxHealth();     // VFUNC(163, int32_t, GetMaxHealth)

2,400+ 个结构体,包括所有游戏专属 VData(技能、物品、武器、修饰符)、229 个实体类,以及 1,766 个带虚函数包装的类。

其他内容

输出说明
internal-sdk/运行时解析的 C++ 头文件(实体、结构体、枚举、VData)
sdk/带 constexpr 偏移量的静态 SDK(补丁后会失效,可作为参考)
signatures/覆盖 58+ 个 DLL 中每个 vtable 函数的 IDA 风格字节模式
_globals.txt10,000+ 个自动发现的全局单例及其字段树
_protobuf-messages.txt游戏二进制文件中嵌入的解码 .proto 定义
_all-modules.json完整的结构化 JSON 导出——可提供给查看器或你自己的工具使用

SDK 宏

struct C_BaseEntity : CEntityInstance {
    SCHEMA_CLASS("client.dll", "C_BaseEntity");

    FIELD(m_iHealth, int32_t);              // runtime-resolved field
    FIELD_PTR(m_pGameSceneNode, void*);     // pointer dereference
    FIELD_ARRAY(m_nCurrencies, int32_t, 6); // fixed-size array
    FIELD_BLOB(m_Particles, 40);            // opaque bytes

    VFUNC(146, int32_t, GetHealth);         // named virtual call
    VFUNC_ARGS(42, void, SetModel, const char*); // with arguments
    VFUNC_RAW(53);                          // unnamed, with signature hint
};

虚函数名从二进制文件中自动发现——调试字符串交叉引用、成员访问推断和 protobuf 描述符。无需手动配置。

交互式查看器

cd viewer && pnpm install && pnpm dev

将你的 _all-modules.json 拖放到页面上,或实时连接到正在运行的 dump(--live 标志)。可搜索的类/字段/枚举浏览器、实时实体检查器、可点击的继承链、全局单例、protobuf 消息。

从源码构建

需要安装带有 C++ 桌面工作负载的 Visual Studio 2022。

cmake -B build -G "Visual Studio 17 2022" -A x64
cmake --build build --config Release

CLI 参考

参数描述
--process <name>目标进程(默认:自动检测)
--output <dir>输出目录(默认:schema-dump/<game>/)
--live在 :9100 上启动 WebSocket 服务器以进行实时检查
--schema <path>加载现有 JSON 转储而非注入
--internal-sdk仅生成运行时 SDK
--sdk仅生成静态 SDK
--signatures仅生成字节模式
--layouts仅生成成员布局

无参数 = 生成全部内容。

技术深入解析

  • Source 2 的 SchemaSystem 内部工作原理
  • 从零构建 MSVC x64 RTTI 扫描器
  • 手动 DLL 映射:如何以及为何跳过 LoadLibrary
  • 自动发现 10,000+ 全局单例
  • 构建交互式二进制分析查看器

免责声明

仅供教育和研究目的。只读内存检查——不修改游戏,不获取竞争优势。使用风险自负;可能违反目标应用程序的服务条款。提取的数据仍归其各自所有者所有。

贡献

Issues | Pull requests | Discord

下载工具